WO2004029780A2 - Selecting, tracking and transferring access to content of web pages - Google Patents

Selecting, tracking and transferring access to content of web pages Download PDF

Info

Publication number
WO2004029780A2
WO2004029780A2 PCT/US2003/031074 US0331074W WO2004029780A2 WO 2004029780 A2 WO2004029780 A2 WO 2004029780A2 US 0331074 W US0331074 W US 0331074W WO 2004029780 A2 WO2004029780 A2 WO 2004029780A2
Authority
WO
WIPO (PCT)
Prior art keywords
programming
computing device
user
selected content
network
Prior art date
Application number
PCT/US2003/031074
Other languages
French (fr)
Other versions
WO2004029780A3 (en
Inventor
Eric Goldstein
Matthew Babineau
Derek Krzanowski
Henri Thuma
Ralph E. Machesky
Original Assignee
Amplify, Llc
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 Amplify, Llc filed Critical Amplify, Llc
Priority to EP03755014A priority Critical patent/EP1573452A2/en
Priority to CA002500263A priority patent/CA2500263A1/en
Priority to AU2003272812A priority patent/AU2003272812A1/en
Publication of WO2004029780A2 publication Critical patent/WO2004029780A2/en
Publication of WO2004029780A3 publication Critical patent/WO2004029780A3/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9577Optimising the visualization of content, e.g. distillation of HTML documents

Definitions

  • the invention pertains in general to the World Wide Web, and more particularly to a method, system and apparatus for selecting, displaying, managing, tracking and transferring access to content accessible by computing devices on the World Wide Web and other sources.
  • Internet and the like, provide fast and convenient means for obtaining information from various sources throughout the world, and for sharing the information with others.
  • one of the forms of this information is the web page.
  • An Internet web page can contain a large amount of information and a large number of individual items, such as text, photographs, moving images and the like.
  • the present invention enables Users to quickly and conveniently focus on and display separately selected items of content of a web page, and to share those selected items with other individuals or systems over the network.
  • the World Wide Web uses a growing variety of media, styles and elements ananged in the form of web pages. These web pages contain various types of content, including text, pictures and other compelling visual formats. As a rule, web pages have a finite amount of usable space in which to place text, images, and other content. Because of this, the authors of the web pages must make compromises in regards to how much space is reserved for textual information, and how much for the other visual aspects (images, animation, video, etc). An analogy can be made to a newspaper. Each section of the paper is provided its own 'space' on the paper itself, with boundaries defining where topics, stories and pictures appear. Since a web page also follows many of these same layout restrictions, elements within a web page are typically restricted to given areas on the page.
  • Some of the methods that have been devised to overcome this limitation include launching multiple instances of a web browser, or opening a link in a new window (both launch a new full instance of the browser). This allows users to try to resize the content within each page or browser instance, and fit both on the screen together. Most browsers will resize, but the contents within the page often will not. Additionally, by opening another fully enabled browser instance, users consume more memory resources than one browser instance would consume.
  • the cunent invention also relates to the 'tracking' of online activity of web users.
  • Existing methods of tracking online activity often involve the use of a 'cookie', which is a small file written to, and then subsequently read from a user's computer. Advertising companies that serve up 'banner ads' are predominant users of these cookie files.
  • 'cookies' are created for the purpose of tracking what pages or web sites the user visits. Companies track, record and sell this information to other companies that are interested in obtaining such data. Many users and privacy advocates are speaking out against the invasive tracking method of using cookies. '
  • Another aspect of the cunent invention pertains to searching for content on the World Wide Web.
  • Many '"search engines" exist today, but users often lack the required skills to use them as efficiently as possible.
  • the user In order for a search engine to return relevant results to a query, the user must know how to format search criteria. This means the user must know what key words to query, and what combination of key words to use. Users will often not use the conect key words, causing the search results to have little relevance.
  • a web page can be comprised of many elements or topics, there may be confusion as to what element in the page to search. If the user were to search a particular web page or site for related information, the user usually gets results relevant to that page, not a specific element of that page.
  • E-Mail is one of the most popular applications used today. Email, however, is not capable of addressing all of the aforementioned concerns or issues that users encounter online.
  • the invention provides a system, method and apparatus for selecting, displaying, managing, tracking and transferring access to content accessible by computing devices, such as content in web pages, pop-up windows, players and plug- ins available on the World Wide Web, word processor documents, spreadsheets, and other like content.
  • the selected content can be in the form of plain text, or can be in the form of static or dynamic graphic images, such as pictures, movies, animations, web casts, "3-D" images, or the like.
  • the User can select several different content items, of the same type or of different types, and place all of the items in an independent browser window.
  • the content placed in the independent browser window only contains the content selected by the User, and does not contain other content which may be present in the original source of the content.
  • a User may wish to select a specific image or string of text from a web page containing several images or a lengthy text section.
  • the system allows the User to create an independent window with only the desired content item, free from other content items on the source, which permits the User to focus on the desired content item.
  • the system provides a heretofore unavailable ability for a User to create a grouping, or custom selection of content available from the World Wide Web or other sources.
  • the system also provides the ability to adjust both the size of the entire independent browser window, and, separately, the size of each content item within the window.
  • Other important capabilities of the system include the ability to easily search for content similar to the selected content and the ability to transfer access to the custom selection to others via electronic mail, instant messenger applications, and other electronic communications methods.
  • the invention is effected, in part, by software added to the User's computing device, which is preferably in the form of a plug-in to an Internet browser, such as the Internet Explorer TM Internet browser of Microsoft Corporation or the Netscape NavigatorTM Internet browser of Netscape Corporation, or similar content viewing applications.
  • the software on the User's computing device modifies the User's browser to allow the User to select desired content from a web page or other document or spreadsheet, or the like, and to place the desired content in an independent browser window, free from other content on the source web page or document.
  • the software creates a toolbar on the browser, the Main Toolbar, having menu items or icons which activate the functions.
  • the software allows the User to select desired content from a web page by directing the mouse pointer over the content, depressing the right mouse button (i.e., "right click") and choosing a Select Content Function offered in an otherwise standard pop-up menu.
  • the Select Content Function on such pop-up menu is identified by the word "Amplify” TM.
  • the User preferably first defines the desired text by using the standard "click and drag” method and then the "right click" method.
  • the system may place a floating icon over the content when the mouse is directed over the content.
  • the floating icon can be used (clicked on) to select the content item with one click.
  • the floating icon appears as an overlay on top of the content item and only appears when the User directs the mouse pointer over the content item.
  • the floating icon does not ordinarily obscure the content item.
  • the software may present the User with a Properties Window that allows the User to enter a descriptive Description for the Custom selection being created by the User, and allows the User to enter Keywords for the custom selection. As described in detail below, the software uses the Keywords to perform searches for similar content on the World Wide Web.
  • the software creates an independent browser window, the Custom Selection Window, containing only a relatively small toolbar, the Window Toolbar, and the custom selection of the content items selected by the User. This allows the User to select and focus on desired content free from additional, and possibly distracting, content on the source page.
  • the Custom Selection Window is of a predetermined size and may be resized by the User in the known manner of resizing windows.
  • the content selected by the User is set to occupy specific percentages of the height and width of the window (other than the Window Toolbar), such as 100%.
  • the browser adjusts the dimensions of the content within the window proportionately.
  • Certain content available on the World Wide Web may require that additional software be present on the User's computer.
  • additional software includes media players such as Microsoft's Windows Medial Player, Real Media's Real Player, Apple's Quicktime, and other similar media players, and includes other "applets", plug-ins, applications and programs. The User would need to install this software prior to using the system of the invention for these types of content.
  • the system allows the User to have several instances of the Custom Selection Window open simultaneously, each window containing a different custom selection. If additional software is required to view a content item in a Custom Selection ' Window, such as a media player or applet, or the like, the additional software is preferably defined within the Custom Selection Window as an "embedded object", which allows multiple instances of the additional software to operate on the computing device at the same time. In this manner, the User can select and view several content items requiring the same additional software simultaneously.
  • This system also allows the User to add additional content items to an existing Custom Selection Window.
  • the User can preferably define whether the additional content item is to appear above, below, to the right, or to the left of an existing content item. The process can be repeated to populate a Custom Selection Window with yet more content items.
  • the several content items contained within one Custom Selection Window are each placed within an individual frame created within the window, which frames are preferably set to collectively occupy specific percentages (e.g., 100%) of the height and width of the Custom Selection Window (not including the Window Toolbar, as discussed above). Further, as with a single content item, each of the several content items is preferably set to occupy specific percentages (e.g., 100%) of the height and width of its respective frame.
  • the User may also preferably resize the frames. Thus, when a frame for a content item is resized, the browser resizes the content within that frame, and, importantly, resizes the other frames (and the content therein), proportionately.
  • each frame of a Custom Selection Window includes a toolbar, the Frame Toolbar, having predefined functions that are applied with respect to the specific content item located in the frame, as opposed to Window Toolbar which has functions that are applied with respect to the Custom Selection Window as a whole.
  • the Frame Toolbar preferably contains icons that allow the User to divide (and sub-divide) each frame to allow the User to populate the Custom Selection Window with multiple content items, as described above.
  • the Frame Toolbar appears as an overlay to the content item within the frame and only appears when the User directs the mouse pointer over the content item (i.e., on a so- called “mouseover” event).
  • the Frame Toolbar does not ordinarily cover or otherwise obscure the content item located within the frame.
  • the Frame Toolbar preferably provides a menu item or icon to select the content item located within the respective frame and place the content item in a new Custom Selection Window in a manner similar to selecting content from an original source page. Thus, using this function, the User can pick desired content items out of an existing Custom Selection Window.
  • the Frame Toolbar preferably includes a menu item or icon to Refresh the content item in the respective frame.
  • the Window Toolbar also preferably provides a similar function to refresh all of the content items within a Custom Selection Window simultaneously.
  • the system provides the ability to search the World Wide Web for content similar to the selected content.
  • the User can select a Search function provided by the software, which is preferably accessible via an icon on the Window Toolbar of the Custom Selection Window or on the Frame Toolbar.
  • the software opens a new browser page and queries a predetermined World Wide Web search engine, such as google.com, or the like, with certain Search Parameters.
  • the Search Parameters are created from a group including the domain name of the source of a content item in the Custom Selection Window, the title of the original web page of the content item, and the Keywords.
  • the search can be performed on the basis of the Search Parameters of the entire Custom Selection Window (via the Window Toolbar), or on the basis of an individual content item within a frame of the Custom Selection Window (via the Frame Toolbar).
  • the result of the search is an independent browser window containing "hits" returned by the search engine, which should be relevant to the selected content or source of the content.
  • the hits are typically in the form of short descriptions of the search results accompanied by hypertext links, or universal resource locators (i.e., url's), which lead to web pages.
  • the system also provides the ability for the User to open a new browser window containing either the entire web page of a selected content item, or containing the main or "home" web page of the domain for the selected content.
  • These functions, the GoTo This Page and GoTo This Site functions are preferably made available via menu items or icons on the Window Toolbar or via menu items or icons on each Frame Toolbar.
  • the system provides the ability to maintain the Custom Selection Window as the "top” window on the computing device.
  • This function the Always On Top function, is preferably made available via a menu item or icon on the Window Toolbar.
  • the Always On Top function is selected (i.e., "on")
  • the Custom Selection Window will remain visible as the top window on the computing device inespective of whether the User selects another window, such as another program, as the active window.
  • the User can quickly and conveniently select and focus on a desired content item, such as a streaming video, and ensure that the content item is always visible even if the User is working with another program.
  • the User can resize and relocate the Custom Selection Window to view other programs, as desired.
  • the system also provides the ability for the User to save a Custom Selection
  • a Favorites List is preferably made available via a menu item or icon on the Window Toolbar.
  • the Main Toolbar accessible on the main browser, includes a retrieval function, the GoTo Favorites function, accessible via a menu item or icon.
  • the GoTo Favorites function displays a list of saved Custom Selection Windows, which are identified by the Description entered by the User when creating the Custom Selection Window.
  • Custom Selection Window is sent to Favorites, the User can quickly and conveniently recreate the window at a later time by choosing the selection from the list of Favorites.
  • the system also provides a convenient means for the User to print the Custom Selection Window.
  • the Send To Printer function is preferably made available via a menu item or icon on the Window Toolbar.
  • the system also provides the ability for the User to transfer a Custom Selection Window to another computing device (a Recipient) via electronic mail, instant messenger programs, or other similar electronic communication means.
  • a Recipient a computing device
  • This function, the Send To Friends function is preferably made available via a menu item or icon on the Window Toolbar.
  • the software presents the User with a dialog window to enter the Electronic Address of the Recipient (e.g., the email address, or instant messenger name).
  • the software also preferably provides the ability to save the Electronic Addresses of Recipients, identified by a descriptive Recipient Name entered by the User, in a Friends List for future use.
  • the Definition includes a predefined, unique identifier for the sender (the User Identifier), the Description, the anangement and sizes of the frames in the window and the Keywords.
  • the Definition also includes the universal resource locator (url) for the image content.
  • the Definition also includes either the entirety of the selected text or the url for the source of the text and parameters that define the location of the beginning and end of the selected text within the source of the text.
  • the electronic message sent to the Recipient contains a hypertext link, or universal resource locator (url) which leads back to the Server.
  • the link contains the Window Identifier of the Custom Selection Window.
  • the electronic message can be sent by the Server or can be sent by the computing device of the User. In the case where the electronic message is sent by the User, the Server transmits the Window Identifier of the Custom Selection Window to the User and the Window Identifier is incorporated into the electronic message as described above.
  • Keywords provide an important function by allowing the creator of the custom selection to provide targeted words to search for related content on the web.
  • the Keywords are attached to the Custom Selection Window and remain with the Custom Selection Window when it is saved by the User (or sent to the Favorites List), and travel with the Custom Selection Window when the Custom Selection Window is accessed by a Recipient.
  • the electronic message sent to the Recipient does not contain the content items themselves, but only a link to the Server.
  • the present invention greatly reduces the time and bandwidth required to send an electronic message to another to share content over a network such as the World Wide Web.
  • electronic messaging systems often have limitations in the type and amount of content that each can transmit in a single message. For example, electronic mail systems typically limit messages to a certain size and instant messaging systems typically do not allow the transfer of images and typically limit the amount of text in a message to a certain number of characters.
  • the present invention overcomes these limitations by sending an electronic message containing a link used to re-create the custom selection.
  • the User can recreate the Custom Selection Window by selecting, or clicking on, the hypertext link in the message.
  • the computing device of the Recipient activates a browser application that sends a request to the Server, which request contains the unique Identifier of the Custom Selection Window.
  • the Server responds with a web page that recreates, on the computing device of the Recipient, the custom selection as defined by the sender.
  • a standard browser application can create a Recipient Window containing the custom selection without the additional software required to initially create and send the custom selection. Therefore the User is able to transmit access to the custom selection to another computing device on the network, even if the other computing device does not have the additional software required to initially create the custom selection.
  • the Recipient Window is configured to load the content items of the custom selection via the browser application on the computing device of the Recipient directly from the respective sources of the content.
  • the system of the present invention avoids the content type and size limitations of electronic messaging systems, as discussed above.
  • the Recipient Window also preferably includes a tool bar, the Recipient Toolbar, that provides certain functions to the Recipient related to the custom selection in the Recipient Window.
  • the Recipient Toolbar preferably includes Search, Goto This Page, GoTo This Site, and Print functions, similar to those functions provided by the Window Toolbar, to allow the User to search the World Wide Web for content related to the content in the Recipient Window, to open another browser window with either the source web page containing the content item or the web site of the domain of the source web page, or to print the Recipient Window.
  • the custom selection received by the Recipient includes the Keywords in the Definition, which allows the Recipient to perform targeted searches of the web for related content.
  • the initial web page sent to the Recipient preferably senses whether the
  • the Recipient has installed the software on their computing device. If so, the Recipient has the full functionality of the Custom Selection Window, including the functionality of the Window Toolbar, as described above. In particular, the Recipient has the ability to save the Custom Selection Window to the History List, the Favorites List and has the ability to transfer access to the Custom Selection Window to other computing devices, among the other functionality described above.
  • the software is preferably compatible with several different computing platforms, such as Microsoft Windows-based and Apple computers, internet appliances, personal digital assistants (PDAs, such as the Palm Pilot, and the like), and other computing platforms, such that custom selections can be shared among Users of various computing devices.
  • PDAs personal digital assistants
  • certain items of User-defined attribute information such as the User's Favorites and the Friends List, are preferably portable amongst various computing devices of the User.
  • the software accomplishes this function by transmitting the attribute information to the Server and storing the information along with the unique User Identifier.
  • the User's attribute information is retrieved using the User Identifier when the User first launches the browser.
  • the system provides a consistent and familiar experience regardless of which computing device the User chooses.
  • the system also provides a highly accurate and flexible means to track content viewed and shared by Users and Recipients.
  • the Server is contacted whenever a custom selection is saved to or chosen from the Favorites list, when a custom selection is sent to another device using an electronic message, and when a Recipient views a received custom selection.
  • the unique Identifier of the custom selection is sent to the Server, which Server contains the Definition of the custom selection. Therefore, in the case of custom selections of a User's Favorites List, the system can track and compile statistics including regarding what content items have been selected, what content items are selected in the same window, the number of times a selected item (or group of items) is viewed, and the frequency of viewing. Such statistics can be compiled along with the unique User Identifier to track such information with respect to a particular User, or can be compiled "blind" without regard to a particular User.
  • the system can also track and compile statistics on what content items (or groups) are shared with others (and by whom), the number of times a Recipient views a selection, the frequency of viewing, and the chosen method of messaging.
  • the system can track statistics regarding a User viewing (and likely comparing) images of two products side-by-side in a custom selection, and can track statistics about any sharing of that custom selection. This tracking can be accomplished whether the two images are on the same site or different sites.
  • the system does not rely on pre-placed tracking devices, such as "cookies" or "web bugs.”
  • the tracking capability of the present invention is based on the content items themselves, in their unaltered format.
  • the tracking capability of the system is highly targeted in that it is able to track viewing and transferring of specific content items, whereas traditional tracking methods such as cookies and web bugs typically only track views of entire web pages.
  • communication with the Server is required for certain actions, such as saving and retrieving, the tracking capabilities of the system cannot be circumvented. Therefore, the system provides a very non-invasive reliable, highly targeted and flexible tracking system.
  • the present invention provides a convenient method for a User to create, view, modify, print and save custom groupings of image and text content items available on web pages and other sources, to search for other related content, and to transfer access to such selections with others, which method is effected in a manner which avoids the limitations of electronic communications methods, which reduces the time and bandwidth required to share the custom groupings via electronic messages, and which provides for highly accurate and flexible tracking of such content viewing and sharing.
  • FIG. 1 is an image of an Internet browser application showing the Main Toolbar of the present invention
  • FIG. 2 is an image of the Main Toolbar showing the Identified Content Item List
  • FIG. 3 is an image of the Select Content Item Function invoked by the "right- click" method of selecting a content item
  • FIG. 4 is an image illustrating the floating Instant Selection Icon
  • FIG. 5 is an image of the Properties Window
  • FIG. 6 is an image of a Custom Selection Window having a single image content item
  • FIG. 7 is an image of a Custom Selection Window having a content item in a top frame and a blank bottom frame;
  • FIG. 8 is an image of the Select Target Window
  • FIG. 9 is an image of a Custom Selection Window having an image content item in a top frame and an animation content item in a bottom frame
  • FIG. 10 is an image of a Custom Selection Window having a bottom frame divided into right and left frames
  • FIG. 11 is an image of a Custom Selection Window having an image content item in a top frame, having an animation content item in a left bottom frame and having a text content item in a right bottom frame;
  • FIGs. 12 and 13 are images of a Custom Selection Window as in FIG. 11, showing a Frame Toolbar in the top frame;
  • FIG. 14 is an image of the (Go To) History menu item of the Main Toolbar
  • FIG. 15 is an image of the (Send To) Favorites menu item of the Window Toolbar
  • FIG. 16 is an image of the (Go To) Favorites menu item of the Main Toolbar
  • FIG. 17 is an image of the (Send To) Recipients menu item of the Window Toolbar
  • FIG. 18 is an image of the Edit Recipients dialog window
  • FIG. 19 is an image of the Recipient Window
  • FIG. 20 is an image of a Custom Selection Window showing the Create Link Window Toolbar menu item
  • FIG. 21 is an image of an electronic messaging application message containing a Link to a Custom Selection Window
  • FIG. 22 is an image of a System Area Icon and System Area Menu
  • FIG. 23 is an image of a Return To Search Results icon and a condensed Search Results List.
  • the User installs software on the User's computing device that adds functionality to the Internet browser application and operating system of the User's computing device.
  • the software Upon installation of the software, the software communicates with a remote Server that assigns a unique User Identifier for the User and transmits the User Identifier to the User's computing device, which stores the User Identifier on a memory device for later use.
  • the software adds a Main Toolbar 10 to the browser application 12 on the User's computing device to allow the User to create a custom selection by selecting desired content items from a web page or other document or spreadsheet, or the like, and to place the desired content items in an independent browser window, free from other content on the source web page or document.
  • the Main Toolbar 10 has menu items or icons that activate some of the functions.
  • the software may analyze web pages and other types of sources upon loading into the browser application to identify content items supported by the software and to determine the network locations of the content items.
  • a list of supported content is preferably contained in a file stored on the User's computing device, such as in a Dynamic Link Library (DLL), that can be updated automatically as new types of content become supported by the software.
  • the Main Toolbar 10 preferably provides a menu item that allows the User to disable the automatic page scanning if desired.
  • the Main Toolbar 10 includes an Identified Content 14 menu item that displays an Identified Content Items List 16 of supported and identified content items in the web page or source cunently loaded into the browser application.
  • the User can select a desired content item by clicking on the item in the Identified Content Items List 16.
  • the User can also select a desired content item from a web page by directing a pointing device of the computing device (e.g., a mouse pointer) over the content item 18 in the page, depressing the right mouse button (i.e., "right click") and choosing a Select Content Item Function 20 offered in an otherwise standard pop-up menu 22.
  • a pointing device of the computing device e.g., a mouse pointer
  • the right mouse button i.e., "right click”
  • Select Content Item Function 20 on such pop-up menu 22 is identified by the word "Amplify" TM).
  • the software when selecting content items, the software obtains the network location and name of the content item from the web page or other source of the content item and retains the network location in memory, which is preferably temporary memory. Further, it should be noted that content items (and groups of content items) can be selected using the standard "click and drag” method and then the "right click” method.
  • the User preferably first defines the desired text by using the standard "click and drag” method and then the "right click” method.
  • This function is also operable to select non-text content items.
  • a group of non-text content items or a group of text and non-text content items may be selected in a similar manner by selecting the entire group, for example using the "click and drag” method.
  • a select function inherent in the operating system e.g., WindowsTM
  • the term "click” is meant to encompass any means or method by which the pointing device receives a selection command from the User.
  • the system preferably places a floating, Instant Selection Icon 24 over the content item 18' when the User directs the mouse pointer over the display area or frame of the content item.
  • the Instant Selection Icon 24 can be used (clicked on) to select the content item 18' with one click.
  • the Instant Selection Icon 24 appears as an overlay on top of the content item 18' and only appears when the User directs the mouse pointer over the display area or frame of the content item.
  • the Instant Selection Icon 24 does not ordinarily obscure the content item.
  • the software may present a Properties Window 28 that allows the User to enter a Description 30 for the custom selection being created by the User, and allows the User to enter Keywords 32 for the custom selection.
  • the software uses the Keywords 32 to perform searches for similar content on the World Wide Web.
  • the software then creates an independent browser window, the Custom Selection Window 34, containing only a relatively small toolbar, the Window Toolbar 36, and the custom selection of the content item 18 selected by the User.
  • This allows the User to select and focus on desired content free from additional, and possibly distracting, content on the source page.
  • the network location of the content item is retrieved from the (temporary) memory to which it was stored during the selection process.
  • the software preferably loads the content item into the Custom Selection
  • Network source as used herein include any cached source that may be present on the network.
  • the Custom Selection Window 34 is of a predetermined size and may be resized by the User in the known manner of resizing windows.
  • the content item 18 selected by the User is set to occupy specific percentages of the height and width of the window (other than the Window Toolbar 36), such as 100%.
  • the browser application adjusts the dimensions of the content item 18 within the window proportionately.
  • the system preferably maintains any original aspect ratio settings of the content item.
  • Certain content available on the World Wide Web may require that additional software be present on the User's computer.
  • additional software includes external player programs (such as Microsoft's Windows Medial Player, Real Media's Real Player, Apple's Quicktime, and other similar media players), helper application, "applets”, plug-ins, and other programs.
  • the User would need to install this software prior to using the system of the invention for these types of content.
  • the software allows the User to have several instances of the Custom Selection Window 34 open at any given time, each window containing a different custom selection. If additional software is required to view a content item in a Custom Selection Window 34, such as a media player or applet, or the like, the additional software is preferably defined within the Custom Selection Window as an "embedded object", which allows multiple instances of the additional software to operate on the computing device at the same time. In this manner, the User can select and view several content items requiring the same additional software at the same time.
  • the software also allows the User to add additional content items to an existing Custom Selection Window 34.
  • the User preferably first divides a Frame 37 of an existing content item 18 in the Custom Selection Window 34 to add a new frame to the window.
  • the Frame Toolbar 38 which appears over the content item 18 in the Custom Selection Window 34, includes New Frame Bottom, New Frame Top, New Frame Right, and New Frame Left icons 40, 42, 44, 46 (or menu items) that add a new frame below, above, to the left or to the right, respectively, of the existing content item 18.
  • the software preferably divides the frame 36 of the selected content item 18 into two, equal, sub-frames 48, 50, with one of the frames 48 occupied by the existing content item 18 and the other frame 50 blank. Then, the User selects an additional content item in the manner described above.
  • the software determines whether there exist other, open Custom Selection Windows. If so, the software presents a Select Target Window 52, that displays an Open Window List 54 of all open Custom Selection Windows, which are preferably identified by the Description 30 entered by the User when creating the windows. Preferably, the User can select an open window from the Open Window List 54.
  • the Select Target Window 52 also preferably provides a New Window 56 button, icon or menu item to allow the User to place the content item in its own Custom Selection Window, if desired.
  • the software Upon the selection of an open Custom Selection Window as the target, the software displays the selected Custom Selection Window 34, which includes the frame 48 occupied by the existing content item 18 and a blank frame 50 (as shown in FIG. 6). If the Custom Selection Window 34 contains more than one blank frame, the software then preferably pauses and prompts the User to select the blank frame in which to place the additional, content item. The User can select the desired blank frame by clicking within the border of the frame. If the Custom Selection Window 34 contains only one blank frame then the software may automatically place the additional content item within that frame.
  • the software then displays the modified Custom Selection Window 34, which now contains both the first content item 18 (e.g., in the top frame 48) and the additional content item 58 (in tlie bottom frame 50).
  • Custom Selection Window 34 with more content items In this case, a new frame 60 is added to the right of the bottom frame 50. As above, the new frame 60 is added by selecting the New Fame Right icon 44 in the Frame Toolbar 38 (not shown) of the bottom frame 50 to add a frame to the right of the bottom frame 50. As shown, a text selection content item 62 can then be placed in the new frame 60 in the manner described above.
  • the software preferably defines the frames of the Custom Selection Window
  • each of the several content items is preferably set to occupy specific percentages (e.g., 100%) of the height and width of its respective frame.
  • the User may also preferably resize and rescale the frames in a Custom Selection Window by relocating a border between frames by clicking on and dragging a border 64 to a new location. When the frame border is relocated, the browser application resizes both of the content items within the frames that share that border 64, proportionately. However, the system preferably maintains any original aspect ratio settings of the content item. It can be appreciated that the ability to arrange, size and resize multiple content items within one independent browser page gives the User great flexibility when creating custom selections.
  • the software first determines what type of content has been selected and determines whether there exists other open Custom Selection Windows.
  • An example of the code for these steps is set for the in Table A.
  • the software then defines certain parameters of the content item, such as the source page or document of the content item and the file name of the content item.
  • Certain parameters of the content item such as the source page or document of the content item and the file name of the content item.
  • An example of this step, for an image content item, is set forth in Table B.
  • the software launches a new browser application window and passes the XML structure of the image to the new window.
  • An example of the code for this step, for an image content item, is set forth in Table C.
  • the software pauses to receive an indication from the User as to the desired location of the content item within the new window.
  • the software may automatically insert the content item in that frame.
  • An example of the code for this step is set forth in Table D.
  • Se BaseHREF oTargetWindow.document, xmlImage.selectSingleNode("source)
  • the XML structure of a content item preferably includes tags related to the network location and other aspects ofthe source ofthe content item such as the protocol (e.g., http), host (e.g., amplifytheweb.com), path (e.g., /images/), page (e.g., page.html), and query.
  • tlie XML structure also preferably includes tags related to the file name (e.g., image.jpeg), alternate information (e.g., "A JPEG image”), height and width.
  • An example ofthe XML structure for an image content item is set forth in Table F. TABLE F
  • the HTML code loaded into a frame includes instructions that define the appearance ofthe content item in the frame.
  • An example ofthe HTML code the frame of an image content item is set forth in Table G.
  • the software allows the User to divide frames of an open Custom Selection Window to insert additional content items into the window.
  • An example ofthe code to divide a frame of a Custom Selection Window is set forth in Table H.
  • the HTML code that defines the frameset for a Custom Selection Window preferably defines the frames as predetermined percentages ofthe window.
  • the code may also identify the Custom Selection Window by a unique Window Identifier.
  • the code set forth in Table I below defines a frameset having a top and bottom frame for a Custom Selection Window having a Window Identifier of 579E3E1B-F2A9-42A3- 91AC-1635B0A67D04.
  • Custom Selection Window defined by the frameset defined by the code set forth in the above Table I is set forth below in Table J.
  • dHeightRatio lOriginalHeight / (document.body.clientHeight - 4);
  • dWidthRatio lOriginalWidth / (document.body.clientWidth - 4);
  • Table L can contain the image content item (as defined by the code of Table J) in the frame ofthe top row, an MPEG movie content item in the left frame ofthe bottom row, and a text content item in the right frame ofthe bottom row.
  • An example ofthe HTML code for a text content item comprising the text "This is the text selected by the user.” is set forth in Table M.
  • the Frame Toolbar 38 preferably appears as an overlay to the content item 18 within the frame and only appears when the User directs the mouse pointer over the display area or frame ofthe content item (i.e., on a "mouseover" event). In this manner, the Frame Toolbar 38 will disappear when the pointer exits the display area or frame. Thus, the Frame Toolbar 38 does not ordinarily cover or otherwise obscure the content item 18 located within the frame.
  • the Frame Toolbar 38 preferably includes a Select Content Item 66 icon to select the content item 18 located within the respective frame and place the content item in a new Custom Selection Window in a manner similar to selecting content from an original source page.
  • a Select Content Item 66 icon to select the content item 18 located within the respective frame and place the content item in a new Custom Selection Window in a manner similar to selecting content from an original source page.
  • the Frame Toolbar 38 preferably includes a Refresh 68 menu item or icon to reload the content item in the respective frame.
  • the software To refresh a content item, the software first determines which frame the User has chosen to reload. An example ofthe code to make this determination is set forth in Table N.
  • AddItem_Callback oDocument.frames (x ⁇ Frames.Item(i).selectSingleNode("@id”).Text), xmlFrames.ltem(i),
  • the Frame Toolbar 38 preferably includes a Search 70 icon which allows the User to perform a search for content related to the content item in the frame.
  • the Search icon 70 preferably provides a drop-down menu having a Similar Pages 72 menu item and a Related Content 74 menu item.
  • the software opens a new browser window and queries an Internet search engine (e.g., google.com) with a search command using certain search parameters.
  • the Similar Pages 72 menu item performs a search for web pages related to the domain name ofthe source ofthe content item in the frame.
  • the Related Content 74 menu item performs a search ofthe domain ofthe source ofthe content item ofthe frame for items related to the Keywords ofthe Custom Selection Window.
  • the result ofthe search is an independent browser window containing "hits" returned by the search engine, which should be relevant to the selected content or source ofthe content.
  • the hits are typically in the form of short descriptions ofthe search results accompanied by hypertext links, or universal resource locators (i.e., url's), which lead to web pages.
  • the Frame Toolbar 38 also preferably includes a Delete menu item (not shown) that is operable to delete the associated frame from the Custom Selection
  • the "parent" frame that is the frame from within the deleted frame was originally created, is resized to occupy the space previously occupied by the parent frame and the deleted frame.
  • the content item within the resized parent frame is resized (i.e., expanded) accordingly.
  • the Frame Toolbar 38 also preferably includes a GoTo 78 icon that presents a drop-down menu having a This Site 80 menu item and a This Page 82 menu item.
  • the This Site 80 menu item opens a new browser window that loads the main page ofthe domain ofthe content item in the frame.
  • the This Page 82 menu item opens a new browser window that load the page from which the content item ofthe frame was selected.
  • the Window Toolbar 36 includes a Window Properties 84 icon that displays the Properties Window 28 (see FIG. 5) to allow the User to modify the Description 30 and the Keywords 32.
  • the Window Toolbar 36 also includes a Search 88 icon that performs a search ofthe World Wide Web base upon the Keywords 32.
  • the Window Toolbar 36 also preferably includes a Refresh 90 icon that reloads all ofthe content items of a Custom Selection Window 34 with one click.
  • the example code set forth in Tables N, O & P above will reload all ofthe content items of a Custom S election Window. Always On Top
  • the Window Toolbar 36 also includes an Always On Top 92 icon, which, when selected, will retain the Custom Selection Window 34 as the top window on the computing device inespective of whether the User selects another window, such as another program, as the active window.
  • the User can quickly and conveniently select and focus on a desired content item, such as a streaming video, and ensure that the content item is always visible even if the User is working with another program.
  • the User can resize and relocate the Custom Selection Window 34 to view other programs, as desired.
  • a Save 94 icon ofthe Window Toolbar 36 saves the Custom Selection Window 34 for later use.
  • a Window Definition ofthe Custom Selection Window 34 is saved in memory ofthe computing device ofthe User (e.g., RAM or on a hard drive) and/or on a remote Server accessible via the Internet or other network.
  • the content items of a Custom Selection Window are not themselves saved on the computing device ofthe User or on the Server, but only the Window Definition, which Window Definition contains the particulars ofthe Custom Selection Window and ofthe content items therein.
  • the Window Definition is in the form of an XML document containing a unique Window Identifier, a frameset and specific information for each frame.
  • the software on the computing device ofthe User or the Server assigns a unique Window Identifier to the Custom Selection Window which is saved with or otherwise associated with the Window Definition.
  • the Window Identifier is used to recreate the Custom Selection Window at a later time.
  • the Window Definition does not include the actual content items, but does include information regarding the source and identity ofthe content item sufficient to access or recreate the content item.
  • the Window Definition preferably includes information identifying the source ofthe content item, including the domain name, path and file name, and includes identifying information and parameters of any media player or external application (or the like) required to display or play the content item.
  • the Window Definition may include the string of text selected by the User, or may include information identifying the source ofthe text and coordinates specifying the beginning and end points ofthe text. If entered by the User, the Window Definition also includes the Keywords 30.
  • Table S The example ofthe XML code set forth in Table S below is a Window Definition having a video content item, a text content item and an image content item.
  • the Main Toolbar 10 includes a GoTo 94 icon, that presents a History 95 menu item list, that in turn presents a Most Recently Used (MRU) List 96 of Custom Selection Windows, in preferably chronological order of use.
  • MRU Most Recently Used
  • the windows are identified in the MRU List 96 by their Descriptions 30.
  • the MRU List 96 is preferably limited to a predetermined number of windows, for example the last 20 used, such that the MRU List 96 is a dynamic list providing convenient access to recently used Custom Selection Windows.
  • the User may recreate a Custom Selection Window from the MRU List 96 by clicking on the Description for the window.
  • the software locates and retrieves the Window Definition from the memory device ofthe computing device or from the Server using the unique Window Identifier, recreates the Custom Selection Window and loads the content items directly from the original source of each item, as recorded in the Window Definition.
  • the Window Toolbar 36 includes a Send To 97 icon, that presents a Favorites 98 menu item, that in turn presents an Add to Favorites 100 menu item.
  • the Add to Favorites 100 menu item saves the Custom Selection Window in a Favorites List 102 that is accessible via the GoTo 94 icon ofthe Main Toolbar 10.
  • the software stores the Window Definition of each Custom Selection Window in the Favorites List 102 on the computing device and preferably on the Server.
  • the Custom Selection Windows in the Favorites List 102 are preferably identified by the Description 30.
  • the Favorites List 102 preferably remains the same until the User adds or deletes a Custom Selection Window from the list.
  • the Custom Selection Windows in the Favorites List 102 will always be available to the User regardless of other windows which the User may have created and saved.
  • the software upon selection of a Custom Selection Window from the Favorites List 102, the software locates and retrieves the Window Definition from the memory device ofthe computing device ofthe User or from the Server using the unique Window Identifier, recreates the Custom Selection Window and loads the content items directly from the original source of each item, as recorded in the Window Definition.
  • the Favorites List 102 can be modified, dynamically, as the User navigates (or
  • Matching Custom Selection Windows containing content items from the domain ofthe source cunently displayed in the browser application ofthe User can be highlighted or segregated in the Favorites List 102.
  • Matching Custom Selection Windows in the list can be grouped together in a sub-list (not shown) segregated from other Custom Selection Windows in the list.
  • the Matching Custom Selection Windows in the list can be highlighted by limiting the display ofthe Favorites List 102 to only the Matching Custom Selection Windows, or can be highlighted visually, by color or in some other visual manner.
  • the Favorites List 102 can be presented in an order that highlights the Matching Custom Selection Windows, such as with the Matching
  • Custom Selection Windows at the top ofthe list. It can be appreciated that any other similar method of dynamically highlighting Matching Custom Selection Windows in the Favorites List 102 is within the scope ofthe invention.
  • the Send To icon 97 ofthe Window Toolbar 36 preferably includes a Printer menu item 104 that sends the Custom Selection Window to a printer available to the computing device ofthe User.
  • the Frame Toolbar 38 also preferably includes a Send to Printer Function (not shown) which allows the user to send the content item of one frame to the printer.
  • the Send To icon 97 ofthe Window Toolbar 36 also includes a Recipients 106 menu item (shown as "Friends" in the drawings) that presents a List of Recipients 108 to which Custom Selection Windows may be sent by email, instant message or another type of electronic communication method.
  • the Recipients 106 menu item provides a means to enter (or modify) the Electronic Address of a Recipient of a Custom Selection Window, such as the Edit Recipients 110 menu item which presents the dialog window 111 of FIG. 18.
  • the User can enter the Electronic Communication Method 112 (e.g., EMAIL), a descriptive Recipient Name 114 and the Electronic Address 116 of the Recipient (e.g., email_address@domain.com).
  • EMAIL Electronic Communication Method
  • the Electronic Address 116 of the Recipient e.g., email_address@domain.com
  • the software on the computing device ofthe User sends the Window Definition ofthe Custom Selection Window (comprising an XML document ofthe type set forth above in Table S) to the Server.
  • the Window Definition is stored on the Server along with the Window Identifier (which is assigned at that time, if one has not been assigned yet).
  • the Server After receipt ofthe Window Definition, the Server sends an electronic message to the Recipient at the Electronic Address ofthe Recipient via electronic mail, instant messaging program, or other electronic means, as appropriate.
  • the electronic message sent to the Recipient contains a hypertext link, or universal resource locator (url) containing the Window Identifier, which link leads back to the Server. It may be preferable that the electronic message is sent to the Recipient by the Server. However, the electronic message may also be sent to the Recipient by a communication application on the computing device ofthe User. In either case, the electronic message includes a link to the Server, which link contains the unique
  • the Keywords in the Window Definition provide an important function by allowing the creator ofthe Custom Selection Window to provide targeted words to search for related content on the web.
  • the Keywords are attached to the Custom Selection Window and remain with the Custom Selection Window when it is saved (or sent to the Favorites List), and travel with the Custom Selection Window when the Custom Selection Window is accessed by a Recipient.
  • the electronic message sent to the Recipient does not contain the content items themselves, but only a link to the Server.
  • the present invention greatly reduces the time and bandwidth required to send an electronic message to another to share content over a network such as the Internet.
  • the present invention overcomes the limitations of electronic communications methods by sending an electronic message containing a link used to re-create the content in a browser application.
  • the User can recreate the Custom Selection Window by selecting, or clicking on, the hypertext link in the electronic message.
  • the computing device ofthe Recipient activates a browser application that sends a request to the Server, which request contains the unique Window Identifier ofthe Custom Selection Window.
  • the Server locates the Window Definition ofthe Custom Selection Window using the Window Identifier embedded within the link and responds with an Initial Recipient Web Page.
  • the Initial Recipient Web Page has code that attempts to detect whether the Recipient has installed the software required to create Custom Selection Windows.
  • the Initial Recipient Web Page attempts to detect the presence ofthe software by attempting to initialize certain components or objects ofthe software. If the software is detected on the Recipients computing device, then the Initial Web Page passes the Window Identifier to the software which then creates a Custom Selection Window as defined by the Window Definition, which window has the full functionality provided by the software, including the Window and Frame Toolbars.
  • Web Page includes code to open a new browser window, the Recipient Window 118, having dimensions defined in the Window Definition and to retrieve a Recipient Toolbar 120 from the Server and to populate the new window with the Recipient Toolbar 120. Then the browser calls a page to create the frameset for the Recipient Window 118, according to the Window Definition. Each frame within a frameset then calls a page to populate the frame.
  • a standard browser application can create the Recipient Window 118 without the additional software required to initially create and send the Custom Selection Window. Therefore the User is free to transmit access to the custom selection to any other computing device on the Internet or other network having a browser application.
  • the Recipient Window 118 is configured to load the content items therein via the browser application on the computing device ofthe Recipient directly from the respective original sources ofthe content.
  • the system of the present invention avoids the content type and size limitations of electronic messaging systems, as discussed above. Examples of Server-side code to create the frameset and individual frames for a Recipient Window are set forth in Table T & U, respectively.
  • lAmplHeight oRS("ampl_height")
  • lAmplWidth oRS("ampl_width)
  • sAmplDescription oRS("ampl_descri ⁇ tion")
  • sAmplKeywords oRS("ampl_keywords)
  • Set oRS Server.CreateObject("ADODB.Recordset)
  • SetoRS2 Server.CreateObject("ADODB.Recordset)
  • sSQL "ampl_frame_sel_sp " _
  • sFrameType oRS("fram__type)
  • sSourceProtocol oRS("fram_source_protocol)
  • sSourceHost oRS("f ⁇ am_source_host)
  • sSourcePath oRS("fram_source_path)
  • sSourcePage oRS("fram_source_page)
  • sSourceQuery oRS("fram_source_query)
  • the Recipient Toolbar 120 includes icons to Search 122, Send To Printer 124, Goto This Page 126, and GoTo This Site 128, which initiate functions similar to those functions provided by the Window Toolbar 36, to allow the User to search the World Wide Web for content related to the content in the Recipient Window 118, to print the Recipient Window, or to open another browser window with either the source web page containing the content item or the web site ofthe domain ofthe source web page.
  • the Recipient Toolbar also preferably includes a refresh icon (not shown) to reload the window.
  • the Window Definition preferably passes the Keywords to the
  • the Search 122 function ofthe Recipient Toolbar 36 preferably invokes a search command similar to that of the Window Toolbar 36.
  • the search command may be "http://www. goo gle.com/searchTq ⁇ Keywordl %20Kevword2."
  • the system ofthe present invention is preferably compatible with several different computing platforms, such as Microsoft Windows-based and Apple computers, internet appliances,, personal digital assistants (PDAs, such as the Palm Pilot, and the like), and other computing platforms, such that custom selections can be shared among various computing devices.
  • certain items of User-defined attribute information such as the User's MRU List, Favorites and the Recipients List, are preferably portable amongst various computing devices of the User.
  • the software accomplishes this function by transmitting the attribute information to the Server and storing the information along with the unique User Identifier.
  • the User's attribute information is preferably retrieved using the User Identifier when the User first launches the browser.
  • the system provides a consistent and familiar experience regardless of which computing device the User chooses.
  • the system also provides a highly accurate and flexible means to track content viewed and shared by Users and Recipients.
  • the Server is contacted whenever a custom selection is saved, or sent to or chosen from the Favorites List, when a custom selection is sent to a Recipient using an electronic message, and when a Recipient views a received custom selection.
  • the custom selection is uniquely identified to the Server by the Window Identifier, which Server contains the Definition ofthe custom selection. Therefore, in the case of custom selections of a User's Favorites List, the system can track and compile statistics regarding what content items have been selected, what content items are selected in the same window, the number of times a selected item (or group of items) is viewed, and the frequency of viewing.
  • Such statistics can be compiled along with the unique User Identifier to track such information with respect to a particular User, or can be compiled "blind" without regard to a particular User. Importantly, this tracking can be accomplished whether the two images are on the same site or different sites.
  • the system can also track and compile statistics on what content items (or groups) are shared with others (and by whom), the number of times a Recipient views a selection, the frequency of viewing, and the chosen method of messaging. As an example, the system can track statistics regarding a User viewing (and likely comparing) images of two products side-by-side in a custom selection, and can track statistics about any sharing of that custom selection.
  • the system can track viewing and sharing activities of diverse custom selections containing two or more content items from different network domains (e.g., different web retailers) and can track such activity according to groups or sets of network domain, such as diverse custom selections containing content items from a network domain of web retailer A and from a network domain of web retailer B.
  • network domains e.g., different web retailers
  • the system does not rely on pre-placed tracking devices, such as "cookies" or "web bugs.”
  • the tracking capability ofthe present invention is based on the content items themselves, in their unaltered format.
  • the tracking capability ofthe system is highly targeted in that it is able to track viewing and transferring access to specific content items, whereas traditional tracking methods such as cookies and web bugs typically only track views of entire web pages.
  • communication with the Server is required for certain actions, such as saving, saving and retrieving, the tracking capabilities ofthe system cannot be circumvented. Therefore, the system provides a very reliable, highly targeted and flexible tracking system.
  • the system provides a convenient method for a User to create, view, modify, print and save custom groupings of image and text content items available on web pages and other sources, to search for other related content, and to transfer access to such selections with others, which method is effected in a manner which avoids the limitations of electronic communications methods, which reduces the time and bandwidth required to share the custom groupings via electronic messages, and which provides for highly accurate and flexible tracking of such content viewing and sharing.
  • the Window Toolbar 36 of the Custom Selection Window 34 preferably includes a Link Creation 130 icon (depicted in the drawing as "Copy Link”) which, when selected, loads or copies a hypertext Link 132 for the associated Custom Selection Window into the "Clipboard" memory or other similar user- accessible memory ofthe computing device.
  • the hypertext Link 132 for the Custom Selection Window is preferably in the form of a complete uniform resource locator (url) leading to the Server and includes a unique Window Identifier 134 assigned to the particular Custom Selection Window.
  • the Window Identifier is located in a query string, specifically after string "?amplification- ', however the Window Identifier may be located in another portion ofthe query string.
  • Link 132 in an otherwise familiar manner into other documents or windows, such as the body of an electronic mail message, a word processing document, an instant message or any other location where information present in Clipboard memory may be pasted. Then that document or message may be transmitted to others (or may be saved) for sharing access to the Custom Selection Window, or for other purposes.
  • the Link Creation 130 icon is preferably operable to initiate the assignment of the Window Identifier.
  • the Window Identifier may also be assigned by the computing device ofthe User and/or by the Server when the Custom Selection Window is saved for the first time.
  • the software preferably adds a System Area Icon 140 in a System Area 142 ofthe user interface (e.g., the "System Tray” in WindowsTM).
  • a System Area Icon 140 in a System Area 142 ofthe user interface (e.g., the "System Tray” in WindowsTM).
  • System Area Icon 140 is preferably not dependent upon the presence of a running instance ofthe browser application and is preferably always present and active.
  • System Area Icon 140 when selected, provides a System
  • the System Area Icon 140 provides quick and easy access to these features at all times, inespective of whether a browser application is running on the computing device ofthe User at the time.
  • another feature ofthe software provides a Search Results List 146 that displays results ofthe last search ofthe Internet or other network sources, for example the results from an Internet search engine.
  • the User may navigate to the results from the Search Results List 146 until the results are overwritten by a successive search, or until the browser from which the search was conducted is closed.
  • a search ofthe Internet (or of an intranet or other network or local source) preformed with a search engine or similar means often produces a result that is presented in a predetermined, consistent format on a Search Results Page 147 containing a list of result items or "hits" 148.
  • the individual result items are usually spaced from one another on the page such that each hit is visually distinguishable from the others.
  • the layout ofthe web page containing the result items is defined by a formatting language, such as Hypertext Markup Language (HTML).
  • HTML Hypertext Markup Language
  • Each result item on a Search Results Page 147 typically includes a Descriptive
  • Hypertext Link 150 comprised of a descriptive text portion 152 displayed in plain English and an underlying raw url (which is hidden from the User).
  • a result item may also include a Raw Hypertext Link 154 comprised of a displayed raw url.
  • There may also be further descriptive text 156 associated with the result item which may be inactive.
  • the User can access a resource associated with the result item listed on the Search Results Page 147 by selecting (i.e., clicking on) one ofthe hypertext links.
  • the User must then return to the Search Results Page 147 using the "Back" command ofthe browser.
  • this may require several (or many) steps, especially if the User has navigated far from the original Search Results Page 147. Further, in certain situations, the User may be unable to return to the original Search Results Page 147 and may have to perform another search.
  • the Main Toolbar 10 preferably contains a Return to Search Results icon 157 that reloads the last Search Results Page 147 and a Search Results List icon 158 that produces the condensed Search Results List 146 containing a predetermined number (for example the first 10) of Results Items 160 obtained from a search.
  • the text ofthe Results Items 160 is preferably obtained only from the displayed descriptive text portion 152 ofthe associated Descriptive Hypertext Link 150 ofthe particular search result item.
  • the number of characters displayed for each Results Item 160 may be limited to a predetermined amount, for example 10 characters. As shown, an ellipsis or other visual indicator can be added to the Results Item 160 when the displayed descriptive text portion 152 is greater than the predetermined number of characters.
  • the content ofthe Search Results List 146 preferably remains unchanged until another search is conducted. Thus, after performing a search and navigating to one of the results, the User need not return to the Search Results Page 147 to navigate to other results on the Search Results List 146. Instead, the User may access the Search Results List 146 from the Main Toolbar 10 and select the desired Results Item 160. Alternatively, the User can reload the Search Results Page 147 by selecting the Return To Search Results Page icon 157. It can be appreciated that this provides a significant advantage both in the amount of time required to access different Results Items 154 and the guaranteed ability to select different Results Items 154.
  • results items are separated by and/or enclosed within predetermined anchors or tags.
  • the hypertext reference tag defines the Descriptive Hypertext Link 150, including the descriptive text portion 152 and the underlying raw url.
  • the underlying raw url of the first result item is ⁇ http://www.bi gcharts . com> and the descriptive text portion 152 is "BigCharts - Charting a World of Investment Information".
  • the underlying raw url of the first result item is ⁇ http://stocks.tradingcharts.com> and the descriptive text portion 152 is "Free stock-price charts quotes”.
  • the software analyzes each page or resource displayed within the browser application or other similar application ofthe computing device ofthe User, preferably when the page has completed loading, and compares the cunent page to a predetermined set of known search result pages.
  • the software compares the first portion ofthe location ofthe cunent page or resource (i.e., the url), such as the domain and certain further arguments or strings, to a predetermined list of resource locations of known search results sources.
  • the first portion of a url for a search result page returned by the "google.com” Internet search engine is known to be ⁇ http .7/www. goo gl e. com/search? > and a similar first portion ofthe url for the "Alta Vista" search engine is ⁇ hrtp://www.altavista.corn/sites/search/web? >.
  • the software determines the current page to be one of a known type of search results source, the software scans through the source code ofthe page to determine the results items displayed on the page. It can be appreciated that upon detection of a search result page, the format of that page is also determined. Therefore, the scan ofthe source code is conducted according to the known format of the detected search results page.
  • the software scans the source code of a detected search result page for an indicator of a results item such as a predetermined combination of tags. Specifically, the software scans the source code for the first occunence of a predetermined separator tag, such as a text formatting tag, where the next tag (i.e., the first child tag) is a resource reference tag, such as a hypertext reference tag.
  • the software parses the resource information ofthe associated resource reference tag to determine the descriptive text portion and the underlying resource location (url) for the resource.
  • the descriptive text portion of he resource reference tag is added to the Search Results List 146 and the resource location is stored in memory ofthe computing device and associated with the item added to the Search Results List 146. This process is repeated until the Search Results List 146 is filled with a predetermined number of results items, for example 10, or until the software scans through the entire page.

Abstract

A method, system and apparatus for selecting, displaying, managing, tracking and transferring access to content of Internet web pages and other sources has programming permitting a user to create custom selections of selected image (18), animation (64), movie and text content items (62), and other types of content items from web pages (34) or other sources from same or different network sources containing multiple content items in an independant, resizable, rescalable browser window (34), permitting the user to transfer access to the custom selection of content items to a recipient; permitting the user or recipient to navigate quickly to a source of a content item in the custom selection; and permitting the user to define search keywords for performing searches related to content items in a custom selection; and other features.

Description

SYSTEM, METHOD AND APPARATUS FOR SELECTING, DISPLAYING,
MANAGING, TRACKING AND TRANSFERRING ACCESS TO CONTENT
OF WEB PAGES AND OTHER SOURCES
Related Applications
This application is a continuation-in-part of international application serial number PCT/US02/14059, filed April 25, 2002, unpublished (as of the filing date of this application), which claims the benefit of U.S. provisional application serial number 60/286,417, filed April 25, 2001.
Field of the Invention
The invention pertains in general to the World Wide Web, and more particularly to a method, system and apparatus for selecting, displaying, managing, tracking and transferring access to content accessible by computing devices on the World Wide Web and other sources.
Background of the Invention
Interconnected computer systems, such as those interconnected by the
Internet, and the like, provide fast and convenient means for obtaining information from various sources throughout the world, and for sharing the information with others. In the world of the Internet, one of the forms of this information is the web page.
An Internet web page can contain a large amount of information and a large number of individual items, such as text, photographs, moving images and the like. The present invention enables Users to quickly and conveniently focus on and display separately selected items of content of a web page, and to share those selected items with other individuals or systems over the network.
The World Wide Web uses a growing variety of media, styles and elements ananged in the form of web pages. These web pages contain various types of content, including text, pictures and other compelling visual formats. As a rule, web pages have a finite amount of usable space in which to place text, images, and other content. Because of this, the authors of the web pages must make compromises in regards to how much space is reserved for textual information, and how much for the other visual aspects (images, animation, video, etc). An analogy can be made to a newspaper. Each section of the paper is provided its own 'space' on the paper itself, with boundaries defining where topics, stories and pictures appear. Since a web page also follows many of these same layout restrictions, elements within a web page are typically restricted to given areas on the page.
One notable difference between the pages of printed matter and the pages of a web site lies in the digital format of the web page. The web page can be dynamic and changeable, whereas the printed pages are fixed and unchanging. But because web pages share much of their layout characteristics with the printed page, even the digital format must obey the space restrictions placed upon it. This is what determines how much space a picture or image gets, in comparison to the text on a page. Text, be it on a printed page or web page, follows normal publishing rules regarding size, font, spacing and other factors affecting the page design. Images, pictures and other rich content, however, are restricted by the remaining limited space available on the page. There is, therefore, a need for a method, system and apparatus that allows users to display selected content from web pages and other sources in separate, scalable, and re-sizeable windows.
Often, as users view web pages, they find that they have no easy or practical way to simultaneously view content from two different web pages or web sites. Some of the methods that have been devised to overcome this limitation include launching multiple instances of a web browser, or opening a link in a new window (both launch a new full instance of the browser). This allows users to try to resize the content within each page or browser instance, and fit both on the screen together. Most browsers will resize, but the contents within the page often will not. Additionally, by opening another fully enabled browser instance, users consume more memory resources than one browser instance would consume. By opening a link in a new window (if permitted), users are still running another full browser instance, and downloading that whole page in its entirety, regardless of which part of the page interests them, wasting time and bandwidth. Most web browsers (and web sites) display one web page at a time. To display more than one page, additional browser instances would be opened. There is, therefore, a need for a method, system and apparatus that allows users to simultaneously display selected content from different web pages in a manner that does not require the user to launch multiple fully-enabled browsers.
If a user wants to share web page content with others, the cunent and easiest existing method is to E-mail a 'link' to that content. The user would simply copy the URL in the address bar of their browser and paste it into an E-mail message. Another method that is considerably faster is that of Instant Messaging. Online, the user would copy and paste the URL of the shared web page in real-time. This has significant speed advantages, and allows for an almost 'virtual meeting' to take place.
Unfortunately, the web pages do not always indicate the URL for the web page a user is viewing. This makes it difficult, if not impossible for the user to 'share' the location of this web page with another user. Another problem is caused by dynamic, form driven pages. These pages may have a number of drop-down lists from which the user could choose, or blank fields that might require user input. Because the URL for the resulting page may not be visible to the end user, it is difficult for a user show another user selected content. Much time is wasted by users having to 'walk' the other user through the entire web site in order for them to see the same results on their browser. There is, therefore, a need for a method and system that allows users to 'share' selected visual content from web pages with other users. There is also, therefore, a need for a method , system and apparatus that allows users to share only selected content from web pages in a manner that saves time and reduces bandwidth use. The cunent invention also relates to the 'tracking' of online activity of web users. Existing methods of tracking online activity often involve the use of a 'cookie', which is a small file written to, and then subsequently read from a user's computer. Advertising companies that serve up 'banner ads' are predominant users of these cookie files. As users 'surf (i.e. view) web pages, 'cookies' are created for the purpose of tracking what pages or web sites the user visits. Companies track, record and sell this information to other companies that are interested in obtaining such data. Many users and privacy advocates are speaking out against the invasive tracking method of using cookies. '
While it is true that users can simply choose not to accept a cookie while on a specific web site, much, if not all, of the web site's functionality often becomes inaccessible by doing so. In effect, the web site forces the user to accept the cookies in order to fully use the site. On any given web page, the user can be prompted several times to 'accept' a cookie if their browser settings do not accept them automatically. While the cookie was originally created to allow users to enjoy dynamic content and other rich experiences, today it is mainly a tracking measure. Users have begun to rely on third party software programs to purge their computers of cookie files, only to often have them recreated when they return to the web.
Another tracking method is the 'web bug'. Just as the name implies, web bugs are actually tiny graphics, usually 1 pixel x 1 pixel in size. Because of the tiny size of these special graphics, they are extremely hard to notice or even find if you look for them. Much like the cookie file, the web-bugs function is to report back to its server the IP address and other data of a user viewing the web page. Most users have no idea that the web bug is there, let alone what it does. To properly illustrate the hiding power of the web bug, imagine that a microphone is implanted within this very paper you are reading. The size of this microphone is the size of the period at the end of this sentence, and it is painted white to match the paper color perfectly. As newer and more brazen methods of tracking user activity are developed, users continue to develop methods of foiling such data collection efforts. These tracking and data collection efforts may never end, but they will likely change. Users want privacy, and they expect non-invasive ways for data tracking to be used. Advertisers and content providers, on the other hand, want a tracking solution that provides the most reliable data possible, via a method that cannot be thwarted or spoofed by users. There is, therefore, a need for a method, system and apparatus that tracks online web activity that does not use the preplacement of invasive methods such as cookies or web bugs.
An interesting aspect of some existing data tracking methods is that they are limited to tracking web pages as a whole. Web pages usually consist of a combination of various media and some existing tracking methods cannot discern with any certainty specifically what the user was viewing on each web page. For instance, cunent tracking methods cannot discern when a user is viewing a specific item on a web page from Site A and also a specific item on a web page from Site B simultaneously. The owner of Site A can only know what page the user views on Site A, but has no way to gather data regarding Site B. An advertiser can place a banner ad on the web pages of both Site A and B, but still does not know what specific item the user viewed on those pages, only that pages were shown to the user. There is, therefore, a need for a method, system and apparatus that allows tracking of specific content that a user chooses to view from web pages. There is also, therefore, a need for a method, system and apparatus that allows tracking of specific visual content that the user chooses from multiple web pages or web sites simultaneously.
Another aspect of the cunent invention pertains to searching for content on the World Wide Web. Many '"search engines" exist today, but users often lack the required skills to use them as efficiently as possible. In order for a search engine to return relevant results to a query, the user must know how to format search criteria. This means the user must know what key words to query, and what combination of key words to use. Users will often not use the conect key words, causing the search results to have little relevance.
Furthermore, because a web page can be comprised of many elements or topics, there may be confusion as to what element in the page to search. If the user were to search a particular web page or site for related information, the user usually gets results relevant to that page, not a specific element of that page.
For instance, if the user were interested solely in one product on a web page, and used existing search engines to search for related sites, the user would likely get results that include sites similar to the site he is on. However, such a user would not get results indicating sites that are both similar to the site and contain the specific product. A real world example might be that of a woman searching for a shoe store that sells a specific brand of shoe. The woman knows that she can find many shoe stores, but she is only interested in shoe stores that carry the brand of shoe she is looking for. This is known as a Boolean or compound query, where more than one search criterion must be met in order to satisfy the search results. There is, therefore, a need for a method, system and apparatus that allows users to search for related sites or information based on selected specific visual content that the user chooses to view from a web page or pages.
With the rapid development and general acceptance of the World Wide Web as the ultimate medium and resource library, software and hardware applications have been developed to help use, organize, and share some of these resources. E-Mail is one of the most popular applications used today. Email, however, is not capable of addressing all of the aforementioned concerns or issues that users encounter online.
Summary of the Invention
The invention provides a system, method and apparatus for selecting, displaying, managing, tracking and transferring access to content accessible by computing devices, such as content in web pages, pop-up windows, players and plug- ins available on the World Wide Web, word processor documents, spreadsheets, and other like content. The selected content can be in the form of plain text, or can be in the form of static or dynamic graphic images, such as pictures, movies, animations, web casts, "3-D" images, or the like. Further, using the system, the User can select several different content items, of the same type or of different types, and place all of the items in an independent browser window. Importantly, the content placed in the independent browser window only contains the content selected by the User, and does not contain other content which may be present in the original source of the content. For example, a User may wish to select a specific image or string of text from a web page containing several images or a lengthy text section. Thus, the system allows the User to create an independent window with only the desired content item, free from other content items on the source, which permits the User to focus on the desired content item. Thus, the system provides a heretofore unavailable ability for a User to create a grouping, or custom selection of content available from the World Wide Web or other sources.
The system also provides the ability to adjust both the size of the entire independent browser window, and, separately, the size of each content item within the window. Other important capabilities of the system include the ability to easily search for content similar to the selected content and the ability to transfer access to the custom selection to others via electronic mail, instant messenger applications, and other electronic communications methods.
The invention is effected, in part, by software added to the User's computing device, which is preferably in the form of a plug-in to an Internet browser, such as the Internet Explorer ™ Internet browser of Microsoft Corporation or the Netscape Navigator™ Internet browser of Netscape Corporation, or similar content viewing applications. The software on the User's computing device modifies the User's browser to allow the User to select desired content from a web page or other document or spreadsheet, or the like, and to place the desired content in an independent browser window, free from other content on the source web page or document. To access functions provided by the software, the software creates a toolbar on the browser, the Main Toolbar, having menu items or icons which activate the functions.
In a prefened form, the software allows the User to select desired content from a web page by directing the mouse pointer over the content, depressing the right mouse button (i.e., "right click") and choosing a Select Content Function offered in an otherwise standard pop-up menu. (In the drawings included herewith, the Select Content Function on such pop-up menu is identified by the word "Amplify" ™). In the case of a text selection, the User preferably first defines the desired text by using the standard "click and drag" method and then the "right click" method.
For some types of content, such as media content, the system may place a floating icon over the content when the mouse is directed over the content. The floating icon can be used (clicked on) to select the content item with one click. Preferably, the floating icon appears as an overlay on top of the content item and only appears when the User directs the mouse pointer over the content item. Thus, the floating icon does not ordinarily obscure the content item.
After the User selects the content, the software may present the User with a Properties Window that allows the User to enter a descriptive Description for the Custom selection being created by the User, and allows the User to enter Keywords for the custom selection. As described in detail below, the software uses the Keywords to perform searches for similar content on the World Wide Web.
Next, the software creates an independent browser window, the Custom Selection Window, containing only a relatively small toolbar, the Window Toolbar, and the custom selection of the content items selected by the User. This allows the User to select and focus on desired content free from additional, and possibly distracting, content on the source page.
Preferably, the Custom Selection Window is of a predetermined size and may be resized by the User in the known manner of resizing windows. Also, preferably, the content selected by the User is set to occupy specific percentages of the height and width of the window (other than the Window Toolbar), such as 100%. Thus, when the User adjusts the height or width (or both) of the Custom Selection Window, the browser adjusts the dimensions of the content within the window proportionately.
Certain content available on the World Wide Web, such as movies, animations and web casts, 3-D images and the like, may require that additional software be present on the User's computer. Such additional software includes media players such as Microsoft's Windows Medial Player, Real Media's Real Player, Apple's Quicktime, and other similar media players, and includes other "applets", plug-ins, applications and programs. The User would need to install this software prior to using the system of the invention for these types of content.
The system allows the User to have several instances of the Custom Selection Window open simultaneously, each window containing a different custom selection. If additional software is required to view a content item in a Custom Selection ' Window, such as a media player or applet, or the like, the additional software is preferably defined within the Custom Selection Window as an "embedded object", which allows multiple instances of the additional software to operate on the computing device at the same time. In this manner, the User can select and view several content items requiring the same additional software simultaneously.
This system also allows the User to add additional content items to an existing Custom Selection Window. The User can preferably define whether the additional content item is to appear above, below, to the right, or to the left of an existing content item. The process can be repeated to populate a Custom Selection Window with yet more content items.
The several content items contained within one Custom Selection Window are each placed within an individual frame created within the window, which frames are preferably set to collectively occupy specific percentages (e.g., 100%) of the height and width of the Custom Selection Window (not including the Window Toolbar, as discussed above). Further, as with a single content item, each of the several content items is preferably set to occupy specific percentages (e.g., 100%) of the height and width of its respective frame. The User may also preferably resize the frames. Thus, when a frame for a content item is resized, the browser resizes the content within that frame, and, importantly, resizes the other frames (and the content therein), proportionately. It can be appreciated that the ability to anange, size and resize multiple content items within one independent browser page gives the User great flexibility when creating custom selections. Preferably, each frame of a Custom Selection Window includes a toolbar, the Frame Toolbar, having predefined functions that are applied with respect to the specific content item located in the frame, as opposed to Window Toolbar which has functions that are applied with respect to the Custom Selection Window as a whole. For example, the Frame Toolbar preferably contains icons that allow the User to divide (and sub-divide) each frame to allow the User to populate the Custom Selection Window with multiple content items, as described above. Preferably, the Frame Toolbar appears as an overlay to the content item within the frame and only appears when the User directs the mouse pointer over the content item (i.e., on a so- called "mouseover" event). Thus, the Frame Toolbar does not ordinarily cover or otherwise obscure the content item located within the frame.
The Frame Toolbar preferably provides a menu item or icon to select the content item located within the respective frame and place the content item in a new Custom Selection Window in a manner similar to selecting content from an original source page. Thus, using this function, the User can pick desired content items out of an existing Custom Selection Window. In addition, the Frame Toolbar preferably includes a menu item or icon to Refresh the content item in the respective frame. The Window Toolbar also preferably provides a similar function to refresh all of the content items within a Custom Selection Window simultaneously.
Once a Custom Selection Window is created, the system provides the ability to search the World Wide Web for content similar to the selected content. To perform such a search, the User can select a Search function provided by the software, which is preferably accessible via an icon on the Window Toolbar of the Custom Selection Window or on the Frame Toolbar. Upon receiving such a search command, the software opens a new browser page and queries a predetermined World Wide Web search engine, such as google.com, or the like, with certain Search Parameters. The Search Parameters are created from a group including the domain name of the source of a content item in the Custom Selection Window, the title of the original web page of the content item, and the Keywords. Preferably, the search can be performed on the basis of the Search Parameters of the entire Custom Selection Window (via the Window Toolbar), or on the basis of an individual content item within a frame of the Custom Selection Window (via the Frame Toolbar).
The result of the search is an independent browser window containing "hits" returned by the search engine, which should be relevant to the selected content or source of the content. As is common, the hits are typically in the form of short descriptions of the search results accompanied by hypertext links, or universal resource locators (i.e., url's), which lead to web pages.
The system also provides the ability for the User to open a new browser window containing either the entire web page of a selected content item, or containing the main or "home" web page of the domain for the selected content. These functions, the GoTo This Page and GoTo This Site functions are preferably made available via menu items or icons on the Window Toolbar or via menu items or icons on each Frame Toolbar. Thus, the system provides a quick and convenient means to find and view the source of selected content items.
Further, the system provides the ability to maintain the Custom Selection Window as the "top" window on the computing device. This function, the Always On Top function, is preferably made available via a menu item or icon on the Window Toolbar. When the Always On Top function is selected (i.e., "on"), the Custom Selection Window will remain visible as the top window on the computing device inespective of whether the User selects another window, such as another program, as the active window. With this function, the User can quickly and conveniently select and focus on a desired content item, such as a streaming video, and ensure that the content item is always visible even if the User is working with another program. As mentioned above, the User can resize and relocate the Custom Selection Window to view other programs, as desired.
The system also provides the ability for the User to save a Custom Selection
Window for later viewing. One mode of this feature creates a Most Recently Used (MRU) list, or History, which saves a predetermined number (e.g., 20) of the last saved custom selections, in chronological order of use. Another mode of this feature, the Send to Favorites function, creates a semi -permanent list of Favorites. A Favorites List is preferably made available via a menu item or icon on the Window Toolbar. Preferably, the Main Toolbar, accessible on the main browser, includes a retrieval function, the GoTo Favorites function, accessible via a menu item or icon. When selected, the GoTo Favorites function displays a list of saved Custom Selection Windows, which are identified by the Description entered by the User when creating the Custom Selection Window. Thus, once a Custom Selection Window is sent to Favorites, the User can quickly and conveniently recreate the window at a later time by choosing the selection from the list of Favorites. The system also provides a convenient means for the User to print the Custom Selection Window. The Send To Printer function is preferably made available via a menu item or icon on the Window Toolbar.
Importantly, the system also provides the ability for the User to transfer a Custom Selection Window to another computing device (a Recipient) via electronic mail, instant messenger programs, or other similar electronic communication means. This function, the Send To Friends function, is preferably made available via a menu item or icon on the Window Toolbar. Upon selecting the Send To Friends function, the software presents the User with a dialog window to enter the Electronic Address of the Recipient (e.g., the email address, or instant messenger name). The software also preferably provides the ability to save the Electronic Addresses of Recipients, identified by a descriptive Recipient Name entered by the User, in a Friends List for future use.
When a Recipient is entered (or chosen), the software sends a Definition of the
Custom Selection Window to a Server. The Definition includes a predefined, unique identifier for the sender (the User Identifier), the Description, the anangement and sizes of the frames in the window and the Keywords. For image content, the Definition also includes the universal resource locator (url) for the image content. For text content, the Definition also includes either the entirety of the selected text or the url for the source of the text and parameters that define the location of the beginning and end of the selected text within the source of the text. Upon receipt of the Definition, the Server assigns a unique Window Identifier to the Custom Selection Window. At this point, an electronic message is sent to the Recipient at the Electronic Address of the Recipient via electronic mail, instant messaging program, or other electronic means, as appropriate. The electronic message sent to the Recipient contains a hypertext link, or universal resource locator (url) which leads back to the Server. As described below, the link contains the Window Identifier of the Custom Selection Window. The electronic message can be sent by the Server or can be sent by the computing device of the User. In the case where the electronic message is sent by the User, the Server transmits the Window Identifier of the Custom Selection Window to the User and the Window Identifier is incorporated into the electronic message as described above.
The presence of the Keywords in the Definition provide an important function by allowing the creator of the custom selection to provide targeted words to search for related content on the web. As a part of the Definition, the Keywords are attached to the Custom Selection Window and remain with the Custom Selection Window when it is saved by the User (or sent to the Favorites List), and travel with the Custom Selection Window when the Custom Selection Window is accessed by a Recipient.
It should be noted that the electronic message sent to the Recipient does not contain the content items themselves, but only a link to the Server. As opposed to prior methods of sending entire content items to a recipient, the present invention greatly reduces the time and bandwidth required to send an electronic message to another to share content over a network such as the World Wide Web. Moreover, electronic messaging systems often have limitations in the type and amount of content that each can transmit in a single message. For example, electronic mail systems typically limit messages to a certain size and instant messaging systems typically do not allow the transfer of images and typically limit the amount of text in a message to a certain number of characters. The present invention overcomes these limitations by sending an electronic message containing a link used to re-create the custom selection. Upon receiving the electronic message, the User can recreate the Custom Selection Window by selecting, or clicking on, the hypertext link in the message. When the Recipient selects the link within the electronic message, the computing device of the Recipient activates a browser application that sends a request to the Server, which request contains the unique Identifier of the Custom Selection Window. The Server responds with a web page that recreates, on the computing device of the Recipient, the custom selection as defined by the sender.
Importantly, preferably a standard browser application can create a Recipient Window containing the custom selection without the additional software required to initially create and send the custom selection. Therefore the User is able to transmit access to the custom selection to another computing device on the network, even if the other computing device does not have the additional software required to initially create the custom selection.
Preferably the Recipient Window is configured to load the content items of the custom selection via the browser application on the computing device of the Recipient directly from the respective sources of the content. Thus, by employing the browser application on the computing device of the Recipient to retrieve and load the content items, the system of the present invention avoids the content type and size limitations of electronic messaging systems, as discussed above.
The Recipient Window also preferably includes a tool bar, the Recipient Toolbar, that provides certain functions to the Recipient related to the custom selection in the Recipient Window. The Recipient Toolbar preferably includes Search, Goto This Page, GoTo This Site, and Print functions, similar to those functions provided by the Window Toolbar, to allow the User to search the World Wide Web for content related to the content in the Recipient Window, to open another browser window with either the source web page containing the content item or the web site of the domain of the source web page, or to print the Recipient Window. As mentioned above, the custom selection received by the Recipient includes the Keywords in the Definition, which allows the Recipient to perform targeted searches of the web for related content.
The initial web page sent to the Recipient preferably senses whether the
Recipient has installed the software on their computing device. If so, the Recipient has the full functionality of the Custom Selection Window, including the functionality of the Window Toolbar, as described above. In particular, the Recipient has the ability to save the Custom Selection Window to the History List, the Favorites List and has the ability to transfer access to the Custom Selection Window to other computing devices, among the other functionality described above.
The software is preferably compatible with several different computing platforms, such as Microsoft Windows-based and Apple computers, internet appliances, personal digital assistants (PDAs, such as the Palm Pilot, and the like), and other computing platforms, such that custom selections can be shared among Users of various computing devices. Further, certain items of User-defined attribute information, such as the User's Favorites and the Friends List, are preferably portable amongst various computing devices of the User. The software accomplishes this function by transmitting the attribute information to the Server and storing the information along with the unique User Identifier. The User's attribute information is retrieved using the User Identifier when the User first launches the browser. Thus, the system provides a consistent and familiar experience regardless of which computing device the User chooses.
The system also provides a highly accurate and flexible means to track content viewed and shared by Users and Recipients. The Server is contacted whenever a custom selection is saved to or chosen from the Favorites list, when a custom selection is sent to another device using an electronic message, and when a Recipient views a received custom selection. During each of these actions, the unique Identifier of the custom selection is sent to the Server, which Server contains the Definition of the custom selection. Therefore, in the case of custom selections of a User's Favorites List, the system can track and compile statistics including regarding what content items have been selected, what content items are selected in the same window, the number of times a selected item (or group of items) is viewed, and the frequency of viewing. Such statistics can be compiled along with the unique User Identifier to track such information with respect to a particular User, or can be compiled "blind" without regard to a particular User.
For custom selections shared with others, the system can also track and compile statistics on what content items (or groups) are shared with others (and by whom), the number of times a Recipient views a selection, the frequency of viewing, and the chosen method of messaging. As an example, the system can track statistics regarding a User viewing (and likely comparing) images of two products side-by-side in a custom selection, and can track statistics about any sharing of that custom selection. This tracking can be accomplished whether the two images are on the same site or different sites.
Further, the system does not rely on pre-placed tracking devices, such as "cookies" or "web bugs." The tracking capability of the present invention is based on the content items themselves, in their unaltered format. Moreover, the tracking capability of the system is highly targeted in that it is able to track viewing and transferring of specific content items, whereas traditional tracking methods such as cookies and web bugs typically only track views of entire web pages. Further, since communication with the Server is required for certain actions, such as saving and retrieving, the tracking capabilities of the system cannot be circumvented. Therefore, the system provides a very non-invasive reliable, highly targeted and flexible tracking system.
It can be appreciated that the present invention provides a convenient method for a User to create, view, modify, print and save custom groupings of image and text content items available on web pages and other sources, to search for other related content, and to transfer access to such selections with others, which method is effected in a manner which avoids the limitations of electronic communications methods, which reduces the time and bandwidth required to share the custom groupings via electronic messages, and which provides for highly accurate and flexible tracking of such content viewing and sharing.
Brief Description of the Drawings
For a complete understanding of the above and other features of the invention, reference shall be made to the following detailed description of the prefened embodiments of the invention and to the accompanying drawings, wherein:
FIG. 1 is an image of an Internet browser application showing the Main Toolbar of the present invention;
FIG. 2 is an image of the Main Toolbar showing the Identified Content Item List;
FIG. 3 is an image of the Select Content Item Function invoked by the "right- click" method of selecting a content item;
FIG. 4 is an image illustrating the floating Instant Selection Icon;
FIG. 5 is an image of the Properties Window;
FIG. 6 is an image of a Custom Selection Window having a single image content item;
FIG. 7 is an image of a Custom Selection Window having a content item in a top frame and a blank bottom frame;
FIG. 8 is an image of the Select Target Window;
FIG. 9 is an image of a Custom Selection Window having an image content item in a top frame and an animation content item in a bottom frame; FIG. 10 is an image of a Custom Selection Window having a bottom frame divided into right and left frames;
FIG. 11 is an image of a Custom Selection Window having an image content item in a top frame, having an animation content item in a left bottom frame and having a text content item in a right bottom frame;
FIGs. 12 and 13 are images of a Custom Selection Window as in FIG. 11, showing a Frame Toolbar in the top frame;
FIG. 14 is an image of the (Go To) History menu item of the Main Toolbar;
FIG. 15 is an image of the (Send To) Favorites menu item of the Window Toolbar;
FIG. 16 is an image of the (Go To) Favorites menu item of the Main Toolbar;
FIG. 17 is an image of the (Send To) Recipients menu item of the Window Toolbar;
FIG. 18 is an image of the Edit Recipients dialog window;
FIG. 19 is an image of the Recipient Window;
FIG. 20 is an image of a Custom Selection Window showing the Create Link Window Toolbar menu item;
FIG. 21 is an image of an electronic messaging application message containing a Link to a Custom Selection Window;
FIG. 22 is an image of a System Area Icon and System Area Menu; and FIG. 23 is an image of a Return To Search Results icon and a condensed Search Results List.
Detailed Description of the Invention
Referring to FIG. 1, to employ the present invention, the User installs software on the User's computing device that adds functionality to the Internet browser application and operating system of the User's computing device. Upon installation of the software, the software communicates with a remote Server that assigns a unique User Identifier for the User and transmits the User Identifier to the User's computing device, which stores the User Identifier on a memory device for later use.
Selecting Content Items
The software adds a Main Toolbar 10 to the browser application 12 on the User's computing device to allow the User to create a custom selection by selecting desired content items from a web page or other document or spreadsheet, or the like, and to place the desired content items in an independent browser window, free from other content on the source web page or document. As discussed in detail below, the Main Toolbar 10 has menu items or icons that activate some of the functions.
By default, the software may analyze web pages and other types of sources upon loading into the browser application to identify content items supported by the software and to determine the network locations of the content items. A list of supported content is preferably contained in a file stored on the User's computing device, such as in a Dynamic Link Library (DLL), that can be updated automatically as new types of content become supported by the software. The Main Toolbar 10 preferably provides a menu item that allows the User to disable the automatic page scanning if desired.
Referring to FIG. 2, the Main Toolbar 10 includes an Identified Content 14 menu item that displays an Identified Content Items List 16 of supported and identified content items in the web page or source cunently loaded into the browser application. The User can select a desired content item by clicking on the item in the Identified Content Items List 16.
Referring to FIG. 3, the User can also select a desired content item from a web page by directing a pointing device of the computing device (e.g., a mouse pointer) over the content item 18 in the page, depressing the right mouse button (i.e., "right click") and choosing a Select Content Item Function 20 offered in an otherwise standard pop-up menu 22. (In the drawings included herewith, the Select Content Item Function 20 on such pop-up menu 22 is identified by the word "Amplify" ™).
It should be noted that, when selecting content items, the software obtains the network location and name of the content item from the web page or other source of the content item and retains the network location in memory, which is preferably temporary memory. Further, it should be noted that content items (and groups of content items) can be selected using the standard "click and drag" method and then the "right click" method.
In the case of a content item that is text, the User preferably first defines the desired text by using the standard "click and drag" method and then the "right click" method. This function is also operable to select non-text content items. A group of non-text content items or a group of text and non-text content items may be selected in a similar manner by selecting the entire group, for example using the "click and drag" method. Preferably, a select function inherent in the operating system (e.g., Windows™) is employed to obtain HTML coding or other formatting instructions for the text and/or non-text content items. It should be noted that, as used herein, the term "click" is meant to encompass any means or method by which the pointing device receives a selection command from the User.
Referring to FIG. 4, for some types of content, such as media content, the system preferably places a floating, Instant Selection Icon 24 over the content item 18' when the User directs the mouse pointer over the display area or frame of the content item. The Instant Selection Icon 24 can be used (clicked on) to select the content item 18' with one click. Preferably, the Instant Selection Icon 24 appears as an overlay on top of the content item 18' and only appears when the User directs the mouse pointer over the display area or frame of the content item. Thus, the Instant Selection Icon 24 does not ordinarily obscure the content item.
Window Description and Keywords
Referring to FIG. 5, after the User selects the content item, the software may present a Properties Window 28 that allows the User to enter a Description 30 for the custom selection being created by the User, and allows the User to enter Keywords 32 for the custom selection. As described in detail below, the software uses the Keywords 32 to perform searches for similar content on the World Wide Web.
The Custom Selection Window
Referring to FIG. 6, the software then creates an independent browser window, the Custom Selection Window 34, containing only a relatively small toolbar, the Window Toolbar 36, and the custom selection of the content item 18 selected by the User. This allows the User to select and focus on desired content free from additional, and possibly distracting, content on the source page. The network location of the content item is retrieved from the (temporary) memory to which it was stored during the selection process.
The software preferably loads the content item into the Custom Selection
Window 34 directly from the original (network) source of the content item identified during the selection process. It is intended that the term network source as used herein include any cached source that may be present on the network.
Preferably, the Custom Selection Window 34 is of a predetermined size and may be resized by the User in the known manner of resizing windows. Also, preferably, the content item 18 selected by the User is set to occupy specific percentages of the height and width of the window (other than the Window Toolbar 36), such as 100%. Thus, when the User adjusts the height or width (or both) of the Custom Selection Window 34, the browser application adjusts the dimensions of the content item 18 within the window proportionately. However, the system preferably maintains any original aspect ratio settings of the content item.
Certain content available on the World Wide Web, such as movies, animations and web casts, 3-D images and the like, may require that additional software be present on the User's computer. Such additional software includes external player programs (such as Microsoft's Windows Medial Player, Real Media's Real Player, Apple's Quicktime, and other similar media players), helper application, "applets", plug-ins, and other programs. The User would need to install this software prior to using the system of the invention for these types of content.
The software allows the User to have several instances of the Custom Selection Window 34 open at any given time, each window containing a different custom selection. If additional software is required to view a content item in a Custom Selection Window 34, such as a media player or applet, or the like, the additional software is preferably defined within the Custom Selection Window as an "embedded object", which allows multiple instances of the additional software to operate on the computing device at the same time. In this manner, the User can select and view several content items requiring the same additional software at the same time.
Inserting Additional Content Items Into a Custom Selection Window
Referring to FIGs. 6 & 7, the software also allows the User to add additional content items to an existing Custom Selection Window 34. To do this, the User preferably first divides a Frame 37 of an existing content item 18 in the Custom Selection Window 34 to add a new frame to the window. The Frame Toolbar 38, which appears over the content item 18 in the Custom Selection Window 34, includes New Frame Bottom, New Frame Top, New Frame Right, and New Frame Left icons 40, 42, 44, 46 (or menu items) that add a new frame below, above, to the left or to the right, respectively, of the existing content item 18. The software preferably divides the frame 36 of the selected content item 18 into two, equal, sub-frames 48, 50, with one of the frames 48 occupied by the existing content item 18 and the other frame 50 blank. Then, the User selects an additional content item in the manner described above.
Referring to FIG. 8, upon the selection of an additional content item, the software determines whether there exist other, open Custom Selection Windows. If so, the software presents a Select Target Window 52, that displays an Open Window List 54 of all open Custom Selection Windows, which are preferably identified by the Description 30 entered by the User when creating the windows. Preferably, the User can select an open window from the Open Window List 54. The Select Target Window 52 also preferably provides a New Window 56 button, icon or menu item to allow the User to place the content item in its own Custom Selection Window, if desired.
Upon the selection of an open Custom Selection Window as the target, the software displays the selected Custom Selection Window 34, which includes the frame 48 occupied by the existing content item 18 and a blank frame 50 (as shown in FIG. 6). If the Custom Selection Window 34 contains more than one blank frame, the software then preferably pauses and prompts the User to select the blank frame in which to place the additional, content item. The User can select the desired blank frame by clicking within the border of the frame. If the Custom Selection Window 34 contains only one blank frame then the software may automatically place the additional content item within that frame.
Referring to FIG. 9, the software then displays the modified Custom Selection Window 34, which now contains both the first content item 18 (e.g., in the top frame 48) and the additional content item 58 (in tlie bottom frame 50).
Referring to FIGs. 10 & 11, the process can be repeated to populate the
Custom Selection Window 34 with more content items. In this case, a new frame 60 is added to the right of the bottom frame 50. As above, the new frame 60 is added by selecting the New Fame Right icon 44 in the Frame Toolbar 38 (not shown) of the bottom frame 50 to add a frame to the right of the bottom frame 50. As shown, a text selection content item 62 can then be placed in the new frame 60 in the manner described above.
The software preferably defines the frames of the Custom Selection Window
(in HTML) to collectively occupy specific percentages (e.g., 100%) of the height and width of the Custom Selection Window (not including the Window Toolbar 36). Further, as with a single content item, each of the several content items is preferably set to occupy specific percentages (e.g., 100%) of the height and width of its respective frame. The User may also preferably resize and rescale the frames in a Custom Selection Window by relocating a border between frames by clicking on and dragging a border 64 to a new location. When the frame border is relocated, the browser application resizes both of the content items within the frames that share that border 64, proportionately. However, the system preferably maintains any original aspect ratio settings of the content item. It can be appreciated that the ability to arrange, size and resize multiple content items within one independent browser page gives the User great flexibility when creating custom selections.
As a first step in creating the Custom Selection Window 34, the software first determines what type of content has been selected and determines whether there exists other open Custom Selection Windows. An example of the code for these steps is set for the in Table A.
TABLE A
' Public Sub Amp]ify(ByRef oSourceDocument As MSHTML.HTMLDocument, ByRef oAmplifyObject As Object) ' Parameters:
' oSourceDocument - An object reference to the document that the item being amplified originated from ' oAmplifyObject - An object reference to the item being amplified
Public Sub AmpIify(ByRef oSourceDocument As MSHTML.HTMLDocument, ByRef oAmplifyObject As Object)
Dim xmlAmplifyltem As MSXML.DOMDocument
' Determine what type of content is being amplified
Select Case TypeName(oA plifyObject) Case "HTMLlmg"
Set xmlAmplifyltem = AmplifyHTML)mg( oSourceDocument, oAmplifyObject) Case "IHTMLTxtRange"
Set xmlAmplifyltem = Amph'fyIHTMLTxfRange(oSourceDocument, oAmplifyObject) Case "HTMLObjectElement"
Set xmlAmplifyltem = Amplif HTMLObjectElement( oSourceDocument, oAmplifyObject) End Select
If Not xmlAmplifyltem Is Nothing Then ' If there is already an amplification window showing, then give
' the user the choice of using a new or existing window. If 1 Amplify Count > 0 Then ' Show window choice form Dim oAmpIifyForm As New Amplify.frmAmplify Load oAmpIifyForm
Set oAmplifyForm.Amplifyltem = xmlAmplifyltem Show indowEx oAmplifyForm.h nd Set oAmpIifyForm = Nothing Else ' No windows existed, create a new one
Dim oAmplification As New Amplify .Amplification oAmplification.Load oAmplification.Addltem xmlAmplifyltem Set oAmplification = Nothing End If
End if
Set xmlAmplifyltem = Nothing
End Sub
The software then defines certain parameters of the content item, such as the source page or document of the content item and the file name of the content item. An example of this step, for an image content item, is set forth in Table B.
TABLE B
' Private Function Amplify HTMLImg(ByRef oSourceDocument As MSHTML.HTMLDocument, ByRef olmage As MSHTML.HTMLJ.mg) As MSXML.DOMDocument ' Parameters: oSourceDocument - An object reference to the document that the item being amplified originated fio olmage - An object reference to the image being amplified ' Return Value: ' MSXML.DOMDocument object containing the xml structure of the image Private Function AmplifyHTMLlmg(ByRef oSourceDocument As MSHTML.HTMLDocument, ByRef olmage As MSHTML.HTMLlmg) As MSXML.DOMDocument
Dim xmllmage As New MSXML.DOMDocument
xmUmage.async = False
LoadResXML xmllmage, "amplifyimage.xml"
BuildSourceNode xmlImage.seIectSingleNode("frame/soυrce"), oSourceDocument
With mlImage.selectSingleNode("frame/image")
.selectSingleNode("src").Text = olmage.src
.seIectSingleNode("alt").Text = olmage.alt .selectSingleNode("height").Text = olmage.Height
.selectSingleNode("width").Text = olmage. idth
'.selectSingleNode("mime-type").Text = olmage.mimeType End With
Set AmplifyHTMLlmg = xmllmage
Set xmllmage = Nothing
End Function
Then, the software launches a new browser application window and passes the XML structure of the image to the new window. An example of the code for this step, for an image content item, is set forth in Table C.
TABLE C
' Public Sub AddItem(ByRef oAmplifyltem As MSXML.DOMDocument) ' Parameters: ' oAmplifyltem - An object reference to the x l containing the structure of the item being amplified
Public Sub AddItem(ByRef oAmplifyltem As MSXML.DOMDocument) ' Copy the xml to a local object for later use
Set xmlltemWaiting = oAmplifyltem.documentElement.cloneNodefTrue) ' Set the item waiting flag bItemWaitmg = True
1 Check to see if the choose your target splash screen should be displayed
If CLng(GetSetting(REG_APP_NAME, REG_SECT PREFERENCES, REG_KEY_TARGET_WTNDOW_HINT, 0)) = 0 Then fxmChooseTarget.Show vbModeless, Me End If
End Sub Upon the creation of the new window, the software pauses to receive an indication from the User as to the desired location of the content item within the new window. As stated above, if there is only one possible (i.e., blank) frame for the content item, then the software may automatically insert the content item in that frame. An example of the code for this step is set forth in Table D.
TABLE D
' Private Sub AddItem_Callback(ByRef oTargef indow As MSHTML.HTMLWindow2, ByRef xmlltem As MSXML.IXMLDOMNode, Optional ByRef bSetDirty As Boolean = True) ' Parameters:
' oTargefWindow - An object reference to the target window for the item being amplified ' xmlltem - An object reference to the xml of the item being amplified
' bSetDirty (Optional, Default = True) - Boolean value indicating weather or not to set the dirty flag for the amplification
Private Sub AddItem_Callback(ByRef oTargefWindow As MSHTML.HTMLWindow2, ByRef xmlltem As MSXML.IXMLDOMNode, Optional ByRef bSetDirty As Boolean = True)
' Determine what type of content is being amplified Select Case xmlItem.selectSingleNode("@type").Text Case "HTMLlmg"
Call AddHTMLImg(xm]ltem, oTargefWindow) Case "IHTMLTxtRange"
Call AddIHTMLTxtRange(xmlItem, oTargefWindow) Case "HTMLObjectElement" Call AddHTMLObjectElementfxmlltem, oTargefWindow) End Select
xmlAmplif5cation.selectSingleNode(''amplification frames'').appendChild xmlltem
oAmplification.Dirty = bSetDirty
bltemWaiting = False
End Sub
In the code set forth in Table D, the software again determines the type of the content item and calls an appropriate function to populate the target frame with the content item. An example of the code to populate the target frame for an image content item is set forth in Table E. TABLE E
' Private Sub AddHTMLImg(ByRef xmllmage As MSXML.IXMLDOMNode, ByRef oTargetWmdow As MSHTML.HTMLWindow2)
' Parameters:
' xmllmage - Object reference to the xml for the image being amplified
' oTarget Window - Object reference to the target window for the image
Private Sub AddHTMLImg(ByRef xmllmage As MSXML.IXMLDOMNode, ByRef oTargefWindow As MSHTML.HTMLWindow2)
Dim olmage As MSHTML.HTMLImg
' Load the html for the image into the target window oTargetWindow.navigate AMPLIFY_RES_PATH + " html/amplifyimage.html" ' Waite for the window to finish loading
DoEvents
Do Until oTargetWindow.document.readyState = "complete" DoEvents
Loop ' Set the base href of the window
Se BaseHREF oTargetWindow.document, xmlImage.selectSingleNode("source")
' Get an object reference to the empty image loaded in the window
Set olmage = oTargetWindow.document.getElementById("oImage")
' Set the image properties With xmlϊmage.selectSingleNode("image") olmage.src = .selectSingleNode("src").Text olmage.alt = .selectSingleNode("alt").Text
End With
' Make the image visible olmage.Style. visibility = "visible"
Set olmage = Nothing End Sub
The XML structure of a content item preferably includes tags related to the network location and other aspects ofthe source ofthe content item such as the protocol (e.g., http), host (e.g., amplifytheweb.com), path (e.g., /images/), page (e.g., page.html), and query. For an image item, tlie XML structure also preferably includes tags related to the file name (e.g., image.jpeg), alternate information (e.g., "A JPEG image"), height and width. An example ofthe XML structure for an image content item is set forth in Table F. TABLE F
<frame id="" type="HTMLlmg"> <source
<protocol l> <host / <pafh / <page /> <query l>
</source> <image>
<src /> <alt > <height l> <width /> <mime-type /> <scale>Y</scale>
</image>
</fτame>
The HTML code loaded into a frame includes instructions that define the appearance ofthe content item in the frame. An example ofthe HTML code the frame of an image content item is set forth in Table G.
TABLE G
<html>
<head>
<base id="oBaseHREF" href="" target="_blank">
< head>
<body leftmargin="2" topmargin="2" bottommargin="2" rightmargin="2" onresize="Resizelmage();">
<table cellpadding="0" cellspacing="0" border="0" height="100%" width="100%">
<tr>
<td align="center" valign- 'middle">
<img id="oImage" border="0" style="visibility:hidden;" on]oad="SetupImage();" onmouseoveι="ShowImageToolbar();" onmouseout="HidelmageToolbar( false);" gall eιyimg="no"><br> </td>
</tr> </table>
<button
Figure imgf000030_0001
style="position:absolute;top:0px;left:0px;background- coloπbuttom%ce;visibility:hidden;'' onmouseoul?=''HidelmageToolbaπ;fa]se);''> < button>
< body>
</html>
As discussed above, the software allows the User to divide frames of an open Custom Selection Window to insert additional content items into the window. An example ofthe code to divide a frame of a Custom Selection Window is set forth in Table H.
TABLE H
' Private Sub SplitFrame(ByRef oSpli Frame As MSHTML.HTMLFrameElement, ByRef sNewFrameLocation As String) ' Parameters: ' oSpIitFrame - An object reference to the frame being split
1 sNewFrameLocation - String containing the location ofthe new (blank) frame
Private Sub SplitFrame(ByRef oSpli Frame As MSHTML.HTMLFrameElement, ByRef sNewFrameLocation As String)
Dim oNewFrameset As MSHTML.lHTMLFrameSetElement Dim oReplaceFrame As MSHTML.HTMLFrameElement
Dim oNewFrame As MSHTML.HTMLFrameElement
oSplitFrame.Style.border = "Opx"
If sNewFrameLocation = "NewFrameTop" Or sNewFrameLocation = "NewFrameBotto " Then
Set oNewFrameset = oDocument.createElement("<frameset rows=""50%,50%"">") Else
Set oNewFrameset = oDocument.createElement("<frameset cols=""50%>50%"">") End If Set oReplaceFrame = oSpiitFrame.ρarenf£lement.replaceChild(oNewFrameset, oSplifFrame)
Set oNewFrame = oReplaceFrame.cloneNode(False) oNewFrame.id = "fraAmplify" + CStr((oDocument.frames.Length + 1)) oNewFrame.src = "about:b)ank"
If sNewFrameLocation = "NewFrameRight" Or sNewFrameLocation = "NewFrameBottom" Then oNewFra eset.appendChild oReplaceFrame oNewFrameset.appendChild oNewFrame Else oNewFrameset.appendChild oNewFrame oNewFrameset.appendChild oReplaceFrame End If
Set oNewFrame = Nothing Set oReplaceFrame = Nothing Set oNewFrameset = Nothing End Sub The HTML code that defines the frameset for a Custom Selection Window preferably defines the frames as predetermined percentages ofthe window. The code may also identify the Custom Selection Window by a unique Window Identifier. The code set forth in Table I below defines a frameset having a top and bottom frame for a Custom Selection Window having a Window Identifier of 579E3E1B-F2A9-42A3- 91AC-1635B0A67D04.
TABLE I
<btml>
<head>
</head>
<frameset ><fιmneset rows="50%,50%"><frame src="amplification_view_frame.asp?amplification={579E3ElB- F2A9-42A3-91 AC-1635B0A67D04}&frame=fraAmρlify0" scrolling="no"><frame src="amplificafion_view_fJmne.asp?amp]ification={579E3E]B-F2A9-42A3-91AC-1635B0A67D04}&fTame=fraAmplifyr' scrolling="no"></frameset></frameset>
< html>
An example ofthe HTML code for a frame for an image content item for the
Custom Selection Window defined by the frameset defined by the code set forth in the above Table I is set forth below in Table J.
TABLE J
<btml>
<head>
<base href="http://www.amplifytheweb.com/" target="_blank">
<script language="JavaScript"> <!-- var lOriginalHeight = 54; var lOriginalWidth = 232; var bScalelmage = true;
function GetlmageRatio() { var dHeightRatio = 0.0; var dWidthRatio = 0.0; if (document.body.clientHeight <= 20 || document.body.clientWidth <= 20) { dHeightRatio = 1 ; dWidthRatio = 1 ;
} else { dHeightRatio = lOriginalHeight / (document.body.clientHeight - 4); dWidthRatio = lOriginalWidth / (document.body.clientWidth - 4);
} return dWidthRatio > dHeightRatio ? dWidthRatio : dHeightRatio;
} function Resizelmage() { if (IbScalelmage) { return;
} vardRatio = 0.0; dRatio = GetlmageRatioO; oImage.style.hεight = Math.round(10riginalHeight / dRatio); olmage.style. width = Math.roundQOriginaϊWidth / dRatio);
} function Scalelmage() { bScalelmage = IbScalelmage; if (bScalelmage) {
HidelmageToolbar(true); Resizelmage(); } else {
HidelmageToolbai.trae); olmage.style.height = "; olmage.style. width = ";
/->
</script>
< head>
<body
Figure imgf000033_0001
<table cellpadding="0" cellspacing="0" border="0" height="100%" width="100%"> <tr>
<td align="center" valign- 'middle">
<img id="oImage" src="image.jpeg" alt="" onload="ResizeImageO;" <br> </td> </tr> </tab!e>
</body> </html>
An example ofthe HTML code for a frame for an MPEG movie content item for the Custom Selection Window defined by the frameset defined by the code set forth in the above Table I is set forth below in Table K.
TABLE K
<html>
<head>
<base href="http://www.amp]ifytheweb.com " target="_blank"> </head> <body leftmargin="l " topmargin="l " bottommargin- 'l " rightmargin- 'l " bgcolor="#000000">
OBJECT ID="oWindowsMedia" width="100%" height="100%" classid="CLSID:22d6f312-b0fδ-l ld0-94ab- 0080c74c7e95"
codebase="hrtp://activex.rmcrosoft.com activex/contτols/mplayer/en nsmp2inf.cab#Version=6,4>7,l l I2'' standby="'' onmouseover="this.ShowControls=l;" onmouseout="this.ShowControls=0;"> <ρaram name="ShowControls" value="0"> <param name="AutoStart" value="l "> <ρaram name="AutoSize" value="0">
<param name="AmmationAtStart" vaIue="False"> <param name="AutoRewind" value="False"> <ρaram
Figure imgf000034_0001
value=""> <ρaram name="FileName" value="movie.mpeg"> <ρaram name="PlayCount" value="l ">
<param name="Rate" value="l ">
</OBJECT>
< body>
< html> The code set forth below in Table L defines a frameset for a Custom Selection Window having a top row of one frame and a bottom row of two frames.
TABLE L
<btml>
<head>
< head>
<frameset xframeset rows="50%,50%"><frame src="amρlification_view_frame.asρ?amplification={579E3EI B- F2A9-42A3-91ACT635B0A67D04}&frajne=fraAmp]ify0" scrolIing="no"><frameset cols="50%,50%"><frame src="amplification_view_frame.asp?amplification={579E3ElB-F2A9-42A3-91AC-1635B0A67D04}&frame=fraAmplify] " scrolling=,'no"><frame src=''amplification_view_frame.asp?amp!ifϊcation={579E3E]B-F2A9-42A3-91AC- 1635B0A67D04) &frame=fraAmplify2" scrolling="no"x/frameset></frameset></frameset>
</html>
The Custom Selection Window defined by the frameset set forth above in
Table L can contain the image content item (as defined by the code of Table J) in the frame ofthe top row, an MPEG movie content item in the left frame ofthe bottom row, and a text content item in the right frame ofthe bottom row. An example ofthe HTML code for a text content item comprising the text "This is the text selected by the user." is set forth in Table M.
TABLE M
<html>
<head>
<base href="http://www.amplifytheweb.com " target="_blank"> </head> <body leftmargin- O" topmargin="0" bottommargin="0" rightmargin="0" onload- 'document.body .scroll- auto';">
-stable height="100%" align="center"> <tr>
<td valign="middle"> <span>This is the text selected by the user.< span> </td> </tr> <ΛabIe> </body> < html>
Frame Toolbar
Referring to FIG. 12, the Frame Toolbar 38 preferably appears as an overlay to the content item 18 within the frame and only appears when the User directs the mouse pointer over the display area or frame ofthe content item (i.e., on a "mouseover" event). In this manner, the Frame Toolbar 38 will disappear when the pointer exits the display area or frame. Thus, the Frame Toolbar 38 does not ordinarily cover or otherwise obscure the content item 18 located within the frame.
Select Content Item (Frame Toolbar)
The Frame Toolbar 38 preferably includes a Select Content Item 66 icon to select the content item 18 located within the respective frame and place the content item in a new Custom Selection Window in a manner similar to selecting content from an original source page. Thus, using this function, the User can pick desired content items out of an existing Custom Selection Window.
Refresh (Frame Toolbar)
In addition, the Frame Toolbar 38 preferably includes a Refresh 68 menu item or icon to reload the content item in the respective frame. To refresh a content item, the software first determines which frame the User has chosen to reload. An example ofthe code to make this determination is set forth in Table N.
TABLE N
' Private Sub Reload(Optional ByRef oTargetFrame As MSHTML.HTMLFrameElement) ' Parameters: ' oTargetFrame (Optional) - An object reference to a specific frame to be reloaded
Private Sub Reload(Optional ByRef oTargetFrame As MSHTML.HTMLFrameElement) ' If a target frame was passed in, then only reload that frame ' otherwise reload all frames If Not oTargetFrame Is Nothing Then PopulateFrames oAmplification.DOM.selectNodes("amplification frames/frame[@id- " + oTargetFrame.id +
Else
PopulateFrames oAmpϋfication.DOM.selectNodesC'amplification frames/frame") End If
End Sub
Then the code set forth in Table O calls the code set forth in Table P for each frame being reloaded.
TABLE O
Private Sub PopulateFrames(xmlFrames As MSXML.IXMLDOMNodeList) Dim i As Long For i = 0 To xmlFrames.Length - 1
AddItem_Callback oDocument.frames(xπϋFrames.Item(i).selectSingleNode("@id").Text), xmlFrames.ltem(i),
False
Next i End Sub
TABLE P
' Private Sub AddItem_Callback(ByRef oTargefWindow As MSHTML.HTMLWindow2, ByRef xmlltem As MSXML.IXMLDOMNode, Optional ByRef bSetDirty As Boolean = True) ' Parameters:
' oTargefWindow - An object reference to the target window for the item being amplified ' xmlltem - An object reference to the xml ofthe item being amplified
' bSetDirty (Optional, Default = True) - Boolean value indicating weather or not to set the dirty flag for the amplification Private Sub AddItem_Callback(ByRef oTargefWindow As MSHTML.HTMLWindow2, ByRef xmlltem As
MSXML.IXMLDOMNode, Optional ByRef bSetDirty As Boolean = True)
' Determine what type of content is being amplified Select Case xmlltem.selectSingleNode("@type").Text Case "HTMLI g"
Call AddHTMLImg(xmlItem, oTargefWindow) Case "IHTMLTxtRange"
Call AddIHTMLTxtRange(xmlItem, oTargefWindow) Case "HTMLObjectElement" Call AddHTMLObjectElement(xmlltem> oTargefWindow) End Select
xmlAmplification.selectSing]eNode("amplifιcation frames").appendChild xmlltem
oAmplification.Dirty = bSetDiity
bltem Waiting = False
End Sub
Search (Frame Toolbar)
Referring to FIG. 12, the Frame Toolbar 38 preferably includes a Search 70 icon which allows the User to perform a search for content related to the content item in the frame. The Search icon 70 preferably provides a drop-down menu having a Similar Pages 72 menu item and a Related Content 74 menu item. Upon selection of either the Similar Pages 72 or Related Content 74 search menu items, the software opens a new browser window and queries an Internet search engine (e.g., google.com) with a search command using certain search parameters. The Similar Pages 72 menu item performs a search for web pages related to the domain name ofthe source ofthe content item in the frame. The search command for the Similar Pages 72 menu item is, for example: "ht1p://www.google.coιn/search?q=related:www.aιnplifytheweb.com/'', where
"www.amplifytheweb.com" is the domain name ofthe source ofthe content item in the frame.
The Related Content 74 menu item performs a search ofthe domain ofthe source ofthe content item ofthe frame for items related to the Keywords ofthe Custom Selection Window. The search command for the Related Content 74 menu item is, for example: "ht1 ://www.google.com/search?q=Keywordl%20Kevword2+site:www.a nplifythew eb.com", where "Keywordl " and "Keyword2" are the Keywords entered by the user for the Custom Selection Window. The result ofthe search is an independent browser window containing "hits" returned by the search engine, which should be relevant to the selected content or source ofthe content. As is common, the hits are typically in the form of short descriptions ofthe search results accompanied by hypertext links, or universal resource locators (i.e., url's), which lead to web pages.
Examples ofthe code for the Similar Pages 72 and Related Content 74 menu items are set forth below in Tables Q and R, respectively.
TABLE O
Private Sub FrameToolbar_SearchForSimilarPages(oSourceFrame As MSHTML.HTMLFrameElement) With xmlAmρlification.selectSingleNode("amplification/frames/frame[@id=''' + oSourceFrame.id + '" /source")
LaunchBrowser SEARCHJPAGE + "related:" + .selectSingleNode("host").Text + "/" + .selectSingleNode("page").Text End With End Sub
TABLE R
Private Sub FrameToolbar_SearchThisSite(oSourceFrame As MSHTML.HTMLFrameElement) LaunchBrowser SEARCHJPAGE + Keywords + "+site:" + oAmplification.DOM.se]ectSing]eNode("amplification/frames/frame[@id='" + oSourceFrame.id + '"]/source host").Text End Sub
Delete Frame (Frame Toolbar)
The Frame Toolbar 38 also preferably includes a Delete menu item (not shown) that is operable to delete the associated frame from the Custom Selection
Window. Preferably, upon the deletion of a frame, the "parent" frame, that is the frame from within the deleted frame was originally created, is resized to occupy the space previously occupied by the parent frame and the deleted frame. In addition, as discussed above the content item within the resized parent frame is resized (i.e., expanded) accordingly. Go To This Site, GoTo This Page
Referring to FIG. 13, the Frame Toolbar 38 also preferably includes a GoTo 78 icon that presents a drop-down menu having a This Site 80 menu item and a This Page 82 menu item. The This Site 80 menu item opens a new browser window that loads the main page ofthe domain ofthe content item in the frame. The This Page 82 menu item opens a new browser window that load the page from which the content item ofthe frame was selected. Thus, the system provides a quick and convenient means to find and view the source of selected content items.
Properties (Window Toolbar)
The Window Toolbar 36 includes a Window Properties 84 icon that displays the Properties Window 28 (see FIG. 5) to allow the User to modify the Description 30 and the Keywords 32.
Search (Window Toolbar)
The Window Toolbar 36 also includes a Search 88 icon that performs a search ofthe World Wide Web base upon the Keywords 32. An example ofthe search command invoked by the Search 76 icon ofthe Window Toolbar 36 is "http://www.google.com/search?q=Keywordl%20Keyword2."
Refresh (Window Toolbar)
The Window Toolbar 36 also preferably includes a Refresh 90 icon that reloads all ofthe content items of a Custom Selection Window 34 with one click. The example code set forth in Tables N, O & P above will reload all ofthe content items of a Custom S election Window. Always On Top
The Window Toolbar 36 also includes an Always On Top 92 icon, which, when selected, will retain the Custom Selection Window 34 as the top window on the computing device inespective of whether the User selects another window, such as another program, as the active window. With this function, the User can quickly and conveniently select and focus on a desired content item, such as a streaming video, and ensure that the content item is always visible even if the User is working with another program. As mentioned above, the User can resize and relocate the Custom Selection Window 34 to view other programs, as desired.
Save
A Save 94 icon ofthe Window Toolbar 36 saves the Custom Selection Window 34 for later use. Preferably a Window Definition ofthe Custom Selection Window 34 is saved in memory ofthe computing device ofthe User (e.g., RAM or on a hard drive) and/or on a remote Server accessible via the Internet or other network. Preferably the content items of a Custom Selection Window are not themselves saved on the computing device ofthe User or on the Server, but only the Window Definition, which Window Definition contains the particulars ofthe Custom Selection Window and ofthe content items therein. Preferably, the Window Definition is in the form of an XML document containing a unique Window Identifier, a frameset and specific information for each frame.
Preferably, upon saving a new Window Definition, the software on the computing device ofthe User or the Server assigns a unique Window Identifier to the Custom Selection Window which is saved with or otherwise associated with the Window Definition. As discussed below, the Window Identifier is used to recreate the Custom Selection Window at a later time. For non-text content items, the Window Definition does not include the actual content items, but does include information regarding the source and identity ofthe content item sufficient to access or recreate the content item. Specifically, for non-text content items, the Window Definition preferably includes information identifying the source ofthe content item, including the domain name, path and file name, and includes identifying information and parameters of any media player or external application (or the like) required to display or play the content item. For text content items, the Window Definition may include the string of text selected by the User, or may include information identifying the source ofthe text and coordinates specifying the beginning and end points ofthe text. If entered by the User, the Window Definition also includes the Keywords 30. The example ofthe XML code set forth in Table S below is a Window Definition having a video content item, a text content item and an image content item.
TABLE S
<ampIιficatιon>
<guιd>{7DAED7EF-FC90-4CF7-91C6-8886F5BF5C4F}</guιd> <heιght>360< heιght> <wιdth>643</wιdth>
<descπptιon>New Amplιficatιon</descnptιon>
<keywordsx keywords>
<frameset>
<frameset cols="50%>50%"><frameset rows="57%,43%"xframe ιd="fraAmphfy3"/xframe ]d="fraAmρhfyl "/></frameset><frameset rows="30%,70%"><frame ιd="fraAmphfy2"/xframe ιd="fraAmph:fy07></frameset></frameset></^ <source>
<protocol>http </protocol> <host>www msnbc com< host> <path>/m/mw/</path>
<page>vw htm</page> <query></query> </source>
<object type="MEDlAPLAYER"> <class-ιd>CLSID 22d6f312-bOf6-HdO-94ab-0080c74c7e95</class-]d>
<code- base>http //activex microsoft com/actιvex controls/mplayer/en nsmp2mf cab#Versιon=6,4,7,l 112</code-base>
<Standby>Loadmg Microsoft Media Player compnents . </standby> <params><paramname="AmmatιonAtStart">False</param><param name="AutoRew d">False</param><param name="baseUrl"x/param><param name="FιleName">http //www msnbc com m mw/s/msnbc/asx asp?eτ=http //www msnbc com m mw/s/msnbc/soπy asf&amp,b =&amp,bu=&amp,vu=&amp,pu=mιns //od-msnbc msnbc com msnbc/vιdeo/promo/100/promo3 asf&amp,cu=mms //od- msnbc msnbc com msnbc/vιdeo/commercιals/100/ad_mtertamer_04 asf&amρ,alαd=472002</param><param name=''PlayCount">]</param><paιa name="Pate''>l</paτam></params> </object>
</framexfiame ιd="fraAmplιfyl" type="IHTMLTxtRange"> <source>
<ρrotocol>http </protoco!> <host www ncodev com< host> <path>/</path> <page></page> <queryx/query> </source> <content>
<![CDATA[<1MG height=10 src="images/dots.gif ' width=4><B> NC0DE</B> is the leading software engineering firm to provide Ointegration services< I> and <I>custom application dεvelopment</l> merging legacy technologies and cutting edge engineering tools to create the most powerful business applications. <BR>]]>
</content> </framexframe id="fraAmplify2" type="HTMLImg"> <source>
<protocol>hftp:</protocol> <host>www.ncodev.com</host>
<path>/</path> <page></page> <query></query> </source> <image>
<src>http://www.ncodev.com images/phrase_2.gif</src> <alt></alt> <height>54< height> <width>232</width> <mime-type >
<scale>l</scale> </image> </frame><frame id="fraAmplify3" type="lHTMLTxtRange"> <source> <protocol>http:</protocol>
<host>www.ncodev.com< host> <path>/</path> <pagex/page> <queryx/query> </source>
<content>
<![CDATA[<IMG height=10 src="images/dots.gif ' width=4> Our entire team is committed to transforming our clients' businesses utilizing a range of industry leading applications and custom software solutions to meet any specific need and business challenge. We mold technology to optimize your business processes and ultimately <l>maximize your bottom line.< I><BR>]]> </content> </frame></frames> </amplification> Referring to FIG. 14, the Main Toolbar 10 includes a GoTo 94 icon, that presents a History 95 menu item list, that in turn presents a Most Recently Used (MRU) List 96 of Custom Selection Windows, in preferably chronological order of use. Preferably, the windows are identified in the MRU List 96 by their Descriptions 30. The MRU List 96 is preferably limited to a predetermined number of windows, for example the last 20 used, such that the MRU List 96 is a dynamic list providing convenient access to recently used Custom Selection Windows. The User may recreate a Custom Selection Window from the MRU List 96 by clicking on the Description for the window. Upon selection of a Custom Selection Window from the MRU List 96, the software locates and retrieves the Window Definition from the memory device ofthe computing device or from the Server using the unique Window Identifier, recreates the Custom Selection Window and loads the content items directly from the original source of each item, as recorded in the Window Definition.
Send To Favorites
Referring to FIGs. 15 & 16, the Window Toolbar 36 includes a Send To 97 icon, that presents a Favorites 98 menu item, that in turn presents an Add to Favorites 100 menu item. The Add to Favorites 100 menu item saves the Custom Selection Window in a Favorites List 102 that is accessible via the GoTo 94 icon ofthe Main Toolbar 10. As with the MRU List 96, the software stores the Window Definition of each Custom Selection Window in the Favorites List 102 on the computing device and preferably on the Server. Also, as with the MRU List 96, the Custom Selection Windows in the Favorites List 102 are preferably identified by the Description 30. However, in contrast to the MRU List 96, the Favorites List 102 preferably remains the same until the User adds or deletes a Custom Selection Window from the list. Thus, the Custom Selection Windows in the Favorites List 102 will always be available to the User regardless of other windows which the User may have created and saved. As with the MRU List 96, upon selection of a Custom Selection Window from the Favorites List 102, the software locates and retrieves the Window Definition from the memory device ofthe computing device ofthe User or from the Server using the unique Window Identifier, recreates the Custom Selection Window and loads the content items directly from the original source of each item, as recorded in the Window Definition.
Dynamic Favorites List
The Favorites List 102 can be modified, dynamically, as the User navigates (or
"surfs") the World Wide Web. In particular, Matching Custom Selection Windows containing content items from the domain ofthe source cunently displayed in the browser application ofthe User can be highlighted or segregated in the Favorites List 102. For example Matching Custom Selection Windows in the list can be grouped together in a sub-list (not shown) segregated from other Custom Selection Windows in the list. Alternatively, the Matching Custom Selection Windows in the list can be highlighted by limiting the display ofthe Favorites List 102 to only the Matching Custom Selection Windows, or can be highlighted visually, by color or in some other visual manner. Alternatively, the Favorites List 102 can be presented in an order that highlights the Matching Custom Selection Windows, such as with the Matching
Custom Selection Windows at the top ofthe list. It can be appreciated that any other similar method of dynamically highlighting Matching Custom Selection Windows in the Favorites List 102 is within the scope ofthe invention.
To dynamically modify the Favorites List 102 according to the domain of a source cunently displayed in the browser application, software on the computing device ofthe User monitors the cunently displayed source and compares the domain ofthe cunent source to the domains of content items stored in the Window Definitions used to create the Favorites List 102. The software then modifies the Favorites List 102 in one ofthe above manners, or a similar manner, to highlight Matching Custom Selection Windows. Send To Printer (Window Toolbar & Frame Toolbar)
Referring to FIG. 15, the Send To icon 97 ofthe Window Toolbar 36 preferably includes a Printer menu item 104 that sends the Custom Selection Window to a printer available to the computing device ofthe User. Similarly, the Frame Toolbar 38 also preferably includes a Send to Printer Function (not shown) which allows the user to send the content item of one frame to the printer.
Send To Recipient
Referring to FIGs. 17 & 18, the Send To icon 97 ofthe Window Toolbar 36 also includes a Recipients 106 menu item (shown as "Friends" in the drawings) that presents a List of Recipients 108 to which Custom Selection Windows may be sent by email, instant message or another type of electronic communication method. Preferably, the Recipients 106 menu item provides a means to enter (or modify) the Electronic Address of a Recipient of a Custom Selection Window, such as the Edit Recipients 110 menu item which presents the dialog window 111 of FIG. 18. Preferably, for each Recipient, the User can enter the Electronic Communication Method 112 (e.g., EMAIL), a descriptive Recipient Name 114 and the Electronic Address 116 of the Recipient (e.g., email_address@domain.com).
When a Recipient is chosen from the List of Recipients 108, the software on the computing device ofthe User sends the Window Definition ofthe Custom Selection Window (comprising an XML document ofthe type set forth above in Table S) to the Server. The Window Definition is stored on the Server along with the Window Identifier (which is assigned at that time, if one has not been assigned yet).
After receipt ofthe Window Definition, the Server sends an electronic message to the Recipient at the Electronic Address ofthe Recipient via electronic mail, instant messaging program, or other electronic means, as appropriate. The electronic message sent to the Recipient contains a hypertext link, or universal resource locator (url) containing the Window Identifier, which link leads back to the Server. It may be preferable that the electronic message is sent to the Recipient by the Server. However, the electronic message may also be sent to the Recipient by a communication application on the computing device ofthe User. In either case, the electronic message includes a link to the Server, which link contains the unique
Window Identifier. If the electronic message is sent by the User, both the Server and the computing device ofthe User must have the unique Window Identifier. (See "Create Link" below).
The presence ofthe Keywords in the Window Definition provide an important function by allowing the creator ofthe Custom Selection Window to provide targeted words to search for related content on the web.. As a part ofthe Window Definition, the Keywords are attached to the Custom Selection Window and remain with the Custom Selection Window when it is saved (or sent to the Favorites List), and travel with the Custom Selection Window when the Custom Selection Window is accessed by a Recipient.
It should be noted that the electronic message sent to the Recipient does not contain the content items themselves, but only a link to the Server. As opposed to prior methods of sending entire content items to a recipient, the present invention greatly reduces the time and bandwidth required to send an electronic message to another to share content over a network such as the Internet. Moreover, the present invention overcomes the limitations of electronic communications methods by sending an electronic message containing a link used to re-create the content in a browser application.
Upon receiving the electronic message, the User can recreate the Custom Selection Window by selecting, or clicking on, the hypertext link in the electronic message. When the Recipient selects the link within the electronic message, the computing device ofthe Recipient activates a browser application that sends a request to the Server, which request contains the unique Window Identifier ofthe Custom Selection Window. The Server locates the Window Definition ofthe Custom Selection Window using the Window Identifier embedded within the link and responds with an Initial Recipient Web Page.
The Initial Recipient Web Page has code that attempts to detect whether the Recipient has installed the software required to create Custom Selection Windows. In one embodiment, the Initial Recipient Web Page attempts to detect the presence ofthe software by attempting to initialize certain components or objects ofthe software. If the software is detected on the Recipients computing device, then the Initial Web Page passes the Window Identifier to the software which then creates a Custom Selection Window as defined by the Window Definition, which window has the full functionality provided by the software, including the Window and Frame Toolbars.
Recipient Window
Referring to FIG. 19, if the software is not detected, then the Initial Recipient
Web Page includes code to open a new browser window, the Recipient Window 118, having dimensions defined in the Window Definition and to retrieve a Recipient Toolbar 120 from the Server and to populate the new window with the Recipient Toolbar 120. Then the browser calls a page to create the frameset for the Recipient Window 118, according to the Window Definition. Each frame within a frameset then calls a page to populate the frame. Preferably a standard browser application can create the Recipient Window 118 without the additional software required to initially create and send the Custom Selection Window. Therefore the User is free to transmit access to the custom selection to any other computing device on the Internet or other network having a browser application.
As with the Custom Selection Window 34, preferably the Recipient Window 118 is configured to load the content items therein via the browser application on the computing device ofthe Recipient directly from the respective original sources ofthe content. Thus, by employing the browser application on the computing device ofthe Recipient to retrieve and load the content items, the system of the present invention avoids the content type and size limitations of electronic messaging systems, as discussed above. Examples of Server-side code to create the frameset and individual frames for a Recipient Window are set forth in Table T & U, respectively.
TABLE T
<!--#INCLUDE
Figure imgf000049_0001
<SCRIPT
Figure imgf000049_0002
RUNAT=Server> Sub FramesetXMLToHTML(oFramesefXML)
Output "<frameset " If Not oFramesetXML.selectSingleNode("@cols") Is Nothing Then
Output "cols- ""' & oFramesetXML.selectSingleNode("@coIs").text & """" Elself Not oFramesetXML.selectSingleNode("@rows") Is Nothing Then Output "rows- ""' & oFramesetXML.seIectSingleNode("@rows").text & """"
End If Output ">" For i = 0 To oFramesetXML.childNodes.length - 1
'Output oFramesetXML.chi]dNodes(i).nodeName & vbCrLf Select Case UCase(oFramesetXML.childNodes(i).nodeName)
Case "FRAME"
Output "<frame src=""amplification_view_frame.asp?amplification=" & sAmplGUID & "&frame=" & oFramesetXML.childNodes(i).selectSingleNode("@id").text & """ scrolling=""no"">"
Case "FRAMESET" FramesetXMLToHTML oFramesetXML.childNodes(i)
End Select Next
Output "</frameset>" End Sub </SCRΓPT
<%
Dim sAmplGUID sAmplGUID = Request.QueryString("amplification") If Not Len(sAmplGUID) > 0 Then Response.End
End If Dim lAmplHeight lAmplHeight = 0 Dim lAmplWidth lAmplWidth = 0
Dim sAmplDescription sAmpIDescription = "" Dim sAmplKeywords sAmplKeywords = "" Dim oAmplFramesetXML
Set oAmplFramesetXML = Server.CreateObject("MSXML2.DOMDocument") Dim oConn, oRS, sSQL
Set oConn = Server.CreateObject("ADODB.Connection") Set oRS = Server.CreateObject("ADODB.Recordset")
oConn.Open CONN_ STRING
sSQL = "amplification_sel_sp @ampl_guid = '" & sAmplGUID & '
oRS.Open sSQL, oConn, 3
lAmplHeight = oRS("ampl_height") lAmplWidth = oRS("ampl_width") sAmplDescription = oRS("ampl_descriρtion") sAmplKeywords = oRS("ampl_keywords")
oAmplFramesetXML.loadXML oRS("ampl_frameset")
oRS.Close
oConn.Close
Set oRS = Nothing
Set oConn = Nothing
%>
<html> <head>
</head>
<% FramesetXMLToHTML(oAmplFramesetXML.documentElement) %
</html> <% Set oAmplFramesetXML = Nothing
%>
TABLE U <!-#ΪNCLUDE FILE="scripts/common.asp"-> <% Dim sAmplGUID sAmplGUID = Request. QueryString("amplification") Dim sFramelD sFramelD = Request.QueryString("frame")
If Not Len(sAmplGUID) > 0 Or Not Len(sFrameΙD) > 0 Then
Response.End End If Dim sFrameType sFiameType = "" Dim sSourceProtocol sSourceProtocol = "" Dim sSourceHost sSourceHost = "" Dim sSourcePath sSourcePath = "" Dim sSourcePage sSourcePage = ""
Dim sSourceQuery sSourceQueiy = ""
Dim oConn, oRS, oRS2, sSQL Set oConn = Server.CreateObject("ADODB.Connection")
Set oRS = Server.CreateObject("ADODB.Recordset") SetoRS2 = Server.CreateObject("ADODB.Recordset")
oConn.Open CONN STRING
sSQL = "ampl_frame_sel_sp " _
& "@fram_ampl_guid = "' & sAmplGUID < & "@fram_id= '" & sFramelD & '""
oRS.Open sSQL, oConn, 3
lfNot oRS.EOF Then sFrameType = oRS("fram__type") sSourceProtocol = oRS("fram_source_protocol") sSourceHost = oRS("fτam_source_host") sSourcePath = oRS("fram_source_path") sSourcePage = oRS("fram_source_page") sSourceQuery = oRS("fram_source_query")
End If
oRS.Close
Select Case sFrameType
Case "HTMLImg" sSQL = "ampl_fram_htmlimg_sel_sp " _
& "@himg_ampl_guid = '" & sAmplGUID & '", " _ & "@himg_fram_id = '" & sFramelD & '"" oRS.Open sSQL, oConn, 3 IfNot oRS-EOFThen %>
<html> <head>
<base hτef="<%= sSonrceProtocol & "//" & sSourceHost & sSourcePath %>" target="_blank"> <script Ianguage="JavaScriρt">
var lOriginalHeight = <%= oRS( "himg_height") %>; var lOriginalWidth = <%= oRS("himg_width") %>; var bScalelmage = <% If oRS("himg_scale") = 1 Then %>true<% Else %>false<% End If %>;
function GetlmageRatio() { var dHeightRatio = 0.0; var dWidthRatio = 0.0; if (documeπt.body.clientHeight <= 20 || document.body.clientWidth <= 20) { dHeightRatio = 1; dWidthRatio = 1; } else { dHeightRatio = lOriginalHeight / (document.body.clientHeight - 4); dWidthRatio = lOriginalWidth / (document.body.clientWidth - 4);
} return dWidthRatio > dHeightRatio ? dWidthRatio : dHeightRatio; }
function Resizelmage() { if (IbScalelmage) { return; } var dRatio = 0.0; dRatio = GefImageRatio(); olmage.style.height = Math.round(10riginalHeight / dRatio); olmage.style. width = Math.round(10riginalWidth / dRatio); }
function ScalelmageQ { bScalelmage = IbScalelmage; if (bScalelmage) { HidelmageToolban^true);
Resizelmage(); } else {
HideImageToolbar(true); olmage.style.height = "; olmage.style. width = ";
} }
//--> </script>
< head>
<body leftmargin="2" topmargin="2" bottommargin="2" rightmargin="2" onresize="ResizeImage();' <table cellpadding="0" cellspacing="0" border="0" height="100%" width="100%"> <tr>
<td align="center" valign="middle">
<img id="olmage" src="<%= oRS("himg_src") %>" alt="<%= oRS("himg_alt") %>" onload="ResizeImage(); "><br> </td> </tr> </table>
</body> </html> <%
End If oRS.Close Case "IHTMLTxtRange" sSQL = "ampl_fram_ihtmltxtrange_sel_sp " _
& "@txrg_ampl_gnid = "' & sAmplGUID & '", " _ & "@txrg_fram_id = "' & sFramelD & '"" oRS.Open sSQL, oConn, 3
IfNot oRS.EOF Then %>
<html> <head>
<base href="<%= sSourceProtocol & "//" & sSourceHost & sSourcePath %>" target="_blank"> < head> <body leftmargin="0" topmargin="0" bottommargin="0" rightmargin="0" on]oad="document.body.scroll='auto';">
<table height-"] 00%" 1 align="center">
<tr>
<td valign= ="middle">
<span><%= ■■ oRSC 'txrg_content") %></span>
</td>
</tr>
</table>
< body>
< htm!>
<%
End If oRS.Close Case "HTMLObjecfElement" sSQL = "amp]_fram_htmlobjecteIement_sel_sp " _
& "@oblm_ampl_guid = "' & sAmplGUID & '
& "@oblm_fram_id = '" & sFramelD & oRS.Open sSQL, oConn, 3 IfNot oRS.EOF Then
%>
<html>
<head> <base href="<%= sSourceProtocol & "//" & sSourceHost & sSourcePath %>" target="_blank"> < head>
<body )eftmargin="l " topmargin="l " bottommargin="l " rightmargin="l " bgcoloι="#000000"> <% Select Case oRS("oblm_type")
Case "MEDIAPLAYER" %>
<OBJECT ID="oWindowsMedia" width="100%" height="100%" classid="<%= oRS("oblm_dass_id") %>" codebase="<%= oRS("oblm_code_base") %>" standby="<%= oRS("oblm_standby") %>" onmouseover="this.ShowControls=l;" oranouseouf="this.ShowControls=0;"> <param name="ShowContτols" value="0"> <param name="AutoStart" value="l "> <param name="AutoSize" value="0"> <% sSQL = "ampl_fτam_oblm_params_seI_sp " _
& "@parm_ampl_guid = '" & sAmplGUID & '", "
& "@parm_fram d = "' & sFramelD & oRS2.0pen sSQL, oConn, 3
Do While Not ORS2.EOF %>
<ρaram name="<%= oRS2("parm_name") %>" value="<%= oRS2("parm_value") %>"> <% oRS2.MoveNext
Loop oRS2.Close %>
</OBJECT> <%
Case "SHOCKWAVEFLASH" %>
<OB JECT ID="oShockwaveFlash" heights" 100%" width="l 00%" classid="<%= oRS( "oblm_class_id") %>" codebase="<%= oRS("oblm_code_base") %>" standby="<%= oRS("oblm_standby") %>"> <% sSQL = "ampI_fram_oblm__params_sel_sp " _
& "@parm_ampl_guid = '" & sAmplGUID & '", "
& "@parm_fram_id = '" & sFramelD & "'" oRS2,Oρen sSQL, oConn, 3
Do While Not ORS2.EOF %>
<param name="<%= oRS2("parm_name") %>" value="<%= oRS2("parm_value") %>"> <% oRS2.MoveNext
Loop oRS2. Close %> </OB ECT> <%
End Select %>
</body> </html> <%
End If oRS.Close
End Select
oConn. Close Set oRS2 = Nothing Set oRS = Nothing Set oConn = Nothing %>
Recipient Toolbar
Referring to FIG. 19, the Recipient Toolbar 120, includes icons to Search 122, Send To Printer 124, Goto This Page 126, and GoTo This Site 128, which initiate functions similar to those functions provided by the Window Toolbar 36, to allow the User to search the World Wide Web for content related to the content in the Recipient Window 118, to print the Recipient Window, or to open another browser window with either the source web page containing the content item or the web site ofthe domain ofthe source web page. The Recipient Toolbar also preferably includes a refresh icon (not shown) to reload the window.
Importantly, the Window Definition preferably passes the Keywords to the
Recipient Window 118 such that the Keywords follow the custom selection and such that the Recipient can use the Keywords to search for related content. The Search 122 function ofthe Recipient Toolbar 36 preferably invokes a search command similar to that of the Window Toolbar 36. In particular, the search command may be "http://www. goo gle.com/searchTq^Keywordl %20Kevword2." Thus, the creator of the original Custom Selection Window can provide important targeted Keywords for the Recipient to use in performing searches ofthe World Wide Web for related content items. Portability
The system ofthe present invention is preferably compatible with several different computing platforms, such as Microsoft Windows-based and Apple computers, internet appliances,, personal digital assistants (PDAs, such as the Palm Pilot, and the like), and other computing platforms, such that custom selections can be shared among various computing devices. Further, certain items of User-defined attribute information, such as the User's MRU List, Favorites and the Recipients List, are preferably portable amongst various computing devices of the User. The software accomplishes this function by transmitting the attribute information to the Server and storing the information along with the unique User Identifier. The User's attribute information is preferably retrieved using the User Identifier when the User first launches the browser. Thus, the system provides a consistent and familiar experience regardless of which computing device the User chooses.
Tracking
The system also provides a highly accurate and flexible means to track content viewed and shared by Users and Recipients. The Server is contacted whenever a custom selection is saved, or sent to or chosen from the Favorites List, when a custom selection is sent to a Recipient using an electronic message, and when a Recipient views a received custom selection. During each of these actions, the custom selection is uniquely identified to the Server by the Window Identifier, which Server contains the Definition ofthe custom selection. Therefore, in the case of custom selections of a User's Favorites List, the system can track and compile statistics regarding what content items have been selected, what content items are selected in the same window, the number of times a selected item (or group of items) is viewed, and the frequency of viewing. Such statistics can be compiled along with the unique User Identifier to track such information with respect to a particular User, or can be compiled "blind" without regard to a particular User. Importantly, this tracking can be accomplished whether the two images are on the same site or different sites. For custom selections shared with others, the system can also track and compile statistics on what content items (or groups) are shared with others (and by whom), the number of times a Recipient views a selection, the frequency of viewing, and the chosen method of messaging. As an example, the system can track statistics regarding a User viewing (and likely comparing) images of two products side-by-side in a custom selection, and can track statistics about any sharing of that custom selection. As a further example, the system can track viewing and sharing activities of diverse custom selections containing two or more content items from different network domains (e.g., different web retailers) and can track such activity according to groups or sets of network domain, such as diverse custom selections containing content items from a network domain of web retailer A and from a network domain of web retailer B.
Further, the system does not rely on pre-placed tracking devices, such as "cookies" or "web bugs." The tracking capability ofthe present invention is based on the content items themselves, in their unaltered format. Moreover, the tracking capability ofthe system is highly targeted in that it is able to track viewing and transferring access to specific content items, whereas traditional tracking methods such as cookies and web bugs typically only track views of entire web pages. Further, since communication with the Server is required for certain actions, such as saving, saving and retrieving, the tracking capabilities ofthe system cannot be circumvented. Therefore, the system provides a very reliable, highly targeted and flexible tracking system.
It can be appreciated that the system provides a convenient method for a User to create, view, modify, print and save custom groupings of image and text content items available on web pages and other sources, to search for other related content, and to transfer access to such selections with others, which method is effected in a manner which avoids the limitations of electronic communications methods, which reduces the time and bandwidth required to share the custom groupings via electronic messages, and which provides for highly accurate and flexible tracking of such content viewing and sharing. Create Link
Referring to FIGs. 20 and 21, the Window Toolbar 36 of the Custom Selection Window 34 preferably includes a Link Creation 130 icon (depicted in the drawing as "Copy Link") which, when selected, loads or copies a hypertext Link 132 for the associated Custom Selection Window into the "Clipboard" memory or other similar user- accessible memory ofthe computing device. As discussed above, the hypertext Link 132 for the Custom Selection Window is preferably in the form of a complete uniform resource locator (url) leading to the Server and includes a unique Window Identifier 134 assigned to the particular Custom Selection Window. In the example depicted in FIG. 21, the Window Identifier is located in a query string, specifically after string "?amplification- ', however the Window Identifier may be located in another portion ofthe query string.
Since the hypertext Link 132 is loaded or copied to the Clipboard memory, the
User can easily and conveniently "paste" the Link 132 in an otherwise familiar manner into other documents or windows, such as the body of an electronic mail message, a word processing document, an instant message or any other location where information present in Clipboard memory may be pasted. Then that document or message may be transmitted to others (or may be saved) for sharing access to the Custom Selection Window, or for other purposes.
An example of a portion of code suitable for this feature is as follows:
Clipboard.SetText AMPLIFY_URL_VIEW + Mid$(oAmplification.GUID, > 2, _ Len(oAmplification.GUlD) - 2)
The Link Creation 130 icon is preferably operable to initiate the assignment of the Window Identifier. As discussed above, the Window Identifier may also be assigned by the computing device ofthe User and/or by the Server when the Custom Selection Window is saved for the first time. System Area Icon
Referring to FIG. 22, the software preferably adds a System Area Icon 140 in a System Area 142 ofthe user interface (e.g., the "System Tray" in Windows™). The
System Area Icon 140 is preferably not dependent upon the presence of a running instance ofthe browser application and is preferably always present and active. The
System Area Icon 140, when selected, provides a System
Area Menu 144 providing access to the MRU List (i.e., History) and/or the Friends List. Thus, the System Area Icon 140 provides quick and easy access to these features at all times, inespective of whether a browser application is running on the computing device ofthe User at the time.
A portion of code suitable to implement this feature ofthe invention is as follows:
Shell_NotifyIcon NIM_ADD, nidSysTray
Search Results List
Referring to FIG. 23, another feature ofthe software provides a Search Results List 146 that displays results ofthe last search ofthe Internet or other network sources, for example the results from an Internet search engine. The User may navigate to the results from the Search Results List 146 until the results are overwritten by a successive search, or until the browser from which the search was conducted is closed.
A search ofthe Internet (or of an intranet or other network or local source) preformed with a search engine or similar means often produces a result that is presented in a predetermined, consistent format on a Search Results Page 147 containing a list of result items or "hits" 148. The individual result items are usually spaced from one another on the page such that each hit is visually distinguishable from the others. The layout ofthe web page containing the result items is defined by a formatting language, such as Hypertext Markup Language (HTML).
Each result item on a Search Results Page 147 typically includes a Descriptive
Hypertext Link 150 comprised of a descriptive text portion 152 displayed in plain English and an underlying raw url (which is hidden from the User). A result item may also include a Raw Hypertext Link 154 comprised of a displayed raw url. There may also be further descriptive text 156 associated with the result item which may be inactive.
As is known, the User can access a resource associated with the result item listed on the Search Results Page 147 by selecting (i.e., clicking on) one ofthe hypertext links. With prior systems and methods, to access another result item on the Search Results Page 147, the User must then return to the Search Results Page 147 using the "Back" command ofthe browser. However, this may require several (or many) steps, especially if the User has navigated far from the original Search Results Page 147. Further, in certain situations, the User may be unable to return to the original Search Results Page 147 and may have to perform another search.
The Main Toolbar 10 preferably contains a Return to Search Results icon 157 that reloads the last Search Results Page 147 and a Search Results List icon 158 that produces the condensed Search Results List 146 containing a predetermined number (for example the first 10) of Results Items 160 obtained from a search. The text ofthe Results Items 160 is preferably obtained only from the displayed descriptive text portion 152 ofthe associated Descriptive Hypertext Link 150 ofthe particular search result item. To limit the amount of space required for the Search Results List 146, the number of characters displayed for each Results Item 160 may be limited to a predetermined amount, for example 10 characters. As shown, an ellipsis or other visual indicator can be added to the Results Item 160 when the displayed descriptive text portion 152 is greater than the predetermined number of characters. The content ofthe Search Results List 146 preferably remains unchanged until another search is conducted. Thus, after performing a search and navigating to one of the results, the User need not return to the Search Results Page 147 to navigate to other results on the Search Results List 146. Instead, the User may access the Search Results List 146 from the Main Toolbar 10 and select the desired Results Item 160. Alternatively, the User can reload the Search Results Page 147 by selecting the Return To Search Results Page icon 157. It can be appreciated that this provides a significant advantage both in the amount of time required to access different Results Items 154 and the guaranteed ability to select different Results Items 154.
In the formatting code of a typical Search Results Page 147 (i.e., HTML), the results items are separated by and/or enclosed within predetermined anchors or tags. In the example provided in Table V below, the results items are preceded by the paragraph tag "<p>" which is followed by a hypertext reference tag, namely "<a href=". The hypertext reference tag defines the Descriptive Hypertext Link 150, including the descriptive text portion 152 and the underlying raw url. In the example of Table N, the underlying raw url of the first result item is <http://www.bi gcharts . com> and the descriptive text portion 152 is "BigCharts - Charting a World of Investment Information".
TABLE N
<p><a href=http://www.bigcharts.com >BigCharts - Charting a World of Investment Information</a><br><font size=-l> <b>...< b> edged up 0.2 percent. Volume amounted to 1.77 billion on the ΝYSE and<br> to 1.78 billion on the Nasdaq <b>Stock<Λ» Market. Market breadth was <b>...< b>
<br><span class=fxfont size=-]>Description:</font></span> Interactive online charting service giving free and unlimited access to <b>charts</b>, reports, indicators,...<br><span class=f>Category: </span><a class=fl Juef=http://dιrectory.google.com Top/Business/ vestmg/Stocks_and_Bonds Techm^aV?il=l>Busmess& nbsp;&g^;&nbsp;Investing&nbsp;&gt;&nbsp;Stocks^bsp;and&nbsp;Bonds&nbsp;&gt;&nbsp;Technica l</axbr><font coloι=#008000>www.bigcharts.com - 29k - 22 Sep 2002 - < font><a class=fl href=htto://216.239.39.100/search?q=cache:X0rgDaCZlpsC:wvTO.bigcharts.com+stock+charts&hl=en& ie=UTF-8>Cached</a> - <a class=fi href=/search?hl=en&lr=&ie=UTF-8&oe=UTF- 8&q=related:www.bigcharts.com >Similar pages</a></font>
<pXa href=http://www.redherring.com >Red Herring Online</a><brxfont size=-l><span class=fxfont size=-l>Description:</fontx/sρan> On-line version of professional magazine. News and reviews focusing on technology, analysis, and research...<brxspan c!ass=f>Category: </spanXa class=fl hrei=http://directory.google.coιτι Top/Computers/Software/Business/E-Commerce/Business-to- Business/On-Line-
Resources/?il=l>Computers&nbsp;&gt;&nbsp;Software&nbsp;&gt;&nbsp;...&nbsp;&gt;&nbsp;E- Commerce&nbsp;&gt;&nbsp;Business-to-Business&nbsp;&gt;&nbsp;On-Line-Resources</a><brxfont color=#008000>www.redherring.com - 43k - 22 Sep 2002 - </fontxa class=fl href=http://216.239.39.100/search?q=cache:zvXzurlι2cc8C:www.redherring.com/+stock+charts&hl=en& ie=UTF-8>Cached</a> - <a class=fi href=/search?hl=en&lr=&ie=UTF-8&oe=UTF- 8&q=related:www.redhem'ng.corn >Similarpages</ax/font>
In the example provided in Table W below, the results items are separated by the anchor or tag "<span class=i>" which is followed by a hypertext reference tag, namely "<a onclick- ', that defines the Descriptive Hypertext Link 150, including the descriptive text portion and the underlying raw url. In the example of Table W, the underlying raw url of the first result item is <http://stocks.tradingcharts.com> and the descriptive text portion 152 is "Free stock-price charts quotes".
TABLE W
<
<span class=ixa onclick="Co('I ')" href="/r?ck_sm=384408da&ref=20080&uid=37acedd422c60529&r=http%3A%2F%2Fstocks. tradingcharts.com%2F" onMouseOveι="status='http://stocks.tradingcharts.com '; return true;">Free <b>stock</b> price <b>charts</b> quotes</a> &nbsp; <sρan id="ctl " class=yx/sρan>
</span><br>
Free <b>stock</b> quotes and <b>charts</b> for nearly every North American exchange.... Free <b>stock</b> price <b>charts< b> <b>stock< b> price quotes The source for free <b>stock<Λ» market price quotations <b>charts</b>. We chart thousands of stocks ...<br>
<span class=x>
stocks.tradingcharts.com/
&#149; <a ' href="/sites/searclVweb?pg=q&type=stext&q=like:http://stocks.tradmgchaitsxom &dq=stoc] +c harts" class=x>Related pages</a>&nbsp;
&#149; <a hjef="btrp://jump.altavista.com/tιans.go?urte^ cIass=x>Translate</a> <br><a href="http://jump.altavista.com/more_from_site.go?q&stype=stext&Translate=on&sc=offι&q=st ock+charts&si=l 6afb37d31 cb3a91 &kl=XX" class=x>More pages from stocks.tradingcharts.com</a>&nbsp; </span>
<br><br clear=left>
<blockquote>
<span class=i><a onclick="Co('2')" href=''/r?ck_sm=7a46c44c&ref=20080&uid=6ceδ8a7a4dalald2&r=http%3A%2F%2Fwww.trad ingcharts.com%2F" onMouseOver="staras- http://www.tradingcharts.com/'; return true;"xb>Charts< b> Quotes From TradingCharts- <b>stock< b> market commodity futures market quotations plus stocks commodities price <b>charts< bx/a> &nbsp; <span id="ct2" class=yx/span> </sρan><br>
The source for free quotes and <b>charts< b> - over 30,000 <b>stock</b> market and commodity futures ... Free <b>charts</b> quotations <b>stock</b> market commodity futures quotes price <b>charts</b> The source for free quotes <b>charts</b> ...<br>
<span class=x>
www.tradingcharts.com
&#149; <a href='7sites/searcl web?pg=q&stype=stext&q=like:http://www.tradingcharts.com &dq=stock+ch arts" class=x>Related pages</a>&nbsp;
&#149; <a href="http://jump.altavista.conVtτans.go?urltext=http://www.tradingchartsxom/&language=en" class=x>Translate</a>
<br><a href="http://jump.altavista.com/more_from_site.go?q&stype=stext&Translate=on&sc=off&q=st ock+charts&si=]δafb37d31cb3a91&kl=XX" class=x>More pages from www.tradingcharts.com</a>&nbsp; </span> <br><br clear=left>
</blockquote>
<span class=i><a onclicl ="Co('3')" href="/r?ck_sm=8e6759d8&ref=20080&uid=694a35a5259ee060,Sr=http%3A%2F%2Fbigcharts. marketwatch.com%2F" onMouseOveι="status='http:/ bigcharts.ιaarketwatch.com '; return true;">BigCharts - Charting a World of Investment lnformation</a> &nbsp; <span id="ct3" class=yx/span> </spanXbr> Symbol Keywords: Find Symbol New! ~&gt; major market indexes Sponsored By:<br>
<span class=x>
bigcharts.marketwatch.com
&#149; <a href= sites/search/web?pg=q&stype=stext&q=like:http://bigcharts.marketwatch.com/&dq=stock +charts" class=x>Related pages</a>&nbsp; &#149; <a href="http://jump.altavista.coπVtrans.go?urltext=http://bigcharts.marketwatch.coιιι/&language=e n" class=x>Translate</a>
<br><a href="http://jump.altavista.com more_from_site.go?q&stype=stext&Translate=on&sc=off&q=st ock+charts&si=22a4278b83111819&kl=XX" class=x>More pages from bigcharts.marketwatch.com</a>&nbsρ; </span> >
To create the Search Results List 146, the software analyzes each page or resource displayed within the browser application or other similar application ofthe computing device ofthe User, preferably when the page has completed loading, and compares the cunent page to a predetermined set of known search result pages. In particular, the software compares the first portion ofthe location ofthe cunent page or resource (i.e., the url), such as the domain and certain further arguments or strings, to a predetermined list of resource locations of known search results sources. For example, the first portion of a url for a search result page returned by the "google.com" Internet search engine is known to be < http .7/www. goo gl e. com/search? > and a similar first portion ofthe url for the "Alta Vista" search engine is < hrtp://www.altavista.corn/sites/search/web? >.
If the software determines the current page to be one of a known type of search results source, the software scans through the source code ofthe page to determine the results items displayed on the page. It can be appreciated that upon detection of a search result page, the format of that page is also determined. Therefore, the scan ofthe source code is conducted according to the known format of the detected search results page. The software scans the source code of a detected search result page for an indicator of a results item such as a predetermined combination of tags. Specifically, the software scans the source code for the first occunence of a predetermined separator tag, such as a text formatting tag, where the next tag (i.e., the first child tag) is a resource reference tag, such as a hypertext reference tag. For example, for the source code set forth in Table V, the software scans the code for the first instance of the "<p>" tag where the next tag is the "<a href=" tag. For the source code set forth in Table W, the software scans for the first instance ofthe "<span class=i>" tag where the next tag is the "<a onclick- ' tag.
Upon detection of an occunence ofthe predetermined combination of tags, the software parses the resource information ofthe associated resource reference tag to determine the descriptive text portion and the underlying resource location (url) for the resource. The descriptive text portion of he resource reference tag is added to the Search Results List 146 and the resource location is stored in memory ofthe computing device and associated with the item added to the Search Results List 146. This process is repeated until the Search Results List 146 is filled with a predetermined number of results items, for example 10, or until the software scans through the entire page.
It should be understood, of course, that the specific form ofthe invention herein illustrated and described is intended to be representative only, as certain changes may be made therein without departing from the clear teachings ofthe disclosure. Accordingly, reference should be made to the following appended claims in determining the full scope ofthe invention.

Claims

Claims:
1. A method of selecting and displaying content items in a network browser application on a user computing device, the method comprising: display programming of said user computing device displaying a network source with a plurality of displayed content items in an original browser window, each displayed content item having a network location; selection programming receiving a selection of a selected content item, from among said plurality of displayed content items;
- display programming of said user computing device displaying said selected content item in an independent browser window; and
- loading said selected content item into said independent browser window from said network location.
2. The method of claim 1, wherein said step of receiving a selection of a selected content item is completed after two clicks of a pointing device by a user, and said step of displaying said selected content item in said independent browser window occurs without fiirther input from said user.
3. The method of claim 1 , wherein said independent browser window is resizable and dimensions of said selected content item being defined as predetermined percentages of said independent browser window.
4. The method of claim 1, wherein said display programming executes an external player, program, plug-in or helper application to display said selected content item and said external player, program, plug-in or helper application is defined as an embedded object within said independent browser window.
5. The method of claim 4, wherein multiple instances of a same external player, program, plug-in or helper application are executed on said computing device simultaneously.
6. The method of claim 1, wherein said selected content item comprises a string of text.
7. The method of claim 1, further comprising:
- programming of said user computing device storing a definition of said independent browser window;
- said definition including said network location of said selected content item;
- retrieval programming of said user computing device retrieving a list of stored definitions from memory of a computing device, displaying said list of stored definitions, and receiving a selection of a definition from said user; and
- said display programming receiving said network location of said selected content item from said retrieval programming and displaying said selected content item in a browser window.
8. The method of claim 7, wherein said definition of said browser window is stored on a server accessible over a network and said retrieval programming of said user computing device retrieving said list of stored definitions from said server.
9. The method of claim 7, wherein:
- said list comprises definitions of a plurality of browser windows;
- said retrieval programming dynamically modifies said list according to a second- level domain of a source displayed in a browser; and
- said retrieval programming comparing said second-level domain of said source displayed in said browser with second-level domains of network locations of content items of said plurality of browser windows in said definitions.
10. The method of claim 7, wherein said retrieval programming displays a list of a predetermined number of most recently stored definitions in chronological order of storage and said retrieval programming receives a selection of a stored definition from said user from said list.
11. The method of claim 1, wherein said selection programming receives an input of keywords from said user, said keywords being associated with said independent browser window, and further comprising search programming of said user computing device querying a network search engine, said query including said keywords, and said search programming retrieving said keywords from memory of a computing device.
12. The method of claim 11, wherein said query is limited to a second-level domain of said source of said selected content item and said search programming retrieving said domain from memory of a computing device.
13. The method of claim 1, further comprising search programming of said user computing device querying a network search engine, said query being limited to a second-level domain of one of said selected content item.
14. The method of claim 1, further comprising:
- programming of said user computing device associated with said independent browser window receiving a command from said user to load said network source into a new browser window;
- said display programming retrieving a network location of said network source from memory of a computing device and loading said network source from a said network location of said network source; and
- said display programming displaying said network source in said new browser window.
15. The method of claim 1 , further comprising :
- programming of said user computing device associated with said independent browser window receiving a command from said user to load a main web page of a second-level network domain of said source into a new browser window;
- said display programming obtaining said second-level network domain from memory of a computing device and loading said main web page from said second-level network domain; and - said display programming displaying said main web page in said new browser window.
16. The method of claim 1 , further comprising: scanning programming of said user computing device comparing said multiple plurality of content items of said network source to a list of types of supported content items in memory of a computing device;
- said selection programming displaying a list of supported content items in said network source; and
- said selection programming receiving said selection of said selected content item from said list of supported content items from said user.
17. The method of claim 1 , further comprising: said selection programming providing a selection icon in a display area or frame of said selected content item; and said selection programming receiving said selection from said user of said selected content item when said user clicks a pointing device once over said selection icon.
18. The method of claim 17, further comprising said selection icon appearing when a pointing device of said computing device enters said display area of said selected content item; and
- said selection icon disappearing when said pointing device exits said display area of said selected content item.
19. The method of claim 1 , further comprising, in response to a command from said user, said display programming maintaining said window as a top browser window on said computing device.
20. The method of claim 1 , further comprising: - said display programming displaying at least two selected content items in separate frames within said independent browser window; said frames of said independent browser window loading said two selected content items from respective network locations of said two selected content items.
21. The method of claim 20, wherein said separate frames are resizable and a size of at least one of said two selected content items is adjusted when an associated frame is resized.
22. The method of claim 20 further comprising: said display programming displaying a browser window reload icon;
- reload programming of said user computing device reloading said two selected content items when said user clicks once on said browser window reload icon; and
- upon selection of said reload icon said two selected content items being reloaded from their respective network locations.
23. The method of claim 1 , further comprising: said display programming displaying said selected content item in an initial frame and displaying a frame division icon over said selected content item;
- said display programming dividing said initial frame into two sub-frames when a user clicks once on said frame division icon; and
- said display programming displaying said selected content item in one of said two sub-frames.
24. The method of claim 23 wherein:
- said frame division icon appears when a pointing device of said computing device enters a display area or frame of said selected content item; and
- said frame division icon disappears when said pointing device exits a display area or frame of said selected content item.
25. The method of claim 20, wherein said two selected content items do not share a common network source.
26. The method of claim 20, further comprising:
- programming of said user computing device storing a definition of said independent browser window in memory of a computing device;
- said definition including identities of said two selected content items and network locations of said two selected content items;
- retrieval programming of said user computing device retrieving a list of stored definitions from memory of a computing device, displaying said list of stored definitions, and receiving a selection of a stored definition from said user; and
- said display programming receiving said network locations of said two selected content items from said retrieval programming and displaying said two selected content items in separate frames in a browser window.
27. The method of claim 20, further comprising, in response to a command from said user, reload programming of said user computing device selectively reloading a refreshed content item in one of said two frames of said window, said refreshed content item being reloaded from said network location thereof.
28. The method of claim 20, further comprising:
_ programming of said user computing device receiving a command from said user to load a network source of one of said two content items into a new browser window; _ said display programming retrieving a network location of said network source from memory of a computing device and loading said network source from said network location of said network source; and
_ said display programming displaying said network source in said new browser window.
29. The method of claim 20, further comprising:
_ programming of said user computing device receiving a command from said user to load a main web page of a second-level network domain of a network source of one of said two selected content items into a new browser window;
_ said display programming obtaining said second-level network domain from memory of a computing device and loading said main web page from said second-level network domain; and
_ said display programming displaying said main web page in said new browser window.
30. The method of claim 20, wherein:
_ said selection programming receives an input of keywords from said user and further comprising search programming of said user computing device querying a network search engine; _ said query including said keywords and being limited to a second-level network domain of one of said two selected content items; and _ said search programming retrieving said keywords and said second-level network domain from memory of a computing device.
31. The method of claim 20, further comprising search programming of said user computing device querying a network search engine, said query including at least a portion of said respective network location of one of said two selected content items, and said search programming retrieving said respective network location from memory of a computing device.
32. The method of claim 20, further comprising:
_ selection programming of said user computing device receiving a selection of one of said two selected content items within said frames; _ said selection programming obtaining a network location of said one selected content item from memory of a computing device; _ display programming of said user computing device displaying said selected content item in a new browser window exclusive of an other one of said two selected content items; and _ said display programming retrieving said network location of said one selected content item from memory of a computing device and loading said one content item into said new browser window from said network location of said one selected content item.
33. The method of claim 1 , further comprising :
_ transmission programming transmitting a definition of said browser window to a recipient computing device, said definition including said network location of said selected content item; _ recipient display programming of a browser application of said recipient computing device displaying said selected content item in a recipient browser window according to said definition; and _ said recipient display programming retrieving said network location of said selected content item from memory of a computing device and loading said selected content item from said network location.
34. The method of claim 33 , further comprising : _ said transmission programming transmitting said definition to a server and said server associating said definition with a unique window identifier; _ said transmission programming transmitting a link to said recipient computing device, said link leading to said server and including said unique window identifier; and _ retrieval programming of said recipient computing device retrieving said definition from said server via said link and said unique window identifier.
35. The method of claim 34, wherein said link is transmitted to said recipient computing device via electronic mail.
36. The method of claim 34, wherein said link is transmitted to said recipient computing device via an instant messenger application.
37. The method of claim 33, further comprising:
_ said search programming of said selection programming receiving an input of keywords from said user; _ said definition including said keywords; and _ search programming of said recipient computing device querying a network search engine, said query including said keywords, and said search programming of said recipient computing device retrieving said keywords from memory of a computing device.
38. The method of claim 33 , further comprising :
_ programming of said user computing device of said recipient computing device receiving a command to load said network source into a new browser window; _ said recipient display programming retrieving a network location of said network source from memory of a computing device and loading said network source from said network location of said network source; and _ said recipient display programming displaying said network source in said new browser window.
39. The method of claim 33 , further comprising :
- programming of said user computing device of said recipient computing device receiving a command to load a main web page of a second-level network domain of said network source in a new browser window; _ said recipient display programming obtaining said second-level network domain from memory of a computing device and loading said main web page from said second-level network domain; and _ said recipient display programming displaying said main web page in said new browser window.
40. The method of claim 1 , further comprising:
_ transmission programming transmitting a definition of said browser window to a recipient computing device, said definition including said network location of said selected content item; _ sensing programming sensing a presence of existing display programming on said recipient computing device equivalent to said display programming of said user computing device; _ said existing display programming displaying said selected content item in a browser window according to said definition; and _ said existing display programming retrieving said network location of said selected content item from memory of a computing device and loading said selected content item from said network location.
41. The method of claim 40, further comprising:
_ transmission programming transmitting a definition of said browser window to a second recipient computing device, said definition including said network location of said selected content item;
_ recipient display programming of said browser application of said second recipient computing device displaying said selected content item in a second recipient browser window according to said definition; and _ said second recipient display programming retrieving said network location of said selected content item from memory of a computing device and loading said selected content item from said network location.
42. A method of tracking activities of displaying and sharing of content items over a network, the method comprising:
_ transmitting a definition of a custom selection of content items from a computing device to a server on said network, said definition including an identifier unique to said custom selection; _ transmitting said unique identifier to said server upon a viewing or sharing activity of said custom selection of content items; and _ tracking viewing or sharing activity of said custom selection of content items.
43. The method of claim 42, wherein said definition includes network locations of said content items and further comprising tracking viewing or sharing of said content items.
44. The method of claim 42, wherein said custom selection is a diverse custom selection including at least two content items from diverse second-level network domains and further comprising tracking viewing or sharing activity of diverse custom selections including two content items from a predetermined set of second-level network domains.
45. The method of claim 42, further comprising transmitting said definition to a recipient computing device, and tracking a method of transmission of said definition to said recipient computing device.
46. The method of claim 1 , wherein said selected content item is one of a multiple plurality of content items in said network source and said display programming displaying said selected content item in said browser window exclusive of non-selected ones of said multiple plurality of content items.
47. The method of claim 34, further comprising programming operable to load said link into and retrieve said link from a clipboard memory of said user computing device upon direction by said user.
48. The method of claim 47 wherein said transmission programming is an electronic communication application of said user computing device, said electronic communication application receiving said link from said clipboard memory.
49. The method of claim 48 wherein said electronic communication application is an electronic mail application.
50. The method of claim 48 wherein said electronic communication application is an instant messaging application.
51. The method of claim 7, further comprising:
- a system area menu icon independent of any browser application of said user device; and said system area menu icon providing access to said list of stored definitions.
52. The method of claim 7, further comprising:
- a system area menu icon independent of any browser application of said user device; and said system area menu icon providing access to said list of most recently used definitions.
53. The method of claim 7, further comprising:
- a system area menu icon independent of any browser application of said user device;
- said system area menu icon providing access to said list of recipients; and
- each one of said list of recipients having an electronic address associated therewith.
4. A method of selecting and displaying resources on a computing device, comprising
- detecting a presence of a search results page in an application on a user computing device; scanning said search results page for a results item indicator; modifying a menu item in a toolbar menu according to resource information associated with a resource reference tag located in a predetermined position relative to said results item indicator;
- associating said menu item with a resource location; and
- upon selection of said menu item by a user, loading a resource identified by said resource information from said resource location on said user computing device.
55. The method of claim 54, wherein:
- said results item indicator comprises a predetermined formatting tag having a resource reference tag as a first child tag; and - modifying said menu item according to resource information associated with said first child tag.
56. The method of claim 54, wherein said step of detecting a presence of a search results page comprises comparing a resource location of a current resource to a predetermined list of resource locations of search results sources.
57. (new) The method of claim 1, further comprising search programming of said user computing device receiving a search parameter comprising a second-level network domain of said network source of said selected content item, said search parameter being associated with said independent browser window, and said search programming querying a network search engine using said search parameter.
58. (new) The method of claim 20 wherein: - said selection programming receives a search parameter including a second-level network domain of said two selected content items, and further comprising search programming of said user computing device querying a network search engine using said search parameter.
59. (new) The method of claim 33, wherein:
- said selection programming receives a search parameter including a second-level network domain of said two selected content items, and further comprising search programming of said user computing device querying a network search engine using said search parameter.
60. (new) The method of claim 1, wherein
- said step of receiving a selection of a selected content item further comprises simultaneously receiving a selection of a plurality of selected content items.
61. (new) The method of claim 60 wherein said step of simultaneously receiving a selection of a plurality of selected content items further comprises a user clicking and dragging a pointing device over said plurality of selected content items.
PCT/US2003/031074 2002-09-25 2003-09-25 Selecting, tracking and transferring access to content of web pages WO2004029780A2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP03755014A EP1573452A2 (en) 2002-09-25 2003-09-25 System, method and apparatus for selecting, displaying, managing, tracking and transferring access to content of web pages and other sources
CA002500263A CA2500263A1 (en) 2002-09-25 2003-09-25 System, method and apparatus for selecting, displaying, managing, tracking and transferring access to content of web pages and other sources
AU2003272812A AU2003272812A1 (en) 2002-09-25 2003-09-25 System, method and apparatus for selecting, displaying, managing, tracking and transferring access to content of web pages and other sources

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/254,440 2002-09-25
US10/254,440 US7216290B2 (en) 2001-04-25 2002-09-25 System, method and apparatus for selecting, displaying, managing, tracking and transferring access to content of web pages and other sources

Publications (2)

Publication Number Publication Date
WO2004029780A2 true WO2004029780A2 (en) 2004-04-08
WO2004029780A3 WO2004029780A3 (en) 2007-02-01

Family

ID=32041725

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2003/031074 WO2004029780A2 (en) 2002-09-25 2003-09-25 Selecting, tracking and transferring access to content of web pages

Country Status (5)

Country Link
US (1) US7216290B2 (en)
EP (1) EP1573452A2 (en)
AU (1) AU2003272812A1 (en)
CA (1) CA2500263A1 (en)
WO (1) WO2004029780A2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7529795B2 (en) 2006-03-20 2009-05-05 Stragent, Llc Message board aggregator
US7725476B2 (en) 2005-06-14 2010-05-25 International Business Machines Corporation System and method for automated data retrieval based on data placed in clipboard memory
CN102915371A (en) * 2012-11-02 2013-02-06 上海够快网络科技有限公司 Method for dynamically referencing files on web page
US8924395B2 (en) 2010-10-06 2014-12-30 Planet Data Solutions System and method for indexing electronic discovery data

Families Citing this family (128)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7475404B2 (en) 2000-05-18 2009-01-06 Maquis Techtrix Llc System and method for implementing click-through for browser executed software including ad proxy and proxy cookie caching
US8086697B2 (en) 2005-06-28 2011-12-27 Claria Innovations, Llc Techniques for displaying impressions in documents delivered over a computer network
US8255791B2 (en) 2000-11-29 2012-08-28 Dov Koren Collaborative, flexible, interactive real-time displays
US9189467B1 (en) 2001-11-07 2015-11-17 Apple Inc. Method and apparatus for annotating an electronic document
US20030120560A1 (en) * 2001-12-20 2003-06-26 John Almeida Method for creating and maintaning worldwide e-commerce
US8495483B1 (en) * 2002-03-13 2013-07-23 Google Inc. Using text surrounding hypertext links when indexing and generating page summaries
US20040036680A1 (en) * 2002-08-26 2004-02-26 Mark Davis User-interface features for computers with contact-sensitive displays
US20040085318A1 (en) * 2002-10-31 2004-05-06 Philipp Hassler Graphics generation and integration
US7603341B2 (en) 2002-11-05 2009-10-13 Claria Corporation Updating the content of a presentation vehicle in a computer network
US7266776B2 (en) * 2002-11-25 2007-09-04 Aol Llc Facilitating communications between computer users across a network
US7434169B2 (en) 2002-11-25 2008-10-07 Aol Llc, A Delaware Limited Liability Company Facilitating communications between computer users across a network
WO2004092879A2 (en) * 2003-04-07 2004-10-28 Disney Enterprises, Inc. System and method of distributing customized content
US20040254935A1 (en) * 2003-06-12 2004-12-16 International Business Machines Corporation Method and apparatus for automatic consolidation of personalized dynamic data
US20040257346A1 (en) * 2003-06-20 2004-12-23 Microsoft Corporation Content selection and handling
US7640232B2 (en) * 2003-10-14 2009-12-29 Aol Llc Search enhancement system with information from a selected source
US7165119B2 (en) * 2003-10-14 2007-01-16 America Online, Inc. Search enhancement system and method having rankings, explicitly specified by the user, based upon applicability and validity of search parameters in regard to a subject matter
US8170912B2 (en) 2003-11-25 2012-05-01 Carhamm Ltd., Llc Database structure and front end
US8037420B2 (en) * 2003-12-04 2011-10-11 International Business Machines Corporation Maintaining browser navigation relationships and for choosing a browser window for new documents
US7617447B1 (en) * 2003-12-09 2009-11-10 Microsoft Corporation Context free document portions
US7346894B1 (en) * 2003-12-12 2008-03-18 Nvidia Corporation Method and system for specifying file-specific program settings
JP2005202750A (en) * 2004-01-16 2005-07-28 Internatl Business Mach Corp <Ibm> Power management execution device, computer, power management execution method, and program
US20050228825A1 (en) * 2004-04-06 2005-10-13 Tsun-Yi Yang Method for managing knowledge from the toolbar of a browser
US7899802B2 (en) * 2004-04-28 2011-03-01 Hewlett-Packard Development Company, L.P. Moveable interface to a search engine that remains visible on the desktop
US7278092B2 (en) * 2004-04-28 2007-10-02 Amplify, Llc System, method and apparatus for selecting, displaying, managing, tracking and transferring access to content of web pages and other sources
US8661332B2 (en) 2004-04-30 2014-02-25 Microsoft Corporation Method and apparatus for document processing
US7383500B2 (en) 2004-04-30 2008-06-03 Microsoft Corporation Methods and systems for building packages that contain pre-paginated documents
US7487145B1 (en) * 2004-06-22 2009-02-03 Google Inc. Method and system for autocompletion using ranked results
US7836044B2 (en) 2004-06-22 2010-11-16 Google Inc. Anticipated query generation and processing in a search engine
US8365083B2 (en) * 2004-06-25 2013-01-29 Hewlett-Packard Development Company, L.P. Customizable, categorically organized graphical user interface for utilizing online and local content
JP2008511057A (en) * 2004-08-19 2008-04-10 クラリア コーポレイション Method and apparatus for responding to end-user information requests
US8255413B2 (en) 2004-08-19 2012-08-28 Carhamm Ltd., Llc Method and apparatus for responding to request for information-personalization
US8078602B2 (en) 2004-12-17 2011-12-13 Claria Innovations, Llc Search engine for a computer network
US20060047770A1 (en) * 2004-09-02 2006-03-02 International Business Machines Corporation Direct information copy and transfer between real-time messaging applications
US7617450B2 (en) * 2004-09-30 2009-11-10 Microsoft Corporation Method, system, and computer-readable medium for creating, inserting, and reusing document parts in an electronic document
US7454434B1 (en) * 2004-10-04 2008-11-18 American Express Travel Related Services Company, Inc. System and method for stepped loading of web page content
US20060085476A1 (en) * 2004-10-15 2006-04-20 International Business Machines Corporation Method and system to identify a previously visited universal resource locator (url) in results from a search
US7412655B2 (en) * 2004-11-02 2008-08-12 Yahoo! Inc. Method and system of providing dynamic dialogs
US7499940B1 (en) 2004-11-11 2009-03-03 Google Inc. Method and system for URL autocompletion using ranked results
US20060106769A1 (en) 2004-11-12 2006-05-18 Gibbs Kevin A Method and system for autocompletion for languages having ideographs and phonetic characters
TW200620020A (en) * 2004-12-08 2006-06-16 Mitac Technology Corp Management method of embedded-type computer program
US7614000B2 (en) * 2004-12-20 2009-11-03 Microsoft Corporation File formats, methods, and computer program products for representing presentations
US7693863B2 (en) 2004-12-20 2010-04-06 Claria Corporation Method and device for publishing cross-network user behavioral data
US7752632B2 (en) 2004-12-21 2010-07-06 Microsoft Corporation Method and system for exposing nested data in a computer-generated document in a transparent manner
US7770180B2 (en) 2004-12-21 2010-08-03 Microsoft Corporation Exposing embedded data in a computer-generated document
US7818350B2 (en) 2005-02-28 2010-10-19 Yahoo! Inc. System and method for creating a collaborative playlist
US9043691B2 (en) * 2005-02-28 2015-05-26 James Monro Productions Inc. Method and apparatus for editing media
US8645941B2 (en) 2005-03-07 2014-02-04 Carhamm Ltd., Llc Method for attributing and allocating revenue related to embedded software
US8073866B2 (en) 2005-03-17 2011-12-06 Claria Innovations, Llc Method for providing content to an internet user based on the user's demonstrated content preferences
US20060218505A1 (en) * 2005-03-28 2006-09-28 Compton Anthony K System, method and program product for displaying always visible audio content based visualization
US20060259854A1 (en) * 2005-05-10 2006-11-16 Microsoft Corporation Structuring an electronic document for efficient identification and use of document parts
US20070174286A1 (en) * 2005-05-17 2007-07-26 Yahoo!, Inc. Systems and methods for providing features and user interface in network browsing applications
US9582602B2 (en) * 2005-05-17 2017-02-28 Excalibur Ip, Llc Systems and methods for improving access to syndication feeds in network browsing applications
US7958446B2 (en) * 2005-05-17 2011-06-07 Yahoo! Inc. Systems and methods for language translation in network browsing applications
US20060265472A1 (en) * 2005-05-17 2006-11-23 Yahoo! Inc. Systems and methods for providing short message service features and user interfaces therefor in network browsing applications
US11362897B2 (en) * 2005-05-19 2022-06-14 International Business Machines Corporation Site policy administrative agent
US9098597B2 (en) * 2005-06-03 2015-08-04 Apple Inc. Presenting and managing clipped content
US20060277460A1 (en) * 2005-06-03 2006-12-07 Scott Forstall Webview applications
US9141718B2 (en) * 2005-06-03 2015-09-22 Apple Inc. Clipview applications
US20090083757A1 (en) * 2005-06-21 2009-03-26 Mitac Technology Corp. Computer system and program plug-in management method thereof
US20070016870A1 (en) * 2005-07-15 2007-01-18 Microsoft Corporation Control panel framework
US7562287B1 (en) 2005-08-17 2009-07-14 Clipmarks Llc System, method and apparatus for selecting, displaying, managing, tracking and transferring access to content of web pages and other sources
US7831582B1 (en) * 2005-08-23 2010-11-09 Amazon Technologies, Inc. Method and system for associating keywords with online content sources
US7966395B1 (en) 2005-08-23 2011-06-21 Amazon Technologies, Inc. System and method for indicating interest of online content
US7558830B2 (en) * 2005-10-04 2009-07-07 International Business Machines Corporation Method for tagging and tracking non-hypertext markup language based e-mail
US7366762B2 (en) * 2005-10-04 2008-04-29 International Business Machines Corporation Method for monitoring and reporting usage of non-hypertext markup language e-mail campaigns
US7401123B2 (en) * 2005-10-04 2008-07-15 International Business Machines Corporation Method for identifying and tracking grouped content in e-mail campaigns
US7461127B2 (en) * 2005-10-04 2008-12-02 International Business Machines Corporation Method for determining user uniqueness in e-mail campaigns
US8943035B2 (en) * 2005-11-14 2015-01-27 Patrick J. Ferrel Distributing web applications across a pre-existing web
US8010523B2 (en) 2005-12-30 2011-08-30 Google Inc. Dynamic search box for web browser
AU2011205147B2 (en) * 2006-04-18 2012-08-30 Paypal, Inc. Correlating advertisement click events with purchase events
US20070244746A1 (en) * 2006-04-18 2007-10-18 Issen Daniel A Correlating an advertisement click event with a purchase event
JP4935413B2 (en) * 2006-09-04 2012-05-23 ソニー株式会社 Upload add-in program, upload auxiliary program, and upload method
US8972839B2 (en) * 2006-10-02 2015-03-03 Adobe Systems Incorporated Media presentations including related content
EP3029624A1 (en) * 2006-12-01 2016-06-08 SK Planet Co., Ltd. Method and apparatus for providing gift by using communication network and system including the apparatus
US8620952B2 (en) 2007-01-03 2013-12-31 Carhamm Ltd., Llc System for database reporting
WO2008091862A1 (en) * 2007-01-22 2008-07-31 Collactive, Inc. System and method for guiding non-technical people in using web services
US8595635B2 (en) * 2007-01-25 2013-11-26 Salesforce.Com, Inc. System, method and apparatus for selecting content from web sources and posting content to web logs
US9396261B2 (en) * 2007-04-25 2016-07-19 Yahoo! Inc. System for serving data that matches content related to a search results page
US20080270906A1 (en) * 2007-04-26 2008-10-30 Reddy Venkateshwara N Method and system to share content
WO2008132240A1 (en) * 2007-04-30 2008-11-06 Mehdi Aminian Method of intermediation within a social network of users of a service/application to expose relevant media items
US8392446B2 (en) * 2007-05-31 2013-03-05 Yahoo! Inc. System and method for providing vector terms related to a search query
US8171030B2 (en) 2007-06-18 2012-05-01 Zeitera, Llc Method and apparatus for multi-dimensional content search and video identification
US8713181B2 (en) * 2007-08-03 2014-04-29 International Business Machines Corporation Method for transferring inventory between virtual universes
US8103967B2 (en) * 2007-08-31 2012-01-24 Microsoft Corporation Generating and organizing references to online content
US8140982B2 (en) * 2007-11-08 2012-03-20 International Business Machines Corporation Method and system for splitting virtual universes into distinct entities
US20090177692A1 (en) * 2008-01-04 2009-07-09 Byran Christopher Chagoly Dynamic correlation of service oriented architecture resource relationship and metrics to isolate problem sources
US7921128B2 (en) * 2008-02-05 2011-04-05 International Business Machines Corporation Method and system for merging disparate virtual universes entities
US8539364B2 (en) 2008-03-12 2013-09-17 International Business Machines Corporation Attaching external virtual universes to an existing virtual universe
US8238891B1 (en) * 2008-05-01 2012-08-07 Wendy W. Tam Method and system for interactive delivery of data content to mobile devices
KR100885945B1 (en) * 2008-06-04 2009-02-26 김수현 Toolbar Searching Method and System for Intelligently Automatic Identification
US9176953B2 (en) * 2008-06-04 2015-11-03 Tianjin Sursen Investment Co., Ltd. Method and system of web-based document service
GB2461771A (en) * 2008-07-11 2010-01-20 Icyte Pty Ltd Annotation of electronic documents with preservation of document as originally annotated
US20100057816A1 (en) * 2008-08-26 2010-03-04 Eric May Organizing Internet/Intranet research with interactive Dynamic Research Diagrams and Lists
US8365082B2 (en) * 2008-10-23 2013-01-29 Savnor Technologies Llc Universal content referencing, packaging, distribution system, and a tool for customizing web content
CN101504648A (en) * 2008-11-14 2009-08-12 北京搜狗科技发展有限公司 Method and apparatus for showing web page resources
WO2010139277A1 (en) 2009-06-03 2010-12-09 Google Inc. Autocompletion for partially entered query
US20110047501A1 (en) * 2009-08-21 2011-02-24 Avaya Inc. Sequenced applications with user playback or other user controls utilizing a single window or dialog box
US8832587B2 (en) 2009-08-21 2014-09-09 Avaya Inc. Video window with integrated content
US8719351B2 (en) * 2009-09-15 2014-05-06 International Business Machines Corporation Image rescale based on defined characteristics
US9094354B2 (en) * 2009-09-30 2015-07-28 Avaya Inc. Facilitating real-time communications in electronic message boards
US20110082719A1 (en) * 2009-10-07 2011-04-07 Tokoni Inc. System and method for determining aggregated tracking metrics for user activities
US20110238456A1 (en) * 2010-03-25 2011-09-29 Ontraport Inc. Business Automation Techniques
US9092128B2 (en) * 2010-05-21 2015-07-28 Apple Inc. Method and apparatus for managing visual information
KR101811743B1 (en) 2010-09-09 2018-01-25 삼성전자주식회사 Multimedia apparatus and Method for providing contents thereof
US8843984B2 (en) 2010-10-12 2014-09-23 At&T Intellectual Property I, L.P. Method and system for preselecting multimedia content
WO2012055067A1 (en) * 2010-10-26 2012-05-03 Hewlett-Packard Development Company, L.P. Extraction of content from a web page
US9223460B2 (en) * 2010-12-17 2015-12-29 Microsoft Corporation Toolbar search centered user interface model
US9338215B2 (en) 2011-03-14 2016-05-10 Slangwho, Inc. Search engine
US9043698B2 (en) * 2011-03-28 2015-05-26 Aleksandar Tucovic Method for users to create and edit web page layouts
US20120258435A1 (en) * 2011-04-05 2012-10-11 Smart Technologies Ulc Method for conducting an assessment and a participant response system employing the same
US9477668B2 (en) * 2011-05-18 2016-10-25 Verizon Patent And Licensing Inc. Content element editor
US20120304073A1 (en) * 2011-05-27 2012-11-29 Mirko Mandic Web Browser with Quick Site Access User Interface
US9430583B1 (en) 2011-06-10 2016-08-30 Salesforce.Com, Inc. Extracting a portion of a document, such as a web page
US10409962B2 (en) * 2011-06-30 2019-09-10 Intel Corporation System and method for controlling access to protected content
ES2656612T3 (en) 2011-11-09 2018-02-27 Movable Ink Dynamic email content management
US9197613B2 (en) * 2011-12-20 2015-11-24 Industrial Technology Research Institute Document processing method and system
US9753926B2 (en) 2012-04-30 2017-09-05 Salesforce.Com, Inc. Extracting a portion of a document, such as a web page
US8843858B2 (en) 2012-05-31 2014-09-23 Microsoft Corporation Optimization schemes for controlling user interfaces through gesture or touch
US9495069B2 (en) * 2012-08-31 2016-11-15 Paypal, Inc. Expanded icon functionality
US10261938B1 (en) 2012-08-31 2019-04-16 Amazon Technologies, Inc. Content preloading using predictive models
CN103914466B (en) * 2012-12-31 2017-08-08 阿里巴巴集团控股有限公司 A kind of method and system of label button management
WO2014127535A1 (en) 2013-02-22 2014-08-28 Google Inc. Systems and methods for automated content generation
US20140351679A1 (en) * 2013-05-22 2014-11-27 Sony Corporation System and method for creating and/or browsing digital comics
US9148771B2 (en) 2013-07-29 2015-09-29 Motorola Solutions, Inc. Method to provide context-aware linkage between NG9-1-1 SMS and public safety incident
US20150205884A1 (en) * 2014-01-22 2015-07-23 AI Squared Emphasizing a portion of the visible content elements of a markup language document
US20180246965A1 (en) * 2017-02-27 2018-08-30 Ca, Inc. Terminal Emulator-Based Online Search
US11436292B2 (en) 2018-08-23 2022-09-06 Newsplug, Inc. Geographic location based feed
US11841916B2 (en) * 2021-06-08 2023-12-12 Dell Products L.P. System and method to update a bookmarked document link and avoid a broken link

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6216141B1 (en) * 1996-12-06 2001-04-10 Microsoft Corporation System and method for integrating a document into a desktop window on a client computer
US6278448B1 (en) * 1998-02-17 2001-08-21 Microsoft Corporation Composite Web page built from any web content
US6405221B1 (en) * 1995-10-20 2002-06-11 Sun Microsystems, Inc. Method and apparatus for creating the appearance of multiple embedded pages of information in a single web browser display
US6605120B1 (en) * 1998-12-10 2003-08-12 International Business Machines Corporation Filter definition for distribution mechanism for filtering, formatting and reuse of web based content

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1994014115A2 (en) * 1992-12-01 1994-06-23 Microsoft Corporation A method and system for in-place interaction with embedded objects
US5838906A (en) * 1994-10-17 1998-11-17 The Regents Of The University Of California Distributed hypermedia method for automatically invoking external application providing interaction and display of embedded objects within a hypermedia document
US5877765A (en) * 1995-09-11 1999-03-02 Microsoft Corporation Method and system for displaying internet shortcut icons on the desktop
US5880733A (en) * 1996-04-30 1999-03-09 Microsoft Corporation Display system and method for displaying windows of an operating system to provide a three-dimensional workspace for a computer system
US5751283A (en) * 1996-07-17 1998-05-12 Microsoft Corporation Resizing a window and an object on a display screen
US5897644A (en) * 1996-09-25 1999-04-27 Sun Microsystems, Inc. Methods and apparatus for fixed canvas presentations detecting canvas specifications including aspect ratio specifications within HTML data streams
US5734380A (en) * 1996-09-27 1998-03-31 Adams; James S. Method for controlling the presentation of displays in a multi-window computer environment
US6215502B1 (en) * 1996-10-28 2001-04-10 Cks Partners Method and apparatus for automatically reconfiguring graphical objects relative to new graphical layouts
US6052130A (en) * 1996-11-20 2000-04-18 International Business Machines Corporation Data processing system and method for scaling a realistic object on a user interface
US6008809A (en) * 1997-09-22 1999-12-28 International Business Machines Corporation Apparatus and method for viewing multiple windows within a dynamic window
US6037934A (en) * 1997-11-21 2000-03-14 International Business Machines Corporation Named bookmark sets
US6185589B1 (en) * 1998-07-31 2001-02-06 Hewlett-Packard Company Automatic banner resizing for variable-width web pages using variable width cells of HTML table
US6272493B1 (en) * 1999-01-21 2001-08-07 Wired Solutions, Llc System and method for facilitating a windows based content manifestation environment within a WWW browser
US6396500B1 (en) * 1999-03-18 2002-05-28 Microsoft Corporation Method and system for generating and displaying a slide show with animations and transitions in a browser
US6944821B1 (en) * 1999-12-07 2005-09-13 International Business Machines Corporation Copy/paste mechanism and paste buffer that includes source information for copied data

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6405221B1 (en) * 1995-10-20 2002-06-11 Sun Microsystems, Inc. Method and apparatus for creating the appearance of multiple embedded pages of information in a single web browser display
US6216141B1 (en) * 1996-12-06 2001-04-10 Microsoft Corporation System and method for integrating a document into a desktop window on a client computer
US6278448B1 (en) * 1998-02-17 2001-08-21 Microsoft Corporation Composite Web page built from any web content
US6605120B1 (en) * 1998-12-10 2003-08-12 International Business Machines Corporation Filter definition for distribution mechanism for filtering, formatting and reuse of web based content

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7725476B2 (en) 2005-06-14 2010-05-25 International Business Machines Corporation System and method for automated data retrieval based on data placed in clipboard memory
US8683003B2 (en) 2006-03-20 2014-03-25 Boadin Technology, LLC Hyperlink with graphical cue
US8682961B2 (en) 2006-03-20 2014-03-25 Boadin Technology, LLC Hyperlink with graphical cue
US7856472B2 (en) 2006-03-20 2010-12-21 Aloft Media, Llc Instantaneous symbol lookup
US8180829B2 (en) 2006-03-20 2012-05-15 Boadin Technology, LLC Message board aggregator
US8219906B2 (en) 2006-03-20 2012-07-10 Boadin Technology, LLC Instantaneous symbol lookup
US8219615B2 (en) 2006-03-20 2012-07-10 Boadin Technology, LLC Instantaneous symbol lookup
US7849148B2 (en) 2006-03-20 2010-12-07 Aloft Media, Llc Instantaneous symbol lookup
US7529795B2 (en) 2006-03-20 2009-05-05 Stragent, Llc Message board aggregator
US11308260B2 (en) 2006-03-20 2022-04-19 Alof Media, LLC Hyperlink with graphical cue
US8700704B2 (en) 2006-03-20 2014-04-15 Boadin Technology, LLC Message board aggregator
US10078623B2 (en) 2006-03-20 2018-09-18 Aloft Media, Llc Hyperlink with graphical cue
US10042823B2 (en) 2006-03-20 2018-08-07 Aloft Media, Llc Hyperlink with graphical cue
US8924395B2 (en) 2010-10-06 2014-12-30 Planet Data Solutions System and method for indexing electronic discovery data
CN102915371B (en) * 2012-11-02 2015-04-15 上海够快网络科技有限公司 Method for dynamically referencing files on web page
CN102915371A (en) * 2012-11-02 2013-02-06 上海够快网络科技有限公司 Method for dynamically referencing files on web page

Also Published As

Publication number Publication date
AU2003272812A1 (en) 2004-04-19
US7216290B2 (en) 2007-05-08
CA2500263A1 (en) 2004-04-08
EP1573452A2 (en) 2005-09-14
US20030221167A1 (en) 2003-11-27
WO2004029780A3 (en) 2007-02-01

Similar Documents

Publication Publication Date Title
US7216290B2 (en) System, method and apparatus for selecting, displaying, managing, tracking and transferring access to content of web pages and other sources
US7278092B2 (en) System, method and apparatus for selecting, displaying, managing, tracking and transferring access to content of web pages and other sources
US7360166B1 (en) System, method and apparatus for selecting, displaying, managing, tracking and transferring access to content of web pages and other sources
US7562287B1 (en) System, method and apparatus for selecting, displaying, managing, tracking and transferring access to content of web pages and other sources
US20050131992A1 (en) System, method and apparatus for selecting, displaying, managing, tracking and transferring access to content of web pages and other sources
US20180131680A1 (en) System, method and apparatus for selecting content from web sources and posting content to web logs
US8769413B2 (en) System, method and computer program product for a multifunction toolbar for internet browsers
US6321256B1 (en) Method and apparatus for controlling client access to documents
US6657647B1 (en) Controlling the order in which content is displayed in a browser
US6405222B1 (en) Requesting concurrent entries via bookmark set
US6317782B1 (en) Method and apparatus for detecting actual viewing of electronic advertisements and transmitting the detected information
US8423587B2 (en) System and method for real-time content aggregation and syndication
US6405192B1 (en) Navigation assistant-method and apparatus for providing user configured complementary information for data browsing in a viewer context
CA2545940C (en) System and method of retrieving and presenting partial (skipped) document content
US9547648B2 (en) Electronic document information extraction
US6279036B1 (en) Method and apparatus for detecting actual viewing or electronic advertisements
US6275854B1 (en) Method and apparatus for detecting actual viewing of electronic advertisements
US6347320B1 (en) Search parameters
JP3083806B2 (en) Method and system for selectively disabling display of viewable objects
EP2471011B1 (en) Dynamic action links for web content sharing
US7818681B2 (en) Method and system for internally identifying a specific web browser for displaying a specific web page
US20020078165A1 (en) System and method for prefetching portions of a web page based on learned preferences
US20070198943A1 (en) System and Method for Distributing News Articles and Other Information in an Organization
US6963901B1 (en) Cooperative browsers using browser information contained in an e-mail message for re-configuring
JPH10154162A (en) System and method for providing multimedia bookmark to hypertext markup language file

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 CO CR CU CZ DE DK DM DZ EC 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 NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG UZ VC VN YU ZA ZM 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 ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2500263

Country of ref document: CA

WWE Wipo information: entry into national phase

Ref document number: 2004540329

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 2003272812

Country of ref document: AU

WWE Wipo information: entry into national phase

Ref document number: 1645/DELNP/2005

Country of ref document: IN

WWE Wipo information: entry into national phase

Ref document number: 2003755014

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 2003755014

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: JP

WWW Wipo information: withdrawn in national office

Ref document number: JP

WWW Wipo information: withdrawn in national office

Ref document number: 2003755014

Country of ref document: EP