WO2001023976A2 - Self-propagating network content distribution - Google Patents

Self-propagating network content distribution Download PDF

Info

Publication number
WO2001023976A2
WO2001023976A2 PCT/IL2000/000595 IL0000595W WO0123976A2 WO 2001023976 A2 WO2001023976 A2 WO 2001023976A2 IL 0000595 W IL0000595 W IL 0000595W WO 0123976 A2 WO0123976 A2 WO 0123976A2
Authority
WO
WIPO (PCT)
Prior art keywords
computer
user
graphic element
graphic
server
Prior art date
Application number
PCT/IL2000/000595
Other languages
French (fr)
Other versions
WO2001023976A3 (en
Inventor
Eyal Gever
Yossi Amossy
Doron Gill
Orit Bergman
Ofer Luft
Amihay Zer-Kavod
David Sokolic
Original Assignee
Gizmoz Ltd.
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Gizmoz Ltd. filed Critical Gizmoz Ltd.
Priority to AU75512/00A priority Critical patent/AU7551200A/en
Publication of WO2001023976A2 publication Critical patent/WO2001023976A2/en
Publication of WO2001023976A3 publication Critical patent/WO2001023976A3/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising

Definitions

  • the present invention relates generally to preparation of Web pages and components to be used thereon, and specifically to methods and apparatus for distributing such Web page components
  • HTML Hypertext Mark-up Language
  • media elements pictures, animations, texts, sound
  • scripts of instructions to be performed by an Internet browser program running on the client computer
  • executable software code such as Java code
  • GeoCities maintains a Web site (http.//geocities yahoo com) on which individuals can create and maintain their own Web pages
  • the GeoCities site includes a "gadget factory,” which offers users a selection of graphic and interactive elements, known as “gadgets,” that can be posted on the users' Web pages
  • Popular gadgets include a "Countdown to the Big Day,” a "Love Compatibility Meter,” and various games and quizzes
  • the gadget factory creates HTML code representing the gadget, which is inserted into an HTML representation of the user's Web page
  • the gadget factory includes a "code window,” from which the appropriate HTML code can be copied to the user's Web page using cut and paste operations
  • a first user creates one or more individualized Web page components
  • Such components typically comprise graphic and rich media elements, preferably including animation, audiovisual and other multimedia features
  • the first user may be an individual or a business
  • a Web page component created in this manner is posted on the first user's Web page, preferably by embedding suitable code, as is known in the art, in a textual description of the user's Web page, typically a HTML description
  • the embedded code preferably comprises a script tag including an address string that points to a storage location on a component server associated with the Web site, at which location code actually representing the Web page component is stored
  • the location is allocated to the first user by the server, which preferably also records the first user's identity and/or network address
  • the first user creates the Web page component using a Web site, provided for this purpose in conjunction with the component server
  • a Web site provided for this purpose in conjunction with the component server
  • the operation of such a Web site is described, for example, in the above-mentioned U S Patent Application no 09/289,689.
  • a browser program running on the second user's computer reads the embedded code corresponding to the component
  • the computer sends a message to the server asking for the code representing the component
  • the server conveys the code to the second user's computer, and the component then is then displayed in its proper place on the viewed Web page
  • the component comprises rich media content, such as audiovisual data, which is streamed by the server to the second user's computer when requested by the computer, and is not stored on the second user's computer
  • the component comprises a framework that identifies the first user, and the content is displayed in the framework
  • the second user Upon submitting the copy request, the second user is preferably prompted by the server to input identification information, such as an electronic mail address
  • the server then sends the second user suitable code for embedding in the second user's Web page or desktop
  • the code to be embedded is displayed in a window on screen, typically a pop-up window for this purpose, from which the second user can cut and paste the code into his/her own Web page or desktop.
  • the component After the second user has copied the Web page component to his or her Web page, the component is displayed on the second user's Web page, and other users, viewing the second user's page, may similarly request and copy the component to their own pages
  • the second user maintains a collection of components, typically including the first user's component along with components gleaned from other users
  • a "component collector” program running on the second user's computer organizes the various components and displays icons identifying the components in a window belonging to the collector program The second user may add components to the collection and delete them at will
  • the user selects the corresponding icon, typically by "clicking on” the icon using a pointing device, such as a mouse
  • the component collector program preferably queries the component server from time to time, in order to find out whether any changes have been made to the components in the collection
  • the collector program alters an aspect of the corresponding icon, so as to alert the second user that there is something new to see in the component
  • the server (or another back-end server associated therewith) records and tracks the identification information regarding the users who have copied the Web page component Such information preferably includes the users' electronic
  • the server sends a message to inform the first user whenever the server receives a request to convey the first user's Web page component for display on another computer
  • a client program running on the first user's computer displays information contained in or derived from the message for the benefit of the first user Since the request to convey the component is based on a tag that has been uniquely assigned by the server to the user on whose Web page the component is to appear, the server is able to provide identification of that user in the message to the first user
  • the client program identifies the Web page on which the component is appearing in real time
  • the client also informs the first user how many times the component has been requested for display on the Web page of each of the users who have received the component, as well as how many times the component has been copied from that user
  • the client program alerts the first user at the time the message from the server is received
  • the first user knows when the Web page component is being displayed and, preferably, also knows on
  • conveying the code includes conveying code from a server on which the code representing the graphic element is stored, which is substantially independent of a server that provides code to drive the display of the first computer graphic page, wherein both of the servers are coupled to communicate with the second computer via the Internet
  • the first and second computer graphic pages include Web pages, which are viewed using a browser program running on the second computer
  • the second computer graphic page includes a Web page generated by the second user, to which the second user copies the graphic element
  • the first computer graphic page includes an electronic mail message sent by the first user
  • the second computer graphic page includes an active desktop display on the second computer, to which the second user copies the graphic element
  • providing the graphic element to the second user includes saving the element in a collection of graphic elements on the second computer
  • the method includes receiving a change to the graphic element from the first user, and sending a notification of the change to the second user
  • an icon is displayed, corresponding to the graphic element in a window associated with the collection on the second computer, wherein sending the notification comprises altering an aspect of the icon so as to indicate to the second user that the change has occurred
  • the graphic element appearing on the first computer graphic page is provided by a server responsive to a first tag including a text string embedded in a textual description of the first computer graphic page, the tag indicating a location on the server at which the code representing the graphic element is stored, and providing the graphic element to the second user includes issuing to the second computer a second tag to be embedded in a textual description of the second computer graphic page, the tag including the identifier and indicating the location on the server at which the code representing the graphic object is stored
  • issuing the first and second tags includes issuing a Uniform Resource Locator (URL) code
  • the textual descriptions of the first and second computer graphic pages include descriptions in a mark-up language, preferably Hyper Text Mark-up Language (HTML), and issuing the first and second tags includes issuing HTML script tags to be incorporated in the textual descriptions
  • issuing the second tag includes sending the tag to the second user via electronic mail or, alternatively, displaying the tag in a window on the display of the second computer, from
  • conveying the code includes streaming code representing audiovisual media from a server to the second computer when the graphic element is displayed thereon
  • conveying the code to the second computer includes receiving an indication of an audiovisual display capability of the second computer and adjusting the code conveyed to the second computer responsive to the capability
  • the second computer includes a handheld device
  • the code representing the audiovisual media is not stored on the second computer
  • conveying the code includes conveying mark-up language code representing a framework of the graphic element to the second computer, such that the audiovisual media can be displayed on the second computer substantially only within the framework
  • conveying the code to the second computer includes retrieving data from a database for inclusion in the graphic element
  • conveying the code to the second computer includes conveying mark-up language code representing a framework of the graphic element to the second computer from a component server
  • retrieving the data from the database includes retrieving the data from a database server, which is substantially independent of the component server
  • receiving the request from the second computer includes receiving an indication that the second user has invoked a copy option associated with the graphic element as it appears in the display of the first computer graphic page
  • receiving the indication includes receiving an input responsive to selection of a copy icon on the graphic element by the second user
  • the method includes receiving from the first user a change to the computer graphic element, wherein as a result of the change, the display of the element on both the first and second computer graphic pages is changed
  • the method includes conveying the code to a third computer, operated by a third user, so that the graphic element appears in a display of the second computer graphic page shown by the third computer, receiving a request from the third computer to copy the graphic element, and providing the graphic element to the third user together with a further identifier, so that the graphic element appears in a display of a third computer graphic page assigned to the third user and, responsive to the identifier, notification is received by a server when the element is displayed
  • receiving the request includes receiving identification information regarding the user making the request, and the method further includes storing the identification information regarding the users in a hierarchical database, indicative of an order of copying the graphic element by the users
  • storing the identification information includes providing the information to the first user in a hierarchical display format, and the method includes distributing a message to the users in the database using the graphic element.
  • the method includes providing an incentive of value to one or more of the users in the database responsive to the graphic element appearing in the computer graphic page of another user below them in the order of copying the graphic element
  • the method includes providing a report to the first user with respect to interaction of the users with the graphic element Further preferably, providing the report includes providing Uniform Resource Locators (URLs) of the computer graphic pages of the users on which the element is displayed Additionally or alternatively, providing the report includes reporting how many times the graphic element was displayed on the computer graphic pages Further additionally or alternatively, providing the report comprises reporting how many times viewers of the computer graphic pages selected an item in the graphic element using a pointing device
  • the method includes sending a message to the first computer responsive to the notification that is received when the element is displayed.
  • a method for tracking user response to a computer graphic element assigned to a first user of a first computer and distributed for display via a network including receiving a communication from a second computer, operated by a second user, requesting transmission of code representing the graphic element to the second computer, conveying the code to the second computer, so that the graphic element appears in a display of a computer graphic page shown by the second computer, and sending a message to the first computer with notification of the communication from the second computer, so that the first user is made aware of the communication while the graphic element appears in the display shown by the second computer
  • sending the message to the first computer includes conveying to the first computer identification information regarding the second computer user
  • conveying the code includes providing a copy of the graphic element to the second computer, so that the graphic element appears in a display of a second computer graphic page, and sending the message to the first computer includes notifying the first user that a copy has been made
  • the method includes maintaining a database of users who have received copies of the graphic element for display on respective computer graphic pages, wherein sending the message to the first computer includes notifying the first user as to the identity of the user in the database on whose computer graphic page the graphic element is displayed
  • the method includes recording the messages, so as to track the number of times the graphic element has appeared in displays shown by other computers
  • the method includes receiving a response to the message from the first user and conveying the response to the second user by means of the graphic element
  • conveying the code includes conveying code from a server on which the code representing the graphic element is stored, responsive to a tag including a text string embedded in a textual description of the computer graphic page, the string indicating a location on a server at which the code is stored, wherein the tag includes a HTML script tag.
  • the server on which the code is stored is substantially independent of another server that provides the textual description of the computer graphic page, wherein both of the servers are coupled to communicate with the first and second computers via the Internet
  • the computer graphic page includes a Web page, which is viewed using a browser program running on the second computer
  • a method for distributing via a network copies of a computer graphic element, appearing on a first computer graphic page generated by a first computer user including conveying computer-readable code representing the graphic element to a second computer, operated by a second user, so that the graphic element appears in a display of the first computer graphic page shown by the second computer, receiving a request from the second computer to copy the graphic element, and providing the graphic element to the second user so that the element is saved in a collection of graphic elements maintained on the second computer, for subsequent display on the second computer upon selection of the element by the second user
  • the method includes receiving a change to the graphic element from the first user, and sending a notification of the change to the second user Further preferably, the method includes displaying an icon corresponding to the graphic element in a window associated with the collection on the second computer, wherein sending the notification includes displaying the icon so as to indicate to the second user that the change has occurred
  • the method includes displaying an icon corresponding to the graphic element in a window associated with the collection on the second computer, wherein conveying the computer-readable code includes conveying the code upon selection of the icon by the second user
  • conveying the code includes streaming code representing audiovisual media from a server to the second computer when the graphic element is displayed thereon, wherein the code representing the audiovisual media is not stored on the second computer
  • a method for distributing via a network copies of a computer graphic element generated by a first computer user including conveying mark-up language code representing a framework of the graphic element to a second computer, operated by a second user, causing the framework to appear in a display of a computer graphic page shown by the second computer, streaming media code representing audiovisual media to the second computer, causing the second computer to display the media in the framework substantially without storing the media code on the second computer, and enabling the second user to copy the graphic element for subsequent display such that the audiovisual media can be
  • the framework of the graphic element includes an identification of the first user
  • enabling the second user to copy the graphic element includes enabling a third user to receive the graphic element from the second user, wherein the mark-up language code and the streaming media code are conveyed to a third computer, operated by the third user, such that the audiovisual media can be displayed by the third computer substantially only in the framework with the identification of the first user
  • a component server for distributing copies of a computer graphic element via a network, including a memory, in which code representing the graphic element is stored at a storage location, and a processor, which conveys the code to a second computer, operated by a second user, so that the graphic element appears in a display of a first computer graphic page shown by the second computer, and which, responsive to a request from the second computer to copy the graphic element, provides the graphic element to the second user together with an identifier, so that the graphic element appears in a display of a second computer graphic page assigned to the second user and, responsive to the identifier, notification is received when the element is displayed
  • the server is substantially independent of another server that provides code to drive the display of the first computer graphic page, wherein both of the servers are coupled to communicate with the second computer via the Internet
  • the first and second computer graphic pages include Web pages, which are viewed using a browser program running on one of the computers
  • a back-end server for tracking user response to a computer graphic element assigned to a first user of a first computer, wherein the element is represented by code, which is conveyed via a network for display on a computer graphic page shown by a second computer responsive to a communication therefrom, the server including a processor, which responsive to the communication from the second computer, sends a message to the first computer, so that the first user is made aware of the communication while the graphic element appears in the display shown by the second computer
  • the message includes identification information regarding the user of the second computer
  • the server includes a memory, in which the processor maintains a database of users who have requested and received copies of the graphic element for display on respective computer graphic pages, wherein the processor records in the database the number of times the graphic element has appeared in displays shown by other computers
  • the server is coupled to communicate with the first and second computers via the Internet, wherein the computer graphic page includes a Web page, which is viewed using a browser program running on the second computer
  • a component server for distributing via a network copies of a computer graphic element including a memory, in which computer-readable code representing the graphic element is stored at a storage location, and a processor, which conveys the code to a second computer, operated by a second user, so that the graphic element appears in a display of the first computer graphic page shown by the second computer, and which, responsive to a request from the second computer to copy the graphic element, provides the graphic element to the second user so that the element is saved in a collection of graphic elements maintained on the second computer, for subsequent display on the second computer upon selection of the element by the second user
  • a server for distributing via a network copies of a computer graphic element generated by a first computer user including a memory, in which mark-up language code representing a framework of the graphic element is stored, and a processor, which conveys the mark-up language code to a second computer, operated by
  • a computer software product including computer-readable instructions in an executable file, which is run by a network server for distributing via a network copies of a computer graphic element assigned to a first computer user, wherein the instructions cause the server to convey computer-readable code representing the graphic element to a second computer, operated by a second user, so that the graphic element appears in a display of a first computer graphic page shown by the second computer, and wherein when the server receives a request from the second computer to copy the graphic element, the instructions cause the server to provide the graphic element to the second user together with an identifier, so that the graphic element appears in a display of a second computer graphic page assigned to the second user and, responsive to the identifier, notification is received when the element is displayed.
  • a computer software product including computer-readable instructions in an executable file, which is run by a network server for tracking user response to a computer graphic element assigned to a first user of a first computer and distributed for display via a network, such that code representing the graphic element is conveyed to a second computer, operated by a second user, responsive to a communication therefrom, wherein the instructions cause the server to send a message to the first computer with notification of the communication from the second computer, so that the first computer user is made aware of the communication while the graphic element appears in a display shown by the second computer.
  • an additional computer software product includes further computer-readable instructions in an executable file, which is run by the first computer as a client of the above-mentioned server, wherein the further instructions cause the computer to respond to the message from the server by displaying information to the first user regarding the communication from the second user.
  • the first computer receives a response from the first user and conveys the response over the network to the second user
  • a computer software product including computer-readable instructions in an executable file, which is run by a network server for distributing via a network copies of a computer graphic element assigned to a first computer user, which instructions cause the server to convey computer-readable code representing the graphic element to a second computer, operated by a second user, so that the graphic element appears in a display of the first computer graphic page shown by the second computer, and upon receiving a request from the second computer to copy the graphic element, to provide the graphic element to the second user so that the element is saved in a collection of graphic elements maintained on the second computer, for subsequent display on the second computer upon selection of the element by the second user
  • a computer software product including computer-readable instructions in an executable file, which is run by a network server for distributing via a network copies of a computer graphic element assigned to a first computer user, which instructions cause the server to convey mark-up language code representing a framework of the graphic element to a second computer, operated by a second user, causing the framework to appear in a display of a computer graphic page shown by the second computer, and further to stream media code representing audiovisual media to the second computer, causing the second computer to display the media in the framework substantially without storing the media code on the second computer, and to enable the second user to copy the graphic element for subsequent display such that the audiovisual media can be displayed substantially only in the framework
  • Fig 1 is a schematic, pictorial illustration showing computers coupled to the Internet for the purpose of distribution and viewing of
  • Fig 2 is a flow chart that schematically illustrates a method for creating the Web page component of Fig 1, in accordance with a preferred embodiment of the present invention
  • Fig 3 is a flow chart that schematically illustrates a method for posting the Web page component of Fig 1 on a Web page, in accordance with a preferred embodiment of the present invention
  • Fig 4 is a flow chart that schematically illustrates a method for copying the Web page component of Fig 1, in accordance with a preferred embodiment of the present invention
  • Fig 5 is a block diagram that schematically illustrates a database of computer users who have copied a self-propagating Web page component, in accordance with a preferred embodiment of the present invention
  • Fig 6 is a schematic illustration of a computer data display presenting information relating to self-propagating Web page components, in accordance with a preferred embodiment of the present invention
  • Fig 7 is a flow chart that schematically illustrates the operation of a client program running on a computer in conjunction with the display of Fig 6, in accordance with a preferred embodiment of the present invention
  • Fig 8 is a schematic reproduction of a computer display illustrating an active desktop to which Web page components have been saved, in accordance with a preferred embodiment of the present invention
  • Fig 1 is a schematic illustration of a computer 20, which displays a Web page 42 including a self-propagating Web page component 44, in accordance with a preferred embodiment of the present invention
  • Computer 20 comprises a processor 22, keyboard 24, pointing device 26 and monitor 28, as are known in the art
  • a browser program running on processor 22, such as Microsoft Internet Explorer or Netscape Navigator, for example, generates a browser window 40 on monitor 28
  • the content of the browser window, including page 42 and component 44 is received over a network, preferably over the Internet 30, from appropriate servers 32 and 34, whose operation is described in detail hereinbelow
  • Other computers 36, 37, 38, etc are also connected to Internet 30 and may generally be used, like computer 20, both to create and to view Web page content
  • component 44 may also be adapted for distribution to devices with less sophisticated graphic and audiovisual capabilities, such as palmtop computers and mobile telephones
  • Computer 38 illustrates such a device
  • Software code for component 44 is not stored on Web page host server 32, but rather on a Web page component server 34
  • Server 34 is associated with a Web site, which has been accessed by Joe via Internet 30, using computer 36, for example, to create the component, as described further hereinbelow
  • a HTML script tag containing a URL referring to the location on server 34 of stored software code describing component 44, is embedded in the HTML description of page 42
  • the browser running on computer 20 encounters this tag, it sends a request to server 34 to convey the appropriate code
  • the browser displays the component at a location on page 42 that Joe has selected
  • Fig 2 is a flow chart that schematically illustrates a method used by Joe in preparing Web page component 44 for display on page 42, using the Web site associated with server 34, in accordance with a preferred embodiment of the present invention
  • component 44 includes animation and other multimedia effects, which are created as described in the above-mentioned U S Patent Application no 09/289,689.
  • the component is preferably built up in the form of a template, typically comprising a basic animation sequence, preferably defined using Java language and/or JavaScript code
  • the template has placeholders at which the user (in this case, Joe) can insert personalized content, such as the images and names of his dogs Placeholders, not necessarily specified in advance in a template, can also refer to rich media, such as audiovisual data, or to data to be retrieved from a database
  • the rich media or database may be maintained on a server separate from component host 34, and are preferably streamed to a client, such as computer 20, for example, when the component is viewed on the computer
  • the design and use of templates for creating Web page components is described further in the above-mentioned U.S Patent Application 09/575,636.
  • Templates of this sort are available for use, for example, at a Web site operated by Gizmoz, Inc. (www.gizmoz.com). Visitors to the Gizmoz site can access templates for components (referred to in the site as "Gizmoz") such as on-line photo albums, personal "identification cards,” greeting cards and hyperlink buttons, and can also access ready-made animated and multimedia components for insertion in their own Web pages Other possible component types will be apparent to those skilled in the art
  • the Web site of server 34 displays a list of component categories that the user may select for inclusion in the Web page.
  • the user is provided with a list of titles of basic animation sequences or other templates among which the user can select a component at a step 52.
  • Each of the animation sequences is generated by a respective script, preferably written in the JavaScript language, which typically refers to an executable Java program, stored on server 34
  • the user may preview any of the animation sequences on his or her computer display in order to select an animation sequence that will form a basis of the Web page component to be created for the user.
  • the user optionally changes certain attributes of the selected component, such as colors and choice of images
  • the user enters data, such as text, hypertext links, and pictures, to the component at assigned locations for receiving the data
  • the user may manipulate the animation sequence, for example, by removing or repeating one or more frames or scenes of the sequence
  • Joe has inserted pictures of four of his dogs, which are viewed in any desired order by the user of computer 20 by selecting an appropriate tab on a control bar 46 of component 44.
  • server 34 After the user has finished editing the selected component, he indicates to server 34 that he wishes to "take away" the component for posting on a Web page, at a step 56 Server 34 then provides the user with the appropriate HTML tag for inclusion in the HTML description of the Web page, so that the user can incorporate the component in the page, at a step 58 Component 44 will then appear on page 42, as shown in Fig 1
  • server 34 prepares and stores the component in the form of a pure Java applet, so that client computers 20, 37 and 38 need only a suitable Java Virtual Machine (JNM) to view component 44 No additional plug-ins are required
  • the user specifies that the component is also to be viewed on handheld devices, such as device 38, in which case the server prepares and stores a "downgraded" version of the component that is suited to the more limited graphic capabilities of device 38
  • the server will first ascertain the capabilities of the device, and will then send the appropriate version of the component
  • Fig 3 is a flow chart that schematically illustrates details of the process of step 56, wherein the edited component is taken for posting on Web page 42, in accordance with a preferred embodiment of the present invention
  • the user submits to component server 34 a request to receive component 44 for display on a Web page
  • the user submits the request by clicking on an appropriate control icon displayed by the server Web site
  • the server then prompts the user to input certain identifying information, particularly including the user's electronic mail address
  • the server stores details of the (edited) component at a location in the server's memory, along with the user's identifying information, and assigns a tag to the user to be embedded in the HTML code of the user's Web page
  • the tag for inserting into the Web page is preferably a script tag, having the following general form
  • the argument of the "src” parameter in this tag is a URL on the server, which invokes a program called “mediaRedirect "
  • the program refers to parameters in the tag, including "usr” (the user who created the gizmo) and “taker” (the user on whose Web page the gizmo is now appearing)
  • the "usr” parameter is used by the program to identify the URL of the gizmo itself, for example, http //gizmoz zapa com/ joe/albuml/gizmo htm
  • the server Since the component is typically based on a template, it is generally not necessary for the server to store a complete description of the component for each user who selects it Rather, the server stores a record of the images, text and other specific data input by the user, corresponding to the predefined placeholders in the template
  • the record is preferably stored in the form of an XML file, as is known in the art An example of such a file is shown in the above-mentioned patent application no 09/289,689
  • the basic code corresponding to the template itself is stored separately is and accessed along with the specific component record whenever the component is requested for viewing
  • Server 34 sends the tag to the user, preferably in an electronic mail message, so that the user can copy the tag into the HTML description of Web page 42, which is stored on Web page host server 32 Alternatively, the tag may be presented in a pop-up window on the Web site, from which it can be copied to the Web page using cut and paste operations
  • the user copies the code as instructed, so that when the user of computer 20 views Joe's home page 42, component 44 is called from server 34 and appears on the page as Joe has designed it At any desired later time, Joe can return to the Web site of server 34 and make changes to his component stored there, adding a picture of his new dog, for example
  • the URL for the component and the location of the component on page 42 will remain the same
  • Fig 4 is a flow chart illustrating a procedure carried out by server 34 when another user, say the user of computer 20, asks to copy component 44, in accordance with a preferred embodiment of the present invention
  • Daphne uses her cursor 50 to click on a copy control icon marked by a legend 48, as shown in Fig 1
  • Daphne may choose to "collect" the component on her own computer, as described further hereinbelow, using a collect control icon with a legend 49
  • a single control may be used either to invoke both functions, or to enable only copying, or only collecting
  • legend 48 simply says “copy me,” the legend or other areas of component 44 can also be used for advertising purposes
  • legend 48 might indicate that the copy is provided as a service of Gizmoz, or of another sponsor, such as a dog food company
  • the component includes a hyperlink, that can be selected by a viewer of the component to "click through" to the sponsor's site
  • component 44 When Daphne clicks on the copy control, component 44 generates a message to server 34 indicating that a copy or collect request has been made and giving the tag of the component Server 34 thus knows that Daphne wishes to receive Joe's component
  • the server returns a message to computer 20, which is displayed in browser window 40, prompting Daphne to provide identifying information of the same sort as was earlier provided by Joe, particularly including Daphne's electronic mail address
  • the server In response to the information, the server generates a new HTML tag, and sends it to Daphne
  • the server sends instructions along with the tag on how to insert the HTML tag into her Web page, as described above with reference to Joe
  • the server notes that Daphne has copied the component from Joe's Web page Daphne can now post component 44 on her Web page, as well Subsequent users, viewing Daphne's Web page, will see "Joe's dogs" there and, if they wish, will be able to copy component 44 with the dogs to their own Web pages, using substantially the same procedure
  • Joe as creator of the component, is entitled to make changes in the data, as described above, but typically Daphne is not so entitled
  • users such as Daphne are informed that Joe has changed the component, and are given the options of accepting or rejecting the change, or of removing the component from their respective Web pages or collections
  • the subsequent users receive their own unique HTML tags, as well, like Daphne's, so that whenever the server receives a request for the component, it is able to identify on which user's Web page the component is to be displayed
  • server 34 creates a database of all of the users who have taken a component, along with the identifying information that they have submitted
  • the component comprises rich media content, such as audiovisual data, which is streamed by server 34 to computer 20 when requested by the computer Only the HTML tag is stored on computer 20, and not the content itself
  • component 44 comprises a framework that identifies the "owner" of the component, and the content is displayed only in this framework Daphne and subsequent users can thus view and distribute the component at will, giving the owner of the component wide exposure of the content, but they cannot use or manipulate the content outside the framework
  • the owner of the component can update the content, as well as the framework, in order to maintain the interest of viewers and promote products, services and ideas
  • Fig 5 is a block diagram that schematically illustrates a database 70 of users who have received component 44 for display on their Web pages, according to a preferred embodiment of the present invention
  • the database uses the unique HTML tag issued to each user in order to identify, with respect to each user, which other users have copied the component from him or her
  • the database thus has a hierarchical or pyramidal form as shown in the figure
  • An ultimate record 72 in the hierarchy represents the "owner" of the component concerned, typically the user (or business) who created the particular component, in this case Joe
  • records 78 of users such as Daphne
  • records 80, 82, etc of third- and fourth-generation users, and so forth
  • Each record preferably includes all URLs 74 on which the component taken by that specific user is running and other user details, particularly an e-mail address 76
  • Database 70 thus represents a sort of private network, in this case a network of dog fanciers
  • the network has the nature of being self-propagating, and database 70 will continue to grow as long as Joe provides attractive content in his Web page component Joe or his sponsor can feed targeted information to this network, either by posting the information in a section of component 44 or, alternatively or additionally, by communicating with the users via electronic mail
  • these methods of network building and information distribution exemplify what is known as "viral marketing "
  • Joe can view the contents of database 70 using a client software program running on Joe's computer 36, which is fed with information by server 34
  • a further feature of such viral marketing and tracking of distribution of component 44 is that incentives can be offered to the users for posting the component on their Web pages For example, if the component on a given user's Web page includes a sponsor's advertisement, and the advertisement leads to a purchase of one of the sponsor's products, the user may receive bonus points from the sponsor, which may be traded for goods Moreover, other users above the given user in the hierarchy of database 70 may also be rewarded Thus, referring to Fig 5, if a customer made a purchase of dog food as a result of seeing component 44 on Talia' s Web page, then Talia, Daphne and possibly Joe all receive bonus points
  • component 44 includes a link to an electronic commerce Web site from which the dog food purchase is made, such that when the customer uses the link, the identity of the Web page owner (in this case, Talia) is automatically reported to the sponsor
  • Fig 6 is a schematic illustration of a computer data display 90, presenting information regarding viewing and propagation of self-propagating Web page components, in accordance with a preferred embodiment of the present invention
  • Display 90 is generated by the client program running on computer 36, which presents and updates the information in real time, based on messages sent by server 34 whenever another user views one of Joe's components
  • display 90 is viewed using a standard Web browser, and the client program is written in a suitable language for this purpose, such as Java
  • each component represented by a corresponding link, such as link 96 (to Joe's Dogs), link 100 (My ID) or link 102 (Family Trip)
  • the links are identified in the display by the corresponding URLs
  • each component is also represented by an icon 94 Beneath link 96, a hierarchical list of users 98 who have copied the corresponding component 44 can be viewed
  • Each element in the hierarchy beginning with link 96 assigned to the "owner" of the component, has a "+” or "-" sign 92, to indicate whether or not there are further elements hidden below it in the hierarchy
  • This convention is well known in the art of displaying computer directory and file hierarchies, for example By clicking on the "+” next to any listed item, the user of display 90 can see a list of the elements in the next level down of the hierarchy Clicking on the "-” then hides the lower hierarchy levels again
  • the list of users 98 in Fig 6 corresponds in this manner to a
  • Fig 6 there is a table that lists, for each displayed element in the hierarchy, a number of "views” 104 and a number of "forwards" 106 that the corresponding element has generated
  • the number of views is the number of times that the component has been downloaded by server 34 to other computers, such as computer 37 or 38, for display on the Web page of the user listed at the left side of the display
  • the number of forwards is the number of times the component has been requested for copying from server 34
  • the top line in the table shows that component 44 has been viewed 1234 times on Joe's Web page 42, and copied from the page 251 times
  • the second line in the table shows that the component has been viewed 672 times on Daphne's Web page and copied from there 114 times
  • the numbers of views and forwards listed next to the name reflect the cumulative total of that user and his/her descendants in the hierarchy
  • the user is able to view his entire hierarchy of Web component recipients and to determine which of them have been most effective in passing his message on to other users
  • This feature gives an advertiser extremely precise and focused data regarding the effectiveness of a viral marketing campaign
  • Other information provided in display 90 might include the number of times viewers have clicked through from a given instance of the component to the sponsor's site, or the number and types of viewer interactions with the component
  • Joe or the sponsor might wish to know the extent to which viewers interact with control tabs 46 or other features of component 44, as a measure of the level of viewer interest in the content of the component
  • a message box 108 preferably gives the user of display 90 further real-time information when other users are viewing the Web page components provided by server 34 (It is noted, however, that this particular feature requires a special-purpose client program and is generally not supported by standard Web browsers.)
  • An alert flasher 110 and/or tone is actuated, and a message appears in box 108 to indicate to the user (Joe) that another user (in this case Howard) has identified himself in the process of copying component 44
  • the flasher may indicate that another user is viewing the component, although in this case the user's identity will generally be unknown, except to the extent that the user can be identified by the IP address that the user's computer furnishes to server 34 in order to receive the component for viewing
  • Joe has included a "chat box" in his component, as is known in the art, Joe can use the box to communicate in real time with the user who is copying or viewing the component
  • Fig 7 illustrates a process by which server 34 responds to such a "copy,” in accordance with a preferred embodiment of the present invention
  • the process begins when the server receives a request to copy Web component 44, identified as a "copy request "
  • the server immediately increments the corresponding copy count 104, and notifies the client associated with display 90 that a copy of the component is in progress or about to take place Flasher 110 (and/or the associated tone) is actuated, and an appropriate message is displayed in box 108
  • the user of the client has the option of responding to the hit by modifying the component ad hoc
  • Joe may use a chat box to insert into component 44 a message to Howard, who has connected to copy the component
  • Joe may send Howard an e-mail message, assuming Howard has entered his e-mail address as a precondition for copying the component
  • the client thus enables the owner of a Web page or component to interact in real time with visitors to the page or with viewers of the component, in a way that is not possible using software tools known in the art
  • Fig 8 is a schematic representation of a computer display 120, shown on monitor 28, for example, in accordance with a preferred embodiment of the present invention
  • Display 120 preferably comprises an active desktop 122, as described above, which is used by a user of computer 20, such as Daphne, to collect and display Web components Methods for viewing and collecting these components were described above with reference particularly to Fig 4, and further aspects of such component collecting are described here
  • a live link is created from the desktop to component server 34 by embedding an appropriate HTML tag in the desktop
  • the live link is preferably represented by a thumbnail image on the desktop, such as images 124, 126 and 128
  • the HTML tag in each case contains a URL of the corresponding thumbnail image, which is downloaded from server 34
  • the tag also includes a "HREF" link to another URL on the server, so that when the user clicks on the corresponding thumbnail image, the entire component is downloaded from the server and is displayed on monitor 28, as described above
  • Fig 9 is a schematic representation of a computer display 129, shown on monitor 28, in accordance with another preferred embodiment of the present invention
  • a "component collector” program running on computer 20 receives the corresponding HTML tag and saves it along with other components, as described above
  • the collector program organizes and displays icons 132 and 134 in a window 130 belonging to the collector program
  • the icons themselves are preferably stored on computer 20
  • the user clicks on one of the icons the corresponding component is downloaded from server 34 and displayed on monitor 28
  • the user of computer 20 may add components to the collection and delete them at will
  • Components stored on server 34 are preferably updated from time to time by their respective owners.
  • This new content may include, for example, a new song posted in MP-3 format in a music component associated with icon 132, or sports scores posted in a component provided by a sports league (In the case of sports scores or other tabular data, the data need not be updated manually in the component stored on server 34 Rather, the data may be read automatically from a database maintained on a separate database server, using an appropriate placeholder in the component to indicate the location of the data to be provided )
  • Component owners, particularly businesses typically wish to encourage users to interact with their components, particularly when they have added new content to their components
  • server 34 maintains a listing indicating, for each component, the time of its most recent update
  • the component collector program on computer 20 queries the component server from time to time, in order to find out which of the components in the user's collection have had changes in their

Abstract

A method for distributing via a network copies of a computer graphic element (44), appearing on a first computer graphic page (42) assigned to a first computer user. Computer-readable code representing the graphic element is conveyed to a second computer (22), operated by a second user, so that the graphic element appears in a display of the first computer graphic page shown by the second computer. When a request is received from the second computer to copy the graphic element, the graphic element is provided to the second user together with an identifier, so that the graphic element appears in a display of a second computer graphic page assigned to the second user and, responsive to the identifier, notification is received when the element is displayed.

Description

SELF-PROPAGATING NETWORK CONTENT DISTRIBUTION
CROSS-REFERENCE TO RELATED APPLICATIONS
This patent application is a continuation-in-part of U S Patent Application 09/407,098, filed September 27, 1999 It is also related to co-pending U S Patent Applications 09/575,636 and 09/289,689 All of these applications are assigned to the assignee of the present patent application and are incorporated herein by reference
FIELD OF THE INVENTION
The present invention relates generally to preparation of Web pages and components to be used thereon, and specifically to methods and apparatus for distributing such Web page components
BACKGROUND OF THE INVENTION
In recent years, the use of the World Wide Web (WWW) has been growing rapidly In use of the Web, a client computer user connects to a Web site on a server and requests that the server download and display Web pages on the client computer In response to the request, the server sends to the client computer graphic files, usually in Hypertext Mark-up Language (HTML), which include media elements (pictures, animations, texts, sound), scripts of instructions to be performed by an Internet browser program running on the client computer, and in some cases executable software code, such as Java code
The number of companies, organizations and individuals who have Web home pages is rapidly growing Companies feel the need to prepare interesting Web sites and Web advertisements in order to attract customers and maintain their standing in the market Furthermore, many individuals prepare Web pages to convey information to their friends and family, and frequently use graphical and/or animation formats for these purposes Frequently, such companies or individuals would like to see the content that they post in their Web pages distributed as widely as possible over the Web, so as to gain greater exposure
GeoCities maintains a Web site (http.//geocities yahoo com) on which individuals can create and maintain their own Web pages The GeoCities site includes a "gadget factory," which offers users a selection of graphic and interactive elements, known as "gadgets," that can be posted on the users' Web pages Popular gadgets include a "Countdown to the Big Day," a "Love Compatibility Meter," and various games and quizzes The gadget factory creates HTML code representing the gadget, which is inserted into an HTML representation of the user's Web page For users who are not GeoCities members (i e , who do not maintain a Web page on the GeoCities site), the gadget factory includes a "code window," from which the appropriate HTML code can be copied to the user's Web page using cut and paste operations
SUMMARY OF THE INVENTION It is an object of some aspects of the present invention to provide improved methods and apparatus for distribution of Web page components, particularly graphic, and multimedia elements and animations for display on Web home pages and computer "desktop" displays
It is another object of some aspects of the present invention to provide improved methods and apparatus for tracking such distribution of Web page components It is a further object of some aspects of the present invention to provide methods and tools that enable businesses to build a base of Web users who are interested in their products or services, and to distribute content to these users, including periodic updates of such content
It is yet a further object of some aspects of the present invention to enable content developers to attain wide distribution of their content over the Web, without compromising their intellectual property rights in the content
In preferred embodiments of the present invention, a first user creates one or more individualized Web page components Such components typically comprise graphic and rich media elements, preferably including animation, audiovisual and other multimedia features The first user may be an individual or a business A Web page component created in this manner is posted on the first user's Web page, preferably by embedding suitable code, as is known in the art, in a textual description of the user's Web page, typically a HTML description The embedded code preferably comprises a script tag including an address string that points to a storage location on a component server associated with the Web site, at which location code actually representing the Web page component is stored The location is allocated to the first user by the server, which preferably also records the first user's identity and/or network address
Preferably, the first user creates the Web page component using a Web site, provided for this purpose in conjunction with the component server The operation of such a Web site is described, for example, in the above-mentioned U S Patent Application no 09/289,689. When a second user views the first user's Web page, a browser program running on the second user's computer reads the embedded code corresponding to the component Based on the above-mentioned script tag, the computer sends a message to the server asking for the code representing the component The server conveys the code to the second user's computer, and the component then is then displayed in its proper place on the viewed Web page Preferably, the component comprises rich media content, such as audiovisual data, which is streamed by the server to the second user's computer when requested by the computer, and is not stored on the second user's computer Most preferably, the component comprises a framework that identifies the first user, and the content is displayed in the framework Thus, when the second and subsequent users copy the component, as described below, the content is always maintained in the framework, so that the first user's intellectual property rights in the content are asserted In some preferred embodiments of the present invention, the second user can submit a request to the server to copy the Web page component Preferably, the second user copies the component to his or her own Web page Alternatively, the second user may copy the component to an "active desktop" on his or her own computer To copy the component, the second user selects an appropriate icon or control displayed for this purpose in association with the component as it appears on the second user's computer screen Typically, the first user will have given his permission to the server in advance for such copying In the case that the first user is a commercial entity, and the Web page component has advertising value, the first user will wish not only to permit, but to encourage such copying
Upon submitting the copy request, the second user is preferably prompted by the server to input identification information, such as an electronic mail address The server then sends the second user suitable code for embedding in the second user's Web page or desktop Alternatively, when the second user submits the copy request, the code to be embedded is displayed in a window on screen, typically a pop-up window for this purpose, from which the second user can cut and paste the code into his/her own Web page or desktop. After the second user has copied the Web page component to his or her Web page, the component is displayed on the second user's Web page, and other users, viewing the second user's page, may similarly request and copy the component to their own pages
This sort of copying is known as "viral marketing," because advertising content in the Web page component propagates to an expanding number of Web pages without the necessity of active involvement by the first user or of payment for advertising space The code representing the component, however, continues to be stored on the server, where it is accessed whenever one of the Web pages to which the component has been copied is viewed The first user or, alternatively or additionally, an operator of the server is able to make changes in the component, for example, adding or altering an advertising banner thereon, and the changes will then appear on all of the Web pages, desktops, etc , to which the component has propagated (generally subject to the acceptance of the owners of these other Web pages) Methods of producing Web page components known in the art, such as the GeoCities "gadget factory" mentioned hereinabove, do not enable such personalization and automatic propagation of personalized components, as is provided by preferred embodiments of the present invention
In some of these preferred embodiments, the second user maintains a collection of components, typically including the first user's component along with components gleaned from other users Preferably, a "component collector" program running on the second user's computer organizes the various components and displays icons identifying the components in a window belonging to the collector program The second user may add components to the collection and delete them at will To view one of the components in the collection, the user selects the corresponding icon, typically by "clicking on" the icon using a pointing device, such as a mouse The component collector program preferably queries the component server from time to time, in order to find out whether any changes have been made to the components in the collection When the server indicates that a change has occurred in one of the components, the collector program alters an aspect of the corresponding icon, so as to alert the second user that there is something new to see in the component In some of these preferred embodiments, the server (or another back-end server associated therewith) records and tracks the identification information regarding the users who have copied the Web page component Such information preferably includes the users' electronic mail addresses, as described above, and may also include their names, demographic information, Web page addresses, and any other information of interest that the users were prompted to submit at the time they asked to copy the component At the time of copying, each such user is assigned a unique tag, which is associated by the server with the respective identification information The server is thus able to build a hierarchical database of these users, including both the identification information and tracking of the propagation of the component The information in the database can be furnished to the first user The propagation is preferably displayed for the user in the form of a tree, pyramid or other graphic format, which shows from which other user each of the users in the database has received the component The first user can use this database to build and maintain a "private network" of users to whom his or her component has been distributed Such a network can be particularly useful when the first user is a commercial entity, which can use the private network to track and distribute information to a group of customers or potential customers Furthermore, the first user can view the propagation hierarchy to determine which of the users who have copied the Web page component has been most effective as a channel for passing the component on to subsequent users in the hierarchy
In some preferred embodiments of the present invention, the server sends a message to inform the first user whenever the server receives a request to convey the first user's Web page component for display on another computer Preferably, a client program running on the first user's computer displays information contained in or derived from the message for the benefit of the first user Since the request to convey the component is based on a tag that has been uniquely assigned by the server to the user on whose Web page the component is to appear, the server is able to provide identification of that user in the message to the first user Most preferably, therefore, the client program identifies the Web page on which the component is appearing in real time Further preferably, the client also informs the first user how many times the component has been requested for display on the Web page of each of the users who have received the component, as well as how many times the component has been copied from that user In some of these preferred embodiments, the client program alerts the first user at the time the message from the server is received Thus, the first user knows when the Web page component is being displayed and, preferably, also knows on whose Web page the display is taking place, among the users who have copied the component Optionally, since the server necessarily receives the IP (Internet Protocol) address of the computer that has requested the Web page component for display, the server also conveys the IP address to the first user Preferably, the client program also alerts the first user when the component is copied, and tells the user who is doing the copying The first user can then communicate in real time with users viewing or copying the component, for example, using a "chat box," as is known in the art, which is preferably incorporated in the Web page component There is therefore provided, in accordance with a preferred embodiment of the present invention, a method for distributing via a network copies of a computer graphic element, appearing on a first computer graphic page assigned to a first computer user, including conveying computer-readable code representing the graphic element to a second computer, operated by a second user, so that the graphic element appears in a display of the first computer graphic page shown by the second computer, receiving a request from the second computer to copy the graphic element, and providing the graphic element to the second user together with an identifier, so that the graphic element appears in a display of a second computer graphic page assigned to the second user and, responsive to the identifier, notification is received when the element is displayed
Preferably, conveying the code includes conveying code from a server on which the code representing the graphic element is stored, which is substantially independent of a server that provides code to drive the display of the first computer graphic page, wherein both of the servers are coupled to communicate with the second computer via the Internet Most preferably, the first and second computer graphic pages include Web pages, which are viewed using a browser program running on the second computer Preferably, the second computer graphic page includes a Web page generated by the second user, to which the second user copies the graphic element
Alternatively or additionally, the first computer graphic page includes an electronic mail message sent by the first user
Further alternatively or additionally, the second computer graphic page includes an active desktop display on the second computer, to which the second user copies the graphic element
In a preferred embodiment, providing the graphic element to the second user includes saving the element in a collection of graphic elements on the second computer Preferably, the method includes receiving a change to the graphic element from the first user, and sending a notification of the change to the second user Most preferably, an icon is displayed, corresponding to the graphic element in a window associated with the collection on the second computer, wherein sending the notification comprises altering an aspect of the icon so as to indicate to the second user that the change has occurred
Preferably, the graphic element appearing on the first computer graphic page is provided by a server responsive to a first tag including a text string embedded in a textual description of the first computer graphic page, the tag indicating a location on the server at which the code representing the graphic element is stored, and providing the graphic element to the second user includes issuing to the second computer a second tag to be embedded in a textual description of the second computer graphic page, the tag including the identifier and indicating the location on the server at which the code representing the graphic object is stored Most preferably, issuing the first and second tags includes issuing a Uniform Resource Locator (URL) code Further preferably, the textual descriptions of the first and second computer graphic pages include descriptions in a mark-up language, preferably Hyper Text Mark-up Language (HTML), and issuing the first and second tags includes issuing HTML script tags to be incorporated in the textual descriptions Preferably, issuing the second tag includes sending the tag to the second user via electronic mail or, alternatively, displaying the tag in a window on the display of the second computer, from which the second user copies the tag
Preferably, conveying the code includes streaming code representing audiovisual media from a server to the second computer when the graphic element is displayed thereon Most preferably, conveying the code to the second computer includes receiving an indication of an audiovisual display capability of the second computer and adjusting the code conveyed to the second computer responsive to the capability In one preferred embodiment, the second computer includes a handheld device
Preferably, the code representing the audiovisual media is not stored on the second computer Most preferably, conveying the code includes conveying mark-up language code representing a framework of the graphic element to the second computer, such that the audiovisual media can be displayed on the second computer substantially only within the framework
In a preferred embodiment, conveying the code to the second computer includes retrieving data from a database for inclusion in the graphic element Preferably, conveying the code to the second computer includes conveying mark-up language code representing a framework of the graphic element to the second computer from a component server, and wherein retrieving the data from the database includes retrieving the data from a database server, which is substantially independent of the component server
Preferably, receiving the request from the second computer includes receiving an indication that the second user has invoked a copy option associated with the graphic element as it appears in the display of the first computer graphic page Most preferably, receiving the indication includes receiving an input responsive to selection of a copy icon on the graphic element by the second user In a preferred embodiment, the method includes receiving from the first user a change to the computer graphic element, wherein as a result of the change, the display of the element on both the first and second computer graphic pages is changed
Preferably, the method includes conveying the code to a third computer, operated by a third user, so that the graphic element appears in a display of the second computer graphic page shown by the third computer, receiving a request from the third computer to copy the graphic element, and providing the graphic element to the third user together with a further identifier, so that the graphic element appears in a display of a third computer graphic page assigned to the third user and, responsive to the identifier, notification is received by a server when the element is displayed
Preferably, receiving the request includes receiving identification information regarding the user making the request, and the method further includes storing the identification information regarding the users in a hierarchical database, indicative of an order of copying the graphic element by the users Preferably, storing the identification information includes providing the information to the first user in a hierarchical display format, and the method includes distributing a message to the users in the database using the graphic element. In a preferred embodiment, the method includes providing an incentive of value to one or more of the users in the database responsive to the graphic element appearing in the computer graphic page of another user below them in the order of copying the graphic element
Preferably, the method includes providing a report to the first user with respect to interaction of the users with the graphic element Further preferably, providing the report includes providing Uniform Resource Locators (URLs) of the computer graphic pages of the users on which the element is displayed Additionally or alternatively, providing the report includes reporting how many times the graphic element was displayed on the computer graphic pages Further additionally or alternatively, providing the report comprises reporting how many times viewers of the computer graphic pages selected an item in the graphic element using a pointing device
In another preferred embodiment, the method includes sending a message to the first computer responsive to the notification that is received when the element is displayed There is further provided, in accordance with a preferred embodiment of the present invention, a method for tracking user response to a computer graphic element assigned to a first user of a first computer and distributed for display via a network, including receiving a communication from a second computer, operated by a second user, requesting transmission of code representing the graphic element to the second computer, conveying the code to the second computer, so that the graphic element appears in a display of a computer graphic page shown by the second computer, and sending a message to the first computer with notification of the communication from the second computer, so that the first user is made aware of the communication while the graphic element appears in the display shown by the second computer
Preferably, sending the message to the first computer includes conveying to the first computer identification information regarding the second computer user
Further preferably, conveying the code includes providing a copy of the graphic element to the second computer, so that the graphic element appears in a display of a second computer graphic page, and sending the message to the first computer includes notifying the first user that a copy has been made Most preferably, the method includes maintaining a database of users who have received copies of the graphic element for display on respective computer graphic pages, wherein sending the message to the first computer includes notifying the first user as to the identity of the user in the database on whose computer graphic page the graphic element is displayed
Preferably, the method includes recording the messages, so as to track the number of times the graphic element has appeared in displays shown by other computers
In a preferred embodiment, the method includes receiving a response to the message from the first user and conveying the response to the second user by means of the graphic element
Preferably, conveying the code includes conveying code from a server on which the code representing the graphic element is stored, responsive to a tag including a text string embedded in a textual description of the computer graphic page, the string indicating a location on a server at which the code is stored, wherein the tag includes a HTML script tag. Preferably, the server on which the code is stored is substantially independent of another server that provides the textual description of the computer graphic page, wherein both of the servers are coupled to communicate with the first and second computers via the Internet Preferably, the computer graphic page includes a Web page, which is viewed using a browser program running on the second computer
There is further provided, in accordance with a preferred embodiment of the present invention, a method for distributing via a network copies of a computer graphic element, appearing on a first computer graphic page generated by a first computer user, including conveying computer-readable code representing the graphic element to a second computer, operated by a second user, so that the graphic element appears in a display of the first computer graphic page shown by the second computer, receiving a request from the second computer to copy the graphic element, and providing the graphic element to the second user so that the element is saved in a collection of graphic elements maintained on the second computer, for subsequent display on the second computer upon selection of the element by the second user
Preferably, the method includes receiving a change to the graphic element from the first user, and sending a notification of the change to the second user Further preferably, the method includes displaying an icon corresponding to the graphic element in a window associated with the collection on the second computer, wherein sending the notification includes displaying the icon so as to indicate to the second user that the change has occurred
Additionally or alternatively, the method includes displaying an icon corresponding to the graphic element in a window associated with the collection on the second computer, wherein conveying the computer-readable code includes conveying the code upon selection of the icon by the second user Preferably, conveying the code includes streaming code representing audiovisual media from a server to the second computer when the graphic element is displayed thereon, wherein the code representing the audiovisual media is not stored on the second computer There is moreover provided, in accordance with a preferred embodiment of the present invention, a method for distributing via a network copies of a computer graphic element generated by a first computer user, including conveying mark-up language code representing a framework of the graphic element to a second computer, operated by a second user, causing the framework to appear in a display of a computer graphic page shown by the second computer, streaming media code representing audiovisual media to the second computer, causing the second computer to display the media in the framework substantially without storing the media code on the second computer, and enabling the second user to copy the graphic element for subsequent display such that the audiovisual media can be displayed substantially only in the framework
Preferably, the framework of the graphic element includes an identification of the first user Most preferably, enabling the second user to copy the graphic element includes enabling a third user to receive the graphic element from the second user, wherein the mark-up language code and the streaming media code are conveyed to a third computer, operated by the third user, such that the audiovisual media can be displayed by the third computer substantially only in the framework with the identification of the first user
There is also provided, in accordance with a preferred embodiment of the present invention, a component server, for distributing copies of a computer graphic element via a network, including a memory, in which code representing the graphic element is stored at a storage location, and a processor, which conveys the code to a second computer, operated by a second user, so that the graphic element appears in a display of a first computer graphic page shown by the second computer, and which, responsive to a request from the second computer to copy the graphic element, provides the graphic element to the second user together with an identifier, so that the graphic element appears in a display of a second computer graphic page assigned to the second user and, responsive to the identifier, notification is received when the element is displayed
Preferably, the server is substantially independent of another server that provides code to drive the display of the first computer graphic page, wherein both of the servers are coupled to communicate with the second computer via the Internet Further preferably, the first and second computer graphic pages include Web pages, which are viewed using a browser program running on one of the computers
There is moreover provided, in accordance with a preferred embodiment of the present invention, a back-end server, for tracking user response to a computer graphic element assigned to a first user of a first computer, wherein the element is represented by code, which is conveyed via a network for display on a computer graphic page shown by a second computer responsive to a communication therefrom, the server including a processor, which responsive to the communication from the second computer, sends a message to the first computer, so that the first user is made aware of the communication while the graphic element appears in the display shown by the second computer Preferably, the message includes identification information regarding the user of the second computer
Further preferably, the server includes a memory, in which the processor maintains a database of users who have requested and received copies of the graphic element for display on respective computer graphic pages, wherein the processor records in the database the number of times the graphic element has appeared in displays shown by other computers
Preferably, the server is coupled to communicate with the first and second computers via the Internet, wherein the computer graphic page includes a Web page, which is viewed using a browser program running on the second computer
There is furthermore provided, in accordance with a preferred embodiment of the present invention, a component server for distributing via a network copies of a computer graphic element, including a memory, in which computer-readable code representing the graphic element is stored at a storage location, and a processor, which conveys the code to a second computer, operated by a second user, so that the graphic element appears in a display of the first computer graphic page shown by the second computer, and which, responsive to a request from the second computer to copy the graphic element, provides the graphic element to the second user so that the element is saved in a collection of graphic elements maintained on the second computer, for subsequent display on the second computer upon selection of the element by the second user There is also provided, in accordance with a preferred embodiment of the present invention, a server for distributing via a network copies of a computer graphic element generated by a first computer user, including a memory, in which mark-up language code representing a framework of the graphic element is stored, and a processor, which conveys the mark-up language code to a second computer, operated by a second user, causing the framework to appear in a display of a computer graphic page shown by the second computer, and which causes media code representing audiovisual media to be streamed to the second computer, so that the second computer displays the media in the framework substantially without storing the media code on the second computer, wherein the second user is enabled to copy the graphic element for subsequent display such that the audiovisual media can be displayed substantially only in the framework. There is additionally provided, in accordance with a preferred embodiment of the present invention, a computer software product, including computer-readable instructions in an executable file, which is run by a network server for distributing via a network copies of a computer graphic element assigned to a first computer user, wherein the instructions cause the server to convey computer-readable code representing the graphic element to a second computer, operated by a second user, so that the graphic element appears in a display of a first computer graphic page shown by the second computer, and wherein when the server receives a request from the second computer to copy the graphic element, the instructions cause the server to provide the graphic element to the second user together with an identifier, so that the graphic element appears in a display of a second computer graphic page assigned to the second user and, responsive to the identifier, notification is received when the element is displayed.
There is also provided, in accordance with a preferred embodiment of the present invention, a computer software product, including computer-readable instructions in an executable file, which is run by a network server for tracking user response to a computer graphic element assigned to a first user of a first computer and distributed for display via a network, such that code representing the graphic element is conveyed to a second computer, operated by a second user, responsive to a communication therefrom, wherein the instructions cause the server to send a message to the first computer with notification of the communication from the second computer, so that the first computer user is made aware of the communication while the graphic element appears in a display shown by the second computer.
In a preferred embodiment, an additional computer software product includes further computer-readable instructions in an executable file, which is run by the first computer as a client of the above-mentioned server, wherein the further instructions cause the computer to respond to the message from the server by displaying information to the first user regarding the communication from the second user. Preferably, responsive to the further instructions, the first computer receives a response from the first user and conveys the response over the network to the second user
There is further provided, in accordance with a preferred embodiment of the present invention, a computer software product, including computer-readable instructions in an executable file, which is run by a network server for distributing via a network copies of a computer graphic element assigned to a first computer user, which instructions cause the server to convey computer-readable code representing the graphic element to a second computer, operated by a second user, so that the graphic element appears in a display of the first computer graphic page shown by the second computer, and upon receiving a request from the second computer to copy the graphic element, to provide the graphic element to the second user so that the element is saved in a collection of graphic elements maintained on the second computer, for subsequent display on the second computer upon selection of the element by the second user
There is moreover provided, in accordance with a preferred embodiment of the present invention, a computer software product, including computer-readable instructions in an executable file, which is run by a network server for distributing via a network copies of a computer graphic element assigned to a first computer user, which instructions cause the server to convey mark-up language code representing a framework of the graphic element to a second computer, operated by a second user, causing the framework to appear in a display of a computer graphic page shown by the second computer, and further to stream media code representing audiovisual media to the second computer, causing the second computer to display the media in the framework substantially without storing the media code on the second computer, and to enable the second user to copy the graphic element for subsequent display such that the audiovisual media can be displayed substantially only in the framework The present invention will be more fully understood from the following detailed description of the preferred embodiments thereof, taken together with the drawings in which BRIEF DESCRIPTION OF THE DRAWINGS Fig 1 is a schematic, pictorial illustration showing computers coupled to the Internet for the purpose of distribution and viewing of a Web page, including a self-propagating Web page component, in accordance with a preferred embodiment of the present invention,
Fig 2 is a flow chart that schematically illustrates a method for creating the Web page component of Fig 1, in accordance with a preferred embodiment of the present invention, Fig 3 is a flow chart that schematically illustrates a method for posting the Web page component of Fig 1 on a Web page, in accordance with a preferred embodiment of the present invention,
Fig 4 is a flow chart that schematically illustrates a method for copying the Web page component of Fig 1, in accordance with a preferred embodiment of the present invention,
Fig 5 is a block diagram that schematically illustrates a database of computer users who have copied a self-propagating Web page component, in accordance with a preferred embodiment of the present invention,
Fig 6 is a schematic illustration of a computer data display presenting information relating to self-propagating Web page components, in accordance with a preferred embodiment of the present invention,
Fig 7 is a flow chart that schematically illustrates the operation of a client program running on a computer in conjunction with the display of Fig 6, in accordance with a preferred embodiment of the present invention, and Fig 8 is a schematic reproduction of a computer display illustrating an active desktop to which Web page components have been saved, in accordance with a preferred embodiment of the present invention
DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS
Fig 1 is a schematic illustration of a computer 20, which displays a Web page 42 including a self-propagating Web page component 44, in accordance with a preferred embodiment of the present invention Computer 20 comprises a processor 22, keyboard 24, pointing device 26 and monitor 28, as are known in the art A browser program running on processor 22, such as Microsoft Internet Explorer or Netscape Navigator, for example, generates a browser window 40 on monitor 28 The content of the browser window, including page 42 and component 44, is received over a network, preferably over the Internet 30, from appropriate servers 32 and 34, whose operation is described in detail hereinbelow Other computers 36, 37, 38, etc , are also connected to Internet 30 and may generally be used, like computer 20, both to create and to view Web page content Although preferred embodiments are described hereinbelow mainly with reference to full-function client computers, such as computer 20, component 44 may also be adapted for distribution to devices with less sophisticated graphic and audiovisual capabilities, such as palmtop computers and mobile telephones Computer 38 illustrates such a device For the sake of the description that follows, it will be assumed that page 42 and component 44 were created by a user of computer 36 named Joe (who is not shown in the figures) In the present example, component 44 is an on-line photo album, in which Joe has posted pictures of his dogs for display on his Web page Typically, Web page 42 is hosted by server 32, which enables Joe to prepare the page by adding personal details to a ready-made HTML page description, and stores the page at a location in the server's memory identified by a corresponding URL Web page hosting services of this kind are offered by various providers, for example, by GeoCities, as noted hereinabove A user of computer 20 can view Joe's home page by inputting the appropriate URL at a URL line in browser window 40, or by clicking on a suitable hyperlink, which invokes the URL, as is known in the art
Software code for component 44, however, is not stored on Web page host server 32, but rather on a Web page component server 34 Server 34 is associated with a Web site, which has been accessed by Joe via Internet 30, using computer 36, for example, to create the component, as described further hereinbelow A HTML script tag, containing a URL referring to the location on server 34 of stored software code describing component 44, is embedded in the HTML description of page 42 When the browser running on computer 20 encounters this tag, it sends a request to server 34 to convey the appropriate code The browser then displays the component at a location on page 42 that Joe has selected
Fig 2 is a flow chart that schematically illustrates a method used by Joe in preparing Web page component 44 for display on page 42, using the Web site associated with server 34, in accordance with a preferred embodiment of the present invention Preferably, component 44 includes animation and other multimedia effects, which are created as described in the above-mentioned U S Patent Application no 09/289,689. The component is preferably built up in the form of a template, typically comprising a basic animation sequence, preferably defined using Java language and/or JavaScript code The template has placeholders at which the user (in this case, Joe) can insert personalized content, such as the images and names of his dogs Placeholders, not necessarily specified in advance in a template, can also refer to rich media, such as audiovisual data, or to data to be retrieved from a database The rich media or database may be maintained on a server separate from component host 34, and are preferably streamed to a client, such as computer 20, for example, when the component is viewed on the computer The design and use of templates for creating Web page components is described further in the above-mentioned U.S Patent Application 09/575,636. Templates of this sort are available for use, for example, at a Web site operated by Gizmoz, Inc. (www.gizmoz.com). Visitors to the Gizmoz site can access templates for components (referred to in the site as "Gizmoz") such as on-line photo albums, personal "identification cards," greeting cards and hyperlink buttons, and can also access ready-made animated and multimedia components for insertion in their own Web pages Other possible component types will be apparent to those skilled in the art
At a first step 51 of the method shown in Fig 2, the Web site of server 34 displays a list of component categories that the user may select for inclusion in the Web page. According to the selected category, the user is provided with a list of titles of basic animation sequences or other templates among which the user can select a component at a step 52. Each of the animation sequences is generated by a respective script, preferably written in the JavaScript language, which typically refers to an executable Java program, stored on server 34 The user may preview any of the animation sequences on his or her computer display in order to select an animation sequence that will form a basis of the Web page component to be created for the user.
At a step 54, the user optionally changes certain attributes of the selected component, such as colors and choice of images Preferably, the user enters data, such as text, hypertext links, and pictures, to the component at assigned locations for receiving the data Alternatively or additionally, the user may manipulate the animation sequence, for example, by removing or repeating one or more frames or scenes of the sequence In the example shown in Fig 1 , Joe has inserted pictures of four of his dogs, which are viewed in any desired order by the user of computer 20 by selecting an appropriate tab on a control bar 46 of component 44. After the user has finished editing the selected component, he indicates to server 34 that he wishes to "take away" the component for posting on a Web page, at a step 56 Server 34 then provides the user with the appropriate HTML tag for inclusion in the HTML description of the Web page, so that the user can incorporate the component in the page, at a step 58 Component 44 will then appear on page 42, as shown in Fig 1 Preferably, server 34 prepares and stores the component in the form of a pure Java applet, so that client computers 20, 37 and 38 need only a suitable Java Virtual Machine (JNM) to view component 44 No additional plug-ins are required Optionally, at step 56, the user (Joe) specifies that the component is also to be viewed on handheld devices, such as device 38, in which case the server prepares and stores a "downgraded" version of the component that is suited to the more limited graphic capabilities of device 38 In this case, when device 38 requests component 44 from server 34, the server will first ascertain the capabilities of the device, and will then send the appropriate version of the component
Fig 3 is a flow chart that schematically illustrates details of the process of step 56, wherein the edited component is taken for posting on Web page 42, in accordance with a preferred embodiment of the present invention After completion of any desired editing operations, the user submits to component server 34 a request to receive component 44 for display on a Web page Preferably, the user submits the request by clicking on an appropriate control icon displayed by the server Web site The server then prompts the user to input certain identifying information, particularly including the user's electronic mail address In response, the server stores details of the (edited) component at a location in the server's memory, along with the user's identifying information, and assigns a tag to the user to be embedded in the HTML code of the user's Web page
The tag for inserting into the Web page is preferably a script tag, having the following general form
<script src='http //gizmoz zapa com/servlet/ mediaRedirect?usr=j oe&cid=294&ucMD3 &var=var 1 & typ e=j s&f=wrapp er j s&taker=j o e'x/script>
The argument of the "src" parameter in this tag is a URL on the server, which invokes a program called "mediaRedirect " The program refers to parameters in the tag, including "usr" (the user who created the gizmo) and "taker" (the user on whose Web page the gizmo is now appearing) The "usr" parameter is used by the program to identify the URL of the gizmo itself, for example, http //gizmoz zapa com/ joe/albuml/gizmo htm
Since the component is typically based on a template, it is generally not necessary for the server to store a complete description of the component for each user who selects it Rather, the server stores a record of the images, text and other specific data input by the user, corresponding to the predefined placeholders in the template The record is preferably stored in the form of an XML file, as is known in the art An example of such a file is shown in the above-mentioned patent application no 09/289,689 The basic code corresponding to the template itself is stored separately is and accessed along with the specific component record whenever the component is requested for viewing
Server 34 sends the tag to the user, preferably in an electronic mail message, so that the user can copy the tag into the HTML description of Web page 42, which is stored on Web page host server 32 Alternatively, the tag may be presented in a pop-up window on the Web site, from which it can be copied to the Web page using cut and paste operations The user (again, Joe) copies the code as instructed, so that when the user of computer 20 views Joe's home page 42, component 44 is called from server 34 and appears on the page as Joe has designed it At any desired later time, Joe can return to the Web site of server 34 and make changes to his component stored there, adding a picture of his new dog, for example The URL for the component and the location of the component on page 42 will remain the same
Fig 4 is a flow chart illustrating a procedure carried out by server 34 when another user, say the user of computer 20, asks to copy component 44, in accordance with a preferred embodiment of the present invention For convenience, we shall refer to this user as Daphne, and we shall assume that she is a dog fancier who would like to display Joe's dogs on her Web page, as well To submit a request to copy the component, Daphne uses her cursor 50 to click on a copy control icon marked by a legend 48, as shown in Fig 1 Alternatively, Daphne may choose to "collect" the component on her own computer, as described further hereinbelow, using a collect control icon with a legend 49 Further alternatively, although in this example the copy and collect functions of component 44 and their respective controls are separate, a single control may be used either to invoke both functions, or to enable only copying, or only collecting
Although in the present example, for the sake of simplicity, legend 48 simply says "copy me," the legend or other areas of component 44 can also be used for advertising purposes For example, legend 48 might indicate that the copy is provided as a service of Gizmoz, or of another sponsor, such as a dog food company Optionally, the component includes a hyperlink, that can be selected by a viewer of the component to "click through" to the sponsor's site
When Daphne clicks on the copy control, component 44 generates a message to server 34 indicating that a copy or collect request has been made and giving the tag of the component Server 34 thus knows that Daphne wishes to receive Joe's component The server returns a message to computer 20, which is displayed in browser window 40, prompting Daphne to provide identifying information of the same sort as was earlier provided by Joe, particularly including Daphne's electronic mail address In response to the information, the server generates a new HTML tag, and sends it to Daphne In the case of a copy request, with the server sends instructions along with the tag on how to insert the HTML tag into her Web page, as described above with reference to Joe The server notes that Daphne has copied the component from Joe's Web page Daphne can now post component 44 on her Web page, as well Subsequent users, viewing Daphne's Web page, will see "Joe's dogs" there and, if they wish, will be able to copy component 44 with the dogs to their own Web pages, using substantially the same procedure that Daphne used When Daphne asks to collect the component, the procedure followed by server 34 is similar to that described above In this case, the HTML tag corresponding to the component is saved by a "component collector" program running on computer 20 Preferably, server 34 queries computer 20 when it receives the collect request, in order to determine whether computer 20 already has the collector in place If not, the collector program is downloaded to and installed on computer 20 Further aspects of the collector program are described hereinbelow with reference to Fig 8 Alternatively or additionally, the component may be saved on Daphne's "active desktop " The active desktop is a well-known feature of Microsoft Internet Explorer™ (version 4 0 and above) that enables HTML tags to be incorporated in the Windows™ desktop screen In addition to these applications of component 44, Joe, Daphne and other users may manipulate, send and save the component in substantially any other way that is possible using mark-up language tags For example, the tag representing the component may be included in an electronic mail message In this case, if the recipient of the message uses a mail program with appropriate browser capabilities, the component will be displayed when the recipient opens the mail Other uses of such components will thus be apparent to those skilled in the art The HTML tag sent to Daphne by server 34 differs from that sent to Joe, even though both of the URLs point to the same data stored on the server The tag preferably identifies Joe as the user (usr) who created the gizmo and Daphne as the user (taker) on whose Web page the gizmo is now to appear, for example
<script src='http //gizmoz zapa com/servlet/ mediaRedirect'*)usr=joe&cid=294&ucf=ID3&var=varl&type= j s&f=wrapper j s&taker=daphne'x/script>
Joe, as creator of the component, is entitled to make changes in the data, as described above, but typically Daphne is not so entitled Thus, whenever Joe changes the pictures of his dogs, they will change, as well, on Daphne's Web page and on the pages of the subsequent users who have copied component 44 either from Joe or Daphne Preferably, users such as Daphne are informed that Joe has changed the component, and are given the options of accepting or rejecting the change, or of removing the component from their respective Web pages or collections The subsequent users receive their own unique HTML tags, as well, like Daphne's, so that whenever the server receives a request for the component, it is able to identify on which user's Web page the component is to be displayed As described further hereinbelow, server 34 creates a database of all of the users who have taken a component, along with the identifying information that they have submitted
The ability of the creator of the component to make changes in the content of the component, while limiting the ability of recipients of the component to make changes in their own copies, is valuable in protecting and advancing the rights and interests of the creator, particularly when the creator is a business Typically, the component comprises rich media content, such as audiovisual data, which is streamed by server 34 to computer 20 when requested by the computer Only the HTML tag is stored on computer 20, and not the content itself Preferably, component 44 comprises a framework that identifies the "owner" of the component, and the content is displayed only in this framework Daphne and subsequent users can thus view and distribute the component at will, giving the owner of the component wide exposure of the content, but they cannot use or manipulate the content outside the framework Thus, the first user's intellectual property rights in the content are asserted and are protected against unintended abuse by innocent Web users Furthermore, the owner of the component can update the content, as well as the framework, in order to maintain the interest of viewers and promote products, services and ideas
Fig 5 is a block diagram that schematically illustrates a database 70 of users who have received component 44 for display on their Web pages, according to a preferred embodiment of the present invention The database uses the unique HTML tag issued to each user in order to identify, with respect to each user, which other users have copied the component from him or her The database thus has a hierarchical or pyramidal form as shown in the figure An ultimate record 72 in the hierarchy represents the "owner" of the component concerned, typically the user (or business) who created the particular component, in this case Joe In a penultimate tier of the hierarchy are records 78 of users, such as Daphne, who have copies component 44 from Joe In the tiers below are records 80, 82, etc , of third- and fourth-generation users, and so forth Each record preferably includes all URLs 74 on which the component taken by that specific user is running and other user details, particularly an e-mail address 76
All of this information can be made available by server 34 to Joe or to Joe's sponsor (such as the dog food company) Database 70 thus represents a sort of private network, in this case a network of dog fanciers The network has the nature of being self-propagating, and database 70 will continue to grow as long as Joe provides attractive content in his Web page component Joe or his sponsor can feed targeted information to this network, either by posting the information in a section of component 44 or, alternatively or additionally, by communicating with the users via electronic mail In a commercial context, these methods of network building and information distribution exemplify what is known as "viral marketing " Preferably, for the purposes of managing such a "private network," Joe can view the contents of database 70 using a client software program running on Joe's computer 36, which is fed with information by server 34
A further feature of such viral marketing and tracking of distribution of component 44 is that incentives can be offered to the users for posting the component on their Web pages For example, if the component on a given user's Web page includes a sponsor's advertisement, and the advertisement leads to a purchase of one of the sponsor's products, the user may receive bonus points from the sponsor, which may be traded for goods Moreover, other users above the given user in the hierarchy of database 70 may also be rewarded Thus, referring to Fig 5, if a customer made a purchase of dog food as a result of seeing component 44 on Talia' s Web page, then Talia, Daphne and possibly Joe all receive bonus points Preferably, component 44 includes a link to an electronic commerce Web site from which the dog food purchase is made, such that when the customer uses the link, the identity of the Web page owner (in this case, Talia) is automatically reported to the sponsor
Fig 6 is a schematic illustration of a computer data display 90, presenting information regarding viewing and propagation of self-propagating Web page components, in accordance with a preferred embodiment of the present invention Display 90 is generated by the client program running on computer 36, which presents and updates the information in real time, based on messages sent by server 34 whenever another user views one of Joe's components Optionally, display 90 is viewed using a standard Web browser, and the client program is written in a suitable language for this purpose, such as Java
At the left side of display 90, a list of these components is shown, each component represented by a corresponding link, such as link 96 (to Joe's Dogs), link 100 (My ID) or link 102 (Family Trip) Preferably, the links are identified in the display by the corresponding URLs Preferably, each component is also represented by an icon 94 Beneath link 96, a hierarchical list of users 98 who have copied the corresponding component 44 can be viewed Each element in the hierarchy, beginning with link 96 assigned to the "owner" of the component, has a "+" or "-" sign 92, to indicate whether or not there are further elements hidden below it in the hierarchy This convention is well known in the art of displaying computer directory and file hierarchies, for example By clicking on the "+" next to any listed item, the user of display 90 can see a list of the elements in the next level down of the hierarchy Clicking on the "-" then hides the lower hierarchy levels again The list of users 98 in Fig 6 corresponds in this manner to a portion of the pyramidal structure of database 70, shown in Fig 5.
At the right side of Fig 6, there is a table that lists, for each displayed element in the hierarchy, a number of "views" 104 and a number of "forwards" 106 that the corresponding element has generated The number of views is the number of times that the component has been downloaded by server 34 to other computers, such as computer 37 or 38, for display on the Web page of the user listed at the left side of the display The number of forwards is the number of times the component has been requested for copying from server 34 Thus, the top line in the table shows that component 44 has been viewed 1234 times on Joe's Web page 42, and copied from the page 251 times The second line in the table shows that the component has been viewed 672 times on Daphne's Web page and copied from there 114 times Preferably, when the levels below a given user in the table are hidden (i e , the "-" appears by the user's name), the numbers of views and forwards listed next to the name reflect the cumulative total of that user and his/her descendants in the hierarchy
In this manner, the user (Joe) is able to view his entire hierarchy of Web component recipients and to determine which of them have been most effective in passing his message on to other users This feature gives an advertiser extremely precise and focused data regarding the effectiveness of a viral marketing campaign Other information provided in display 90 (or in another report) might include the number of times viewers have clicked through from a given instance of the component to the sponsor's site, or the number and types of viewer interactions with the component For example, Joe or the sponsor might wish to know the extent to which viewers interact with control tabs 46 or other features of component 44, as a measure of the level of viewer interest in the content of the component
A message box 108 preferably gives the user of display 90 further real-time information when other users are viewing the Web page components provided by server 34 (It is noted, however, that this particular feature requires a special-purpose client program and is generally not supported by standard Web browsers.) An alert flasher 110 and/or tone is actuated, and a message appears in box 108 to indicate to the user (Joe) that another user (in this case Howard) has identified himself in the process of copying component 44 Alternatively, the flasher may indicate that another user is viewing the component, although in this case the user's identity will generally be unknown, except to the extent that the user can be identified by the IP address that the user's computer furnishes to server 34 in order to receive the component for viewing Optionally, if Joe has included a "chat box" in his component, as is known in the art, Joe can use the box to communicate in real time with the user who is copying or viewing the component
Fig 7 illustrates a process by which server 34 responds to such a "copy," in accordance with a preferred embodiment of the present invention The process begins when the server receives a request to copy Web component 44, identified as a "copy request " The server immediately increments the corresponding copy count 104, and notifies the client associated with display 90 that a copy of the component is in progress or about to take place Flasher 110 (and/or the associated tone) is actuated, and an appropriate message is displayed in box 108
At this point, the user of the client has the option of responding to the hit by modifying the component ad hoc For example, Joe may use a chat box to insert into component 44 a message to Howard, who has connected to copy the component Alternatively, Joe may send Howard an e-mail message, assuming Howard has entered his e-mail address as a precondition for copying the component The client thus enables the owner of a Web page or component to interact in real time with visitors to the page or with viewers of the component, in a way that is not possible using software tools known in the art
Fig 8 is a schematic representation of a computer display 120, shown on monitor 28, for example, in accordance with a preferred embodiment of the present invention Display 120 preferably comprises an active desktop 122, as described above, which is used by a user of computer 20, such as Daphne, to collect and display Web components Methods for viewing and collecting these components were described above with reference particularly to Fig 4, and further aspects of such component collecting are described here When the user of computer 20 chooses to save a component to active desktop 122, a live link is created from the desktop to component server 34 by embedding an appropriate HTML tag in the desktop The live link is preferably represented by a thumbnail image on the desktop, such as images 124, 126 and 128 The HTML tag in each case contains a URL of the corresponding thumbnail image, which is downloaded from server 34 The tag also includes a "HREF" link to another URL on the server, so that when the user clicks on the corresponding thumbnail image, the entire component is downloaded from the server and is displayed on monitor 28, as described above
Fig 9 is a schematic representation of a computer display 129, shown on monitor 28, in accordance with another preferred embodiment of the present invention In this case, when the user chooses to "collect" a component, a "component collector" program running on computer 20 receives the corresponding HTML tag and saves it along with other components, as described above The collector program organizes and displays icons 132 and 134 in a window 130 belonging to the collector program The icons themselves are preferably stored on computer 20 As in the case of components saved to desktop 122, when the user clicks on one of the icons, the corresponding component is downloaded from server 34 and displayed on monitor 28 The user of computer 20 may add components to the collection and delete them at will
Components stored on server 34 are preferably updated from time to time by their respective owners. This new content may include, for example, a new song posted in MP-3 format in a music component associated with icon 132, or sports scores posted in a component provided by a sports league (In the case of sports scores or other tabular data, the data need not be updated manually in the component stored on server 34 Rather, the data may be read automatically from a database maintained on a separate database server, using an appropriate placeholder in the component to indicate the location of the data to be provided ) Component owners, particularly businesses, typically wish to encourage users to interact with their components, particularly when they have added new content to their components By the same token, computer users will generally be interested in seeing new content that has been added to components in their collections, while avoiding reviewing content that they have already seen To meet these needs, server 34 maintains a listing indicating, for each component, the time of its most recent update The component collector program on computer 20 queries the component server from time to time, in order to find out which of the components in the user's collection have had changes in their content since the last time the user viewed them When the program determines that such a change has occurred in one of the components, the collector program alters an aspect of the corresponding icon, for example, changing the background color of icon 134, or adding a flashing light alongside it The user can then simply click on the icon in order to find out what is new While Figs. 8 and 9 are presented as separate embodiments, they are not mutually exclusive, and it is possible to save some components to the active desktop and others to a collector program on the same computer Usually, however, the data sent by server 34 to client computer 20 identifies which of the methods is preferable for that specific client Alternatively, the user can be prompted and decide which method he or she wishes to use for the collection Although preferred embodiments are described hereinabove with specific reference to the Internet and to the distribution of Web page content and display of Web pages, those skilled in the art will appreciate that the principles of the present invention may likewise be extended to networks of other types, such as intranets, WANs and LANs Similarly, graphic display pages and components for such pages may be implemented and distributed in accordance with the principles of the present invention not only using HTML, Java and other Web-related standards, but also using any other suitable network-oriented standards and programming languages Software for performing the functions described hereinabove can be sold and/or distributed on media, such as diskettes or CD-ROM, as well as in a medialess format via a network, for example It will be appreciated generally that the preferred embodiments described above are cited by way of example, and the full scope of the invention is limited only by the claims

Claims

1 A method for distributing via a network copies of a computer graphic element, appearing on a first computer graphic page generated by a first computer user, comprising conveying computer-readable code representing the graphic element to a second computer, operated by a second user, so that the graphic element appears in a display of the first computer graphic page shown by the second computer, receiving a request from the second computer to copy the graphic element; and providing the graphic element to the second user together with an identifier, so that the graphic element appears in a display of a second computer graphic page assigned to the second user and, responsive to the identifier, notification is received when the element is displayed
2 A method according to claim 1 , wherein conveying the code comprises conveying code from a component server on which the code representing the graphic element is stored, which is substantially independent of a page server that provides code to drive the display of the first computer graphic page 3 A method according to claim 2, wherein both of the servers are coupled to communicate with the second computer via the Internet.
4. A method according to claim 1, wherein the first computer graphic page comprise a Web page, which is viewed using a browser program running on the second computer
5 A method according to claim 4, wherein the second computer graphic page comprises a Web page generated by the second user, to which the second user copies the graphic element
6 A method according to claim 1, wherein the first computer graphic page comprises an electronic mail message sent by the first user
7 A method according to claim 1 , wherein the second computer graphic page comprises an active desktop display on the second computer, to which the second user copies the graphic element
8 A method according to claim 1, wherein providing the graphic element to the second user comprises saving the element in a collection of graphic elements on the second computer
9 A method according to claim 8, and comprising receiving a change to the graphic element from the first user, and sending a notification of the change to the second user 10 A method according to claim 9, and comprising displaying an icon corresponding to the graphic element in a window associated with the collection on the second computer, wherein sending the notification comprises altering an aspect of the icon so as to indicate to the second user that the change has occurred 1 1 A method according to claim 1, wherein the graphic element appearing on the first computer graphic page is provided by a server responsive to a first tag comprising a text string embedded in a textual description of the first computer graphic page, the tag indicating a location on the server at which the code representing the graphic element is stored, and wherein providing the graphic element to the second user comprises issuing to the second computer a second tag to be embedded in a textual description of the second computer graphic page, the tag comprising the identifier and indicating the location on the server at which the code representing the graphic object is stored
12 A method according to claim 11, wherein issuing the first and second tags comprises issuing Uniform Resource Locator (URL) codes
13 A method according to claim 11, wherein the textual descriptions of the first and second computer graphic pages comprise descriptions in a mark-up language, , and wherein issuing the first and second tags comprises issuing script tags to be incorporated in the textual descriptions.
14 A method according to claim 13, wherein the mark-up language comprises Hypertext Mark-up Language (HTML) 15 A method according to claim 1 1 , wherein issuing the second tag comprises sending the tag to the second user via electronic mail
16 A method according to claim 1 1 , wherein issuing the second tag comprises displaying the tag in a window on the display of the second computer, from which the second user copies the tag 17 A method according to claim 1, wherein conveying the code comprises streaming code representing audiovisual media from a server to the second computer when the graphic element is displayed thereon
18 A method according to claim 17, wherein conveying the code to the second computer comprises receiving an indication of an audiovisual display capability of the second computer and adjusting the code conveyed to the second computer responsive to the capability 19 A method according to claim 18, wherein the second computer comprises a handheld device
20 A method according to claim 17, wherein the code representing the audiovisual media is not stored on the second computer 21 A method according to claim 17, wherein conveying the code comprises conveying mark-up language code representing a framework of the graphic element to the second computer, such that the audiovisual media can be displayed on the second computer substantially only within the framework
22 A method according to claim 1, wherein conveying the code to the second computer comprises retrieving data from a database for inclusion in the graphic element.
23 A method according to claim 22, wherein conveying the code to the second computer comprises conveying mark-up language code representing a framework of the graphic element to the second computer from a component server, and wherein retrieving the data from the database comprises retrieving the data from a database server, which is substantially independent of the component server
24 A method according to claim 1, wherein receiving the request from the second computer comprises receiving an indication that the second user has invoked a copy option associated with the graphic element as it appears in the display of the first computer graphic page 25 A method according to claim 24, wherein receiving the indication comprises receiving an input responsive to selection of a copy icon on the graphic element by the second user
26 A method according to claim 1 , and comprising receiving from the first user a change to the computer graphic element, wherein as a result of the change, the display of the element on both the first and second computer graphic pages is changed 27 A method according to claim 1, and comprising conveying the code to a third computer, operated by a third user, so that the graphic element appears in a display of the second computer graphic page shown by the third computer, receiving a request from the third computer to copy the graphic element, and providing the graphic element to the third user together with a further identifier, so that the graphic element appears in a display of a third computer graphic page assigned to the third user and, responsive to the identifier, notification is received by a server when the element is displayed
28 A method according to claim 27, wherein receiving the request comprises receiving identification information regarding the user making the request 29 A method according to claim 28, and comprising storing the identification information regarding the users in a hierarchical database, indicative of an order of copying the graphic element by the users
30 A method according to claim 29, wherein storing the identification information comprises providing the information to the first user in a hierarchical display format 31 A method according to claim 29, and comprising distributing a message to the users in the database using the graphic element
32 A method according to claim 29, and composing providing an incentive of value to one or more of the users in the database responsive to the graphic element appearing in the computer graphic page of another user below them in the order of copying the graphic element 33 A method according to claim 29, and comprising providing a report to the first user with respect to interaction of the users with the graphic element.
34 A method according to claim 33, wherein providing the report comprises providing Uniform Resource Locators (URLs) of the computer graphic pages of the users on which the element is displayed 35 A method according to claim 33, wherein providing the report comprises reporting how many times the graphic element was displayed on the computer graphic pages
36 A method according to claim 33, wherein providing the report comprises reporting how many times viewers of the computer graphic pages selected an item in the graphic element using a pointing device 37 A method according to claim 1, and comprising sending a message to the first computer responsive to the notification that is received when the element is displayed
38 A method for tracking user response to a computer graphic element assigned to a first user of a first computer and distributed for display via a network, comprising receiving a communication from a second computer, operated by a second user, requesting transmission of code representing the graphic element to the second computer, conveying the code to the second computer, so that the graphic element appears in a display of a computer graphic page shown by the second computer; and sending a message to the first computer with notification of the communication from the second computer, so that the first user is made aware of the communication while the graphic element appears in the display shown by the second computer
39 A method according to claim 38, wherein sending the message to the first computer comprises conveying to the first computer identification information regarding the second computer user
40 A method according to claim 38, wherein conveying the code comprises providing a copy of the graphic element to the second computer, so that the graphic element appears in a display of a second computer graphic page, and wherein sending the message to the first computer comprises notifying the first user that a copy has been made 41 A method according to claim 40, and comprising maintaining a database of users who have received copies of the graphic element for display on respective computer graphic pages.
42 A method according to claim 41, wherein sending the message to the first computer comprises notifying the first user as to the identity of the user in the database on whose computer graphic page the graphic element is displayed 43 A method according to claim 38, and comprising recording the messages, so as to track the number of times the graphic element has appeared in displays shown by other computers
44 A method according to claim 38, and comprising receiving a response to the message from the first user and conveying the response to the second user by means of the graphic element 45 A method according to claim 38, wherein conveying the code comprises conveying code from a server on which the code representing the graphic element is stored, responsive to an tag comprising a text string embedded in a textual description of the computer graphic page, the string indicating a location on a server at which the code is stored
46 A method according to claim 45, wherein the tag comprises a HTML script tag 47 A method according to claim 45, wherein the server on which the code is stored is substantially independent of another server that provides the textual description of the computer graphic page
48 A method according to claim 47, wherein both of the servers are coupled to communicate with the first and second computers via the Internet
49 A method according to claim 38, wherein the computer graphic page comprises a Web page, which is viewed using a browser program running on the second computer
50 A method for distributing via a network copies of a computer graphic element, appearing on a first computer graphic page generated by a first computer user, comprising conveying computer-readable code representing the graphic element to a second computer, operated by a second user, so that the graphic element appears in a display of the first computer graphic page shown by the second computer, receiving a request from the second computer to copy the graphic element, and providing the graphic element to the second user so that the element is saved in a collection of graphic elements maintained on the second computer, for subsequent display on the second computer upon selection of the element by the second user
51 A method according to claim 50, and comprising receiving a change to the graphic element from the first user, and sending a notification of the change to the second user
52 A method according to claim 51, and comprising displaying an icon corresponding to the graphic element in a window associated with the collection on the second computer, wherein sending the notification comprises displaying the icon so as to indicate to the second user that the change has occurred
53 A method according to claim 50, and comprising displaying an icon corresponding to the graphic element in a window associated with the collection on the second computer, wherein conveying the computer-readable code comprises conveying the code upon selection of the icon by the second user
54 A method according to claim 53, wherein conveying the code comprises streaming code representing audiovisual media from a server to the second computer when the graphic element is displayed thereon 55 A method according to claim 54, wherein the code representing the audiovisual media is not stored on the second computer
56 A method according to claim 54, wherein conveying the code comprises conveying mark-up language code representing a framework of the graphic element to the second computer, such that the audiovisual media can be displayed on the second computer substantially only within the framework
57 A method according to claim 53, wherein conveying the code comprises retrieving data from a database for inclusion in the graphic element
58 A method for distributing via a network copies of a computer graphic element generated by a first computer user, comprising conveying mark-up language code representing a framework of the graphic element to a second computer, operated by a second user, causing the framework to appear in a display of a computer graphic page shown by the second computer, streaming media code representing audiovisual media to the second computer, causing the second computer to display the media in the framework substantially without storing the media code on the second computer; and enabling the second user to copy the graphic element for subsequent display such that the audiovisual media can be displayed substantially only in the framework
59 A method according to claim 58, wherein the framework of the graphic element comprises an identification of the first user
60 A method according to claim 59, wherein enabling the second user to copy the graphic element comprises enabling a third user to receive the graphic element from the second user, wherein the mark-up language code and the streaming media code are conveyed to a third computer, operated by the third user, such that the audiovisual media can be displayed by the third computer substantially only in the framework with the identification of the first user
61 A component server, for distributing copies of a computer graphic element via a network, comprising a memory, in which code representing the graphic element is stored at a storage location, and a processor, which conveys the code to a second computer, operated by a second user, so that the graphic element appears in a display of a first computer graphic page shown by the second computer, and which, responsive to a request from the second computer to copy the graphic element, provides the graphic element to the second user together with an identifier, so that the graphic element appears in a display of a second computer graphic page assigned to the second user and, responsive to the identifier, notification is received when the element is displayed
62 A server according to claim 61, wherein the component server is substantially independent of a page server that provides code to drive the display of the first computer graphic page
63 A server according to claim 62, wherein both of the servers are coupled to communicate with the second computer via the Internet
64 A server according to claim 61, wherein the first and second computer graphic pages comprise Web pages, which are viewed using a browser program running on one of the computers
65 A server according to claim 64, wherein the second computer graphic page comprises a Web page generated by the second user, to which the second user copies the graphic element
66 A server according to claim 61, wherein the first computer graphic page comprises an electronic mail message sent by the first user.
67 A server according to claim 61 , wherein the second computer graphic page comprises an active desktop display on the second computer, to which the second user copies the graphic element
68 A server according to claim 61, wherein the second user saves the element in a collection of graphic elements on the second computer
69 A server according to claim 61, wherein the graphic element appearing on the first computer graphic page is provided by the server responsive to a tag comprising a text string embedded in a textual description of the first computer graphic page, the tag indicating the storage location of the code in the memory, and wherein the server issues to the second computer a second tag to be embedded in a textual description of the second computer graphic page, the tag comprising the identifier and indicating the storage location of the code in the memory 70 A server according to claim 69, wherein the first and second tags comprise Uniform Resource Locator (URL) codes
71 A server according to claim 61, wherein the processor sends the identifier to the second user via electronic mail. 72 A server according to claim 61, wherein the identifier appears in a window on the display of the second computer, from which the second user copies the identifier to the second computer graphic page.
73 A server according to claim 61, wherein the code conveyed to the second computer comprises streaming code representing audiovisual media, which is streamed to the second computer when the graphic element is displayed thereon
74 A server according to claim 73, wherein the processor receives an indication of an audiovisual display capability of the second computer and adjusts the code conveyed to the second computer responsive to the capability
75 A server according to claim 74, wherein the second computer comprises a handheld device.
76 A server according to claim 73, wherein the code representing the audiovisual media is not stored on the second computer.
77 A server according to claim 73, wherein the code comprises mark-up language code representing a framework of the graphic element, such that the audiovisual media can be displayed on the second computer substantially only within the framework
78. A server according to claim 61, wherein the code conveyed to the second computer comprises data retrieved from a database for inclusion in the graphic element.
79 A server according to claim 78, wherein the data are retrieved from a database server, which is substantially independent of the component server 80 A server according to claim 61, wherein responsive to receiving from the first user a change to the computer graphic element, the display of the element on both the first and second computer graphic pages is changed
81 A server according to claim 61, wherein the processor conveys the code to a third computer, operated by a third user, so that the graphic element appears in a display of the second computer graphic page shown by the third computer, and, responsive to a request from the third computer to copy the graphic element, provides the graphic element to the third user together with a further identifier, so that the graphic element appears in a display of a third computer graphic page assigned to the second user and, responsive to the further identifier, notification is received when the element is displayed
82 A server according to claim 81, wherein the memory stores the identification information regarding the users in a hierarchical database, indicative of an order of copying the graphic element by the users
83 A server according to claim 82, wherein the processor determines an incentive of value to be granted to one or more of the users in the database responsive to the graphic element appearing in the computer graphic page of another user below them in the order of copying the graphic element
84 A server according to claim 82, wherein a report is provided to the first user with respect to interaction of the users with the graphic element 85 A back-end server, for tracking user response to a computer graphic element assigned to a first user of a first computer, wherein the element is represented by code, which is conveyed via a network for display on a computer graphic page shown by a second computer responsive to a communication therefrom, the server comprising a processor, which responsive to the communication from the second computer, sends a message to the first computer, so that the first user is made aware of the communication while the graphic element appears in the display shown by the second computer
86 A server according to claim 85, wherein the message comprises identification information regarding the user of the second computer
87 A server according to claim 85, and comprising a memory, in which the processor maintains a database of users who have requested and received copies of the graphic element for display on respective computer graphic pages
88 A server according to claim 87, wherein the processor records in the database the number of times the graphic element has appeared in displays shown by other computers
89 A server according to claim 85, wherein the server is coupled to communicate with the first and second computers via the Internet 90 A server according to claim 85, wherein the computer graphic page comprises a Web page, which is viewed using a browser program running on the second computer
91 A component server for distributing via a network copies of a computer graphic element, comprising: a memory, in which computer-readable code representing the graphic element is stored at a storage location; and a processor, which conveys the code to a second computer, operated by a second user, so that the graphic element appears in a display of the first computer graphic page shown by the second computer, and which, responsive to a request from the second computer to copy the graphic element, provides the graphic element to the second user so that the element is saved in a collection of graphic elements maintained on the second computer, for subsequent display on the second computer upon selection of the element by the second user
92 A server according to claim 91 , wherein responsive to receiving a change to the graphic element from the first user, the server sends a notification of the change to the second user 93 A server according to claim 92, wherein the second computer displays an icon corresponding to the graphic element in a window associated with the collection on the second computer, and wherein an aspect of the icon is altered so as to indicate to the second user that the change has occurred.
94 A server according to claim 91, wherein the second computer displays an icon corresponding to the graphic element in a window associated with the collection on the second computer, and wherein the processor conveys the code to the second computer upon selection of the icon by the second user.
95 A server according to claim 94, wherein the code comprises streaming code representing audiovisual media, which is streamed to the second computer when the graphic element is displayed thereon
96 A server according to claim 95, wherein the code representing the audiovisual media is not stored on the second computer
97. A server according to claim 95, wherein the code comprises mark-up language code representing a framework of the graphic element, such that the audiovisual media can be displayed on the second computer substantially only within the framework
98. A server according to claim 91, wherein the code conveyed to the second computer comprises data retrieved from a database for inclusion in the graphic element
99 A server for distributing via a network copies of a computer graphic element generated by a first computer user, comprising a memory, in which mark-up language code representing a framework of the graphic element is stored, and a processor, which conveys the mark-up language code to a second computer, operated by a second user, causing the framework to appear in a display of a computer graphic page shown by the second computer, and which causes media code representing audiovisual media to be streamed to the second computer, so that the second computer displays the media in the framework substantially without storing the media code on the second computer, wherein the second user is enabled to copy the graphic element for subsequent display such that the audiovisual media can be displayed substantially only in the framework
100 A server according to claim 99, wherein the framework of the graphic element comprises an identification of the first user
101. A server according to claim 100, wherein a third user is enabled to receive the graphic element from the second user such that the mark-up language code and the streaming media code are conveyed to a third computer, operated by the third user, and such that the audiovisual media can be displayed by the third computer substantially only in the framework with the identification of the first user
102 A computer software product, comprising computer-readable instructions in an executable file, which is run by a network server for distributing via a network copies of a computer graphic element assigned to a first computer user, wherein the instructions cause the server to convey computer-readable code representing the graphic element to a second computer, operated by a second user, so that the graphic element appears in a display of a first computer graphic page shown by the second computer, and wherein when the server receives a request from the second computer to copy the graphic element, the instructions cause the server to provide the graphic element to the second user together with an identifier, so that the graphic element appears in a display of a second computer graphic page assigned to the second user and, responsive to the identifier, notification is received when the element is displayed
103 A computer software product, comprising computer-readable instructions in an executable file, which is run by a network server for tracking user response to a computer graphic element assigned to a first user of a first computer and distributed for display via a network, such that code representing the graphic element is conveyed to a second computer, operated by a second user, responsive to a communication therefrom, wherein the instructions cause the server to send a message to the first computer with notification of the communication from the second computer, so that the first computer user is made aware of the communication while the graphic element appears in a display shown by the second computer
104 A computer software product, comprising further computer-readable instructions in an executable file, which is run by the first computer as a client of the server of claim 103, wherein the further instructions cause the computer to respond to the message from the server by displaying information to the first user regarding the communication from the second user
105 A product according to claim 104, wherein responsive to the further instructions, the first computer receives a response from the first user and conveys the response over the network to the second user
106 A computer software product, comprising computer-readable instructions in an executable file, which is run by a network server for distributing via a network copies of a computer graphic element assigned to a first computer user, which instructions cause the server to convey computer-readable code representing the graphic element to a second computer, operated by a second user, so that the graphic element appears in a display of the first computer graphic page shown by the second computer, and upon receiving a request from the second computer to copy the graphic element, to provide the graphic element to the second user so that the element is saved in a collection of graphic elements maintained on the second computer, for subsequent display on the second computer upon selection of the element by the second user
107 A computer software product, comprising computer-readable instructions in an executable file, which is run by a network server for distributing via a network copies of a computer graphic element assigned to a first computer user, which instructions cause the server to convey mark-up language code representing a framework of the graphic element to a second computer, operated by a second user, causing the framework to appear in a display of a computer graphic page shown by the second computer, and further to stream media code representing audiovisual media to the second computer, causing the second computer to display the media in the framework substantially without storing the media code on the second computer, and to enable the second user to copy the graphic element for subsequent display such that the audiovisual media can be displayed substantially only in the framework.
PCT/IL2000/000595 1999-09-27 2000-09-26 Self-propagating network content distribution WO2001023976A2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU75512/00A AU7551200A (en) 1999-09-27 2000-09-26 Self-propagating network content distribution

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US40709899A 1999-09-27 1999-09-27
US09/407,098 1999-09-27

Publications (2)

Publication Number Publication Date
WO2001023976A2 true WO2001023976A2 (en) 2001-04-05
WO2001023976A3 WO2001023976A3 (en) 2001-08-16

Family

ID=23610580

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/IL2000/000595 WO2001023976A2 (en) 1999-09-27 2000-09-26 Self-propagating network content distribution

Country Status (2)

Country Link
AU (1) AU7551200A (en)
WO (1) WO2001023976A2 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8010657B2 (en) 2006-11-27 2011-08-30 Crackle, Inc. System and method for tracking the network viral spread of a digital media content item
US20120109737A1 (en) * 2010-10-28 2012-05-03 Vageesh Setty Measuring the Effects of Social Sharing on Online Content and Advertising
US20120116867A1 (en) * 2010-11-05 2012-05-10 Google Inc. Social overlays on ads
US20130151948A1 (en) * 2011-12-09 2013-06-13 Visual Bearing Limited Web-based social content aggregation and discovery facility
US8943134B2 (en) 2010-12-28 2015-01-27 Google Inc. Targeting based on social updates
US9009657B2 (en) 2008-04-20 2015-04-14 Microsoft Technology Licensing, Llc Component-oriented architecture for web mashups

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6049342A (en) * 1997-10-27 2000-04-11 International Business Machines Corporation System and method for controlling the downloading and display of an animated sequence from a network
US6182122B1 (en) * 1997-03-26 2001-01-30 International Business Machines Corporation Precaching data at an intermediate server based on historical data requests by users of the intermediate server

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6182122B1 (en) * 1997-03-26 2001-01-30 International Business Machines Corporation Precaching data at an intermediate server based on historical data requests by users of the intermediate server
US6049342A (en) * 1997-10-27 2000-04-11 International Business Machines Corporation System and method for controlling the downloading and display of an animated sequence from a network

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8010657B2 (en) 2006-11-27 2011-08-30 Crackle, Inc. System and method for tracking the network viral spread of a digital media content item
US9009657B2 (en) 2008-04-20 2015-04-14 Microsoft Technology Licensing, Llc Component-oriented architecture for web mashups
US20120109737A1 (en) * 2010-10-28 2012-05-03 Vageesh Setty Measuring the Effects of Social Sharing on Online Content and Advertising
US9324093B2 (en) * 2010-10-28 2016-04-26 Yahoo! Inc. Measuring the effects of social sharing on online content and advertising
US20120116867A1 (en) * 2010-11-05 2012-05-10 Google Inc. Social overlays on ads
US8943134B2 (en) 2010-12-28 2015-01-27 Google Inc. Targeting based on social updates
US20130151948A1 (en) * 2011-12-09 2013-06-13 Visual Bearing Limited Web-based social content aggregation and discovery facility
US10223336B2 (en) * 2011-12-09 2019-03-05 Wakelet Limited Web-based social content aggregation and discovery facility
US11250099B2 (en) 2011-12-09 2022-02-15 Wakelet Limited Web-based social content aggregation and discovery facility

Also Published As

Publication number Publication date
WO2001023976A3 (en) 2001-08-16
AU7551200A (en) 2001-04-30

Similar Documents

Publication Publication Date Title
US11798031B2 (en) Multimedia communication system and method
CA2450826C (en) Media content creating and publishing system and process
US6981224B1 (en) System and method for conditionally associating a plurality of enabled images with a predetermined image
US6973478B1 (en) Autonomous local assistant for managing business processes
JP4583406B2 (en) Interactive webbook system
US9324117B2 (en) Method and system for dynamic web display
US9978072B2 (en) Computerized system and method for creating a modified version of a digital slide show by creating and inserting a digital content item into the digital slide show
US8516046B1 (en) System and method of providing resource information in a virtual community
CA2365491A1 (en) Story workflow management system and method
US6959424B1 (en) System and method for displaying an enabled image associated with a predetermined image in an iframe of a visual display
JP2008040788A (en) Rss advertisement distribution method and rss advertisement distribution device
KR100791417B1 (en) System and method for providing moving image contents
WO2001023976A2 (en) Self-propagating network content distribution
US7028268B1 (en) Multiple destination banners
JP2006048430A (en) Advertisement distribution device, computer program and program storage medium
WO2002001370A1 (en) Time limit replacing contents display using network
MXPA00002208A (en) Automated content scheduler and displayer

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG US UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
AK Designated states

Kind code of ref document: A3

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG US UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A3

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase in:

Ref country code: JP