EP1412874A4 - System and method for automated tracking and analysis of document usage - Google Patents

System and method for automated tracking and analysis of document usage

Info

Publication number
EP1412874A4
EP1412874A4 EP02755591A EP02755591A EP1412874A4 EP 1412874 A4 EP1412874 A4 EP 1412874A4 EP 02755591 A EP02755591 A EP 02755591A EP 02755591 A EP02755591 A EP 02755591A EP 1412874 A4 EP1412874 A4 EP 1412874A4
Authority
EP
European Patent Office
Prior art keywords
web page
web
url
server
request
Prior art date
Legal status (The legal status 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 status listed.)
Withdrawn
Application number
EP02755591A
Other languages
German (de)
French (fr)
Other versions
EP1412874A2 (en
Inventor
Yaron Galai
Oded Itzhak
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yahoo AD Tech LLC
Original Assignee
Quigo Technologies 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 Quigo Technologies LLC filed Critical Quigo Technologies LLC
Publication of EP1412874A2 publication Critical patent/EP1412874A2/en
Publication of EP1412874A4 publication Critical patent/EP1412874A4/en
Withdrawn legal-status Critical Current

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/951Indexing; Web crawling techniques
    • 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/953Querying, e.g. by the use of web search engines
    • G06F16/9538Presentation of query results

Definitions

  • the present invention relates to a system and a method for submission of documents to a search engine, and in particular, for such a system and method in which the documents are constructed as mark-up language documents, such as Web pages written in HTML (HyperTex! Mark-up Language).
  • the World Wide Web is structured as a "two-party'" system, in which a first party, the computer user, receives content from a second party, the Web server.
  • the user typically requests the content in the form of mark-up language documents, such as Web pages written in HTML.
  • the user submits a particular URL (uniform resource locator) to the Web server, which retrieves and transmits the desired Web page to the computer of the user.
  • URL uniform resource locator
  • search engines Since there are many Web pages available through the World Wide Web, search engines have evolved to assist the user in the search for a particular Web page. These search engines index Web pages according to one or more keywords, such that when the user submits the quer for a particular Web page, those Web page(s) with the same or similar keywords as for the query are retrieved. Search engines may receive Web pages (or pointers to those Web pages, such as URLs for example) by submission from the author of the page(s), but the search engines also actively search for new Web pages. Typically, such active searches are performed automatically with autonomous software programs called "spiders" or "crawlers , ⁇
  • Dynamic Web pages are created upon submission of a query by a user, which determines the identity of the components to be retrieved and assembled into the Web page.
  • a URL for a dynamic Web page if it exists, may appear as follows: hup:: ⁇ domam.com search, asp'.'p I ' yl&p2 ⁇ v2.
  • search.asp is a name of an application which should be invoked, followed by a "?” sign, and a list of parameters and their values.
  • Many autonomous software search programs are designed to ignore such links, since automatically following this type of link may cause an infinite recursion which the autonomous software program cannot properly handle.
  • Such links may not exist at all, as the user may enter information through a scripting language form, such as JavaScript for example, which would then cause the dynamic Web page to be assembled according to the entered information.
  • a scripting language form such as JavaScript for example
  • dynamic Web pages are often not indexed, or even "un-indexable " , by autonomous software search programs.
  • the background art does not teach or suggest a solution to the problem of automatically indexing dynamic Web pages by an autonomous software search program.
  • the background art also does not teach or suggest a solution to the inability of such programs to easily analyze, parse and index dynamic Web pages.
  • the background art does not teach or suggest a solution to such problems as repeated indexing of the same Web page and/or to the correct identification of URLs for dynamic Web pages.
  • the background art also does not teach or suggest a solution to the problem of automatically specifically notifying a search engine about the existence of specific Web pages, without direct manual submission to the search engine.
  • the background art also does not teach or suggest a mechanism for determining ranking information for a dynamic Web page or other type of dynamic document, with regard to the number of times that the Web page or other document is accessed.
  • the background art also does not teach or suggest or suggest
  • the present invention overcomes these problems of the background art by providing a system and a method for automatically submitting Web pages to a search engine, which is preferably used for submitting dynamic Web pages, but may optionally be used for any type of Web page.
  • the present invention is also useful for any document which can be identified and/or located according to a URI (Unified Resource Identifier), which acts as an address or pointer Io that document.
  • URI Unified Resource Identifier
  • particular code is inserted into the document, which causes the URI of that document to be automatically sent to another location, such as a server and/or search engine when that document is requested by a user.
  • the URL (URI of the Web page) could optionally be sent to the server and/or search engine when the Web page is loaded by a Web browser. If the URIs are not sent directly to the search engine, the server, such as a Web server for example, can then optionally automatically send the received URLs to the search engine, or alternatively, the search engine could retrieve the received URLs from the Web server.
  • the server such as a Web server for example, can then optionally automatically send the received URLs to the search engine, or alternatively, the search engine could retrieve the received URLs from the Web server.
  • search engine includes but is not limited to, any type of autonomous software search program, such as a "spider” for searching for Web pages thtough the World Wide Web for example, as well as any type of repository and/or database, or other archiving or storage-based software.
  • Examples of documents for which the URI may optionally be submitted include, but arc not limited to, Web pages, any document written in any type of mark-up language, e-mail messages, word processing documents such as those generated by Microsoft WordTM (Microsoft Corp, USA) for example, and documents written in the pdf format (Adobe Systems Inc., USA).
  • the code which is inserted into the Web page may optionally be written in a document mark-up language, but may alternatively be written as an applet, a JavaScript or other type of code language which is suitable for Web pages.
  • a system and a method for converting each URI into a normalized form This system and method arc optionally and preferably used for any type of URL or other Web page address.
  • URL is used to refer to any type of URI for a Web page, whether static or dynamic.
  • the present invention first automatically determines whether there are any redundant parameters in the URL, and more preferably removes them.
  • This process is preferably invoked by an autonomous software search program and/or search engine in order to decide whether, and optionally when, this Web page was previously indexed.
  • the process is also preferably used to help the autonomous software search program and/or search engine to decide whether the Web page should be retrieved, for example for indexing.
  • the present invention more preferably retrieves the Web page by using the complete URL to form an original Web page.
  • each of the parameters is preferably removed, fhe term "parameter" refers to any divisible subunit of the URL.
  • the Web page is then retrieved again by using the reduced URL. This Web page is then compared with the original Web page. If the removed parameters) are not redundant, such that they are required for the correct retrieval of the original Web page and/or a sufficiently similar Web page, then the retrieved Web page would be completely different from the original Web page. If the parameter is redundant, the Web pages may be expected to be similar, although perhaps not completely identical. Lack of identity may occur if the Web page includes one or more links with the complete URL, as for a session ID.
  • the Web page could be custom tailored according to user identifying information, for personalization.
  • Other types of dynamic Web pages may also occur, which may optionally produce a plurality of similar but not completely identical Web pages.
  • the comparison function of the present invention preferably checks for similarity in content and more preferably produces a similarity level, which is the likelihood of the two Web pages to have the same content. If this value exceeds a certain threshold, then most preferably the removed parameter is considered to be redundant.
  • the level of similarity is determined according to visual similarity. Visual similarity is preferably determined according to two different types of parameters. A first type of parameter is based upon content of the document, such as text and/or images for example.
  • a second type of parameter is based upon visual layout characteristics of the document, such as the presence of one or more GUI (graphical user interface) gadgets or the location of text and/or images, for example. More preferably, the level of similarity is determined by comparing content-based parameters between documents, rather than by comparing visual layout characteristics.
  • the use of content-based parameters is preferred because similarity is preferably determined according to the actual content or "meaning" of a document, with regard to being submitted to a search engine and/or otherwise stored.
  • the above process is preferably executed once per URL structure, and for each URL with the same structure.
  • URLs e the same structure prc eiabh lealure a fixed b; ⁇ sc template, optional! ⁇ ⁇ it one or more variable parameters.
  • the redundant parameters are preferably removed automatically before the Web page is retrieved and indexed by the search engine.
  • the present invention is preferably used with regard to dynamic Web pages, but may optionally be used for any type of Web page.
  • the present invention optionally and more preferably features a gateway server for modifying these Web pages for provision to the search engine, either directly or optionally through an autonomous software search program.
  • a method for ranking Web pages according to the dynamic popularity of the Web page is determined according to the number of times that a Web page is viewed per time period.
  • the time period may optionally be flexibly dete ⁇ ined, but is preferably the same for all Web pages which are to be compared. More popular Web pages, or those which arc viewed most frequently per time period, would receive higher rankings in any subsequent search results.
  • This method has a number of advantages, including the ability to more accurately determine the current popularity of a Web page. For example, updated rankings could optionally be provided once a day or even more frequently if desired.
  • the popularity information could optionally and preferably be used for determining the amount to be charged for displaying a link to a Web page or other document to a user earlier in the display of search results.
  • the user typically receives search results in the form of a list of links to various Web pages.
  • the order of links in the list may optionally be at least partially determined according to payment by the owners of the Web pages.
  • the amount of this cost is preferably related to the popularity of the Web page.
  • the popularity information could optionally and preferably be used to determine the "cpc" (cost per click through), which is the amount charged to the owner of a Web page when the user clicks on or otherwise selects a particular link.
  • a system for automatically submitting a Web page to a search engine wherein the Web page features an embedded object.
  • the system comprising: (a) a Web server for serving the Web page; (b) a Web browser for requesting the Web page from the Web server, and for receiving the Web page; and (c) a submission Web server for receiving at least a URL of the Web page through the embedded object, such that the search engine receives the URI from the submission Web server.
  • the embedded object includes a URL for being in communication with the submission Web server, such that the Web browser sends a request to the submission Web server, the request including a URL of the Web page.
  • the embedded object actively communicates the URL of the Web page to the submission Web server.
  • a single server comprises the submission Web server and the Web server.
  • the embedded object comprises HTML code.
  • the embedded object comprises an applet. More preferably, the embedded object comprises a scripting code.
  • an autonomous software search program for retrieving the URL from the submission Web server and for providing the URL to the search engine.
  • the submission Web server retrieves additional information with the URL.
  • the additional information being provided to the search engine with the URL.
  • the Web page is a dynamic Web page.
  • the submission Web server normalizes the URL for the Web page for the search engine. More preferably, the normalizing comprises removing at least one redundant parameter from the URL to form a normalized URL.
  • a system for automatically submitting a Web page to a search engine, wherein the Web page features an embedded object comprising: (a) a Web server for serving the Web page; (b) a Web biowser for requesting the Web page from the Web server, such that when the Web page is received, the embedded object is activated; and (c) a submission Web server for receiving at least a URL of the Web page upon activation of the embedded object.
  • the submission Web server and the Web server are the same server.
  • the embedded object comprises an applet.
  • the embedded object comprises a scripting code.
  • system further comprises (e) an autonomous software search program for retrieving the URL from the submission Web server and for providing the URL to the search engine.
  • the submission Web server retrieves additional information with the URL, the additional information being provided to the search engine with the URL.
  • the Web page is preferably a dynamic Web page.
  • At least one of the autonomous software search program, the search engine and the submission Web seivcr normalizes the URL for the Web page.
  • the normalizing comprises removing at least one redundant parameter from the URL to form a normalized URL.
  • a method for automatically submitting a Web page to a search engine, the Web page featuring an embedded object comprising: requesting the Web page by a Web browser; upon receipt of the
  • the embedded object invokes the request directly.
  • the Web browser transmits the request for the embedded object, the automatically invoking further comprising: receiving the request by an object server, the request including the URL of the Web page; and transmitting at least the URL of the Web page by the object server. More preferably, the receiving further comprises: normalizing the URL for the Web page for the search engine. Most preferably, the normalizing comprises removing at least one redundant parameter from the URL to form a normalized URL.
  • a method for normalizing a URL for a Web page comprising: removing at least one redundant parameter from the URL to form a normalized URL.
  • each redundant parameter is removed by: removing a parameter from the URL to form a reduced URL; retrieving a new Web page according to the reduced URL; and comparing the new Web page and the Web page to determine similarity, such that similarity indicates that the parameter is redundant.
  • similarity is determined according to content of the new Web page and the Web page. Also most preferably, similarity is determined according to a quantitative comparison, such that if similarity is above a threshold, the parameter is redundant. Most preferably, the quantitative comparison is determined by comparing content of the new Web page and the Web page. Still more preferably, the quantitative comparison is performed by also comparing layout of the new Web page and the Web page.
  • the quantitative comparison is determined by only comparing content of the new Web page and the Web page, and wherein content comprises at least one of text and image.
  • the removal of parameters and the comparison of the content in order to determine redundancy of parameters are done either automatically or manually.
  • the URL is normalized before the Web page is provided to a search engine.
  • a method for ranking a Web page comprising: defining a time period for dynamically ranking
  • the Web page contains an embedded object for reporting a request to download the Web page by a Web browser. More preferably, the embedded object causes the
  • Web browser to invoke a request according to the HTTP protocol, the request being detected to report the request to download the Web page.
  • the frequency of requests per time period is used to determine a weight for ranking the Web page.
  • the method further comprises searching a plurality of Web pages to provide search results; and ranking the plurality of Web pages in the search results according to the weight. Also most preferably, the plurality of Web pages is ranked according to the weight as a primary ranking parameter.
  • the plurality of Web pages is ranked according to the weight as a secondary ranking parameter.
  • the weight is adjusted according to a popularity of at least one other Web page in a Web site containing the Web page. More preferably, the weight is adjusted according to at least one of a number of times the Web page is viewed by unique users and unique IP addresses.
  • determining a billing rate for an advertisement with the Web page according to the ranking is further provided.
  • the advertisement is for displaying at least one of a link to the Web page and the Web page in a list, wherein the list is generated by a search engine performing a search for Web pages. More preferably, the billing rate is for click through on the advertisement.
  • a method for automatically submitting an URI of a document to a repository, the document featuring an embedded object comprising: requesting the document by a user application capable of displaying the document; receiving the document by the user application; automatically invoking a request for the embedded object when displaying the document by the user application; and receiving at least the address of the document by the repository through the request.
  • the embedded object invokes the request directly. More preferably, the embedded object communicates the address to the repository directly. Also more preferably, the user application transmits the request for the embedded object, and wherein the automatically invoking further comprises: receiving the request by an object server, the request including the address of the document; and transmitting at least the address of the document by the object server to the repository.
  • the document comprises an e-mail message
  • automatically invoking the request includes information about a time that the e-mail message has been opened by user application.
  • computational device refers to any type of computer hardware system and/or to any type of software operating system, or cellular telephones, as well as to any type of device having a data processor and/or any type of microprocessor, or any type of device which is capable of performing any function of a computer.
  • a software application or program could be written in substantially any suitable programming language, which could easily be selected by one of ordinary skill in the art.
  • the programming language chosen should be compatible with the computational device according to which the software application is executed. Examples of suitable programming languages include, but are not limited to. C. C++ and Java.
  • Web browser refers to any software program which can display text, graphics, or both, from Web pages on World Wide Web sites.
  • Web page refers to any document written in a mark-up language including, but not limited to, HTML (hypertext mark-up language) or VRML (virtual reality modeling language), dynamic HTML. XML (extended mark-up language) or related computer languages thereof, as well as to any collection of such documents reachable through one specific Internet address or at one specific World Wide Web site, or any document obtainable through a particular URL (Uniform Resource Locator).
  • Web site refers to at least one Web page, and preferably a plurality of Web pages, virtually connected to form a coherent group.
  • W'eb server refers to a computer or other electronic device which is capable of serving at least one Web page (or other web elements such as a graphic file) to a Web browser.
  • applet refers to a self-contained software module written in an applet language such as Java or constructed as an ActiveXTM control.
  • client refers to any type of software program and/or code and/or other instructions which are operated and/or performed by the computational device of the user.
  • the term “network” refers to a connection between any two or more computers which permits the transmission of data.
  • the phrase “display a Web page”' includes all actions necessary to render at least a portion of the information on the Web page available to the computer user.
  • the phrase includes, but is not limited to, the static visual display of static graphical information, the audible production of audio information, the animated visual display of animation and the visual display of video stream data.
  • embedded object refers to any part of a document, such as a Web page for example, but not limited to Web pages and/or to documents written in a mark-up language, which is present at least for the purpose of operating the present invention.
  • FIG. 1 is a schematic block diagram of an exemplary system according to the present invention for submitting documents to search engines;
  • FIG. 2 is a flowchart of an exemplary method according to the present invention for submitting such documents;
  • FIG. 3 shows a flowchart of an exemplary method according to the present invention for normalizing address information for the documents to be submitted;
  • FIG. 4 is a schematic block diagram of an exemplary system according to the present invention for determining the popularity or "rank" of submitted documents.
  • FIG. 5 is a flowchart of an exemplary method according to the present invention for performing such a determination of popularity.
  • the present invention is of a system and a method for automatically submitting Web pages to a search engine, which is preferably used for submitting dynamic Web pages, but may optionally be used for any type of Web page.
  • a search engine which is preferably used for submitting dynamic Web pages, but may optionally be used for any type of Web page.
  • an embedded object is inserted into the Web page, which causes the URL of that Web page to be automatically sent to a Web server when that Web page is loaded by a Web browser.
  • the present invention is also useful for any document which can be identified and/or located according to a URI (Unified Resource Identifier), which acts as an address or pointer to that document.
  • a URI Unified Resource Identifier
  • particular code is inserted into the document, which causes the URI of that document to be automatically sent to another location, such as a server and/or search engine when that document is requested by a user.
  • the URL URI of the Web page
  • the URL could optionally be sent to the server and/or search engine when the Web page is loaded by a Web browser.
  • the server such as a Web server for example, can then optionally automatically send the received URLs to the search engine, or alternatively, the search engine could retrieve the received URLs from the Web server.
  • the URI is parsed, by the autonomous software search program and/or the receiving Web server, in order to remove redundant information, such as redundant parameters for example.
  • search engine includes but is not limited to, any type of autonomous software search program, such as a "spider” for searching for Web pages through the World Wide Web for example, as well as any type of repository and/or database, or other archiving or storage-based software.
  • Examples of documents for which the URI may optionally be submitted include, but are not limited to, Web pages, any document written in any type of mark-up language, e-mail messages, word processing documents such as those generated by Microsoft WordTM (Microsoft Corp, USA) for example, and documents written in the PDF format (Adobe Systems Inc., USA).
  • the user application preferably automatically invokes a request for an embedded object upon opening this message by the user application. More preferably, such a request includes information about a time that the e-mail message has been opened by user application.
  • the method of the present invention is useful for any type of e-mail message, including those messages which are typically displayed through Web pages.
  • the method of the present invention is operative with any tj pc of e-mail applications which can transmit, receive and/or display e-mail messages, preferably those messages that are written in a mark-up language.
  • the messages may optionally include embedded objects such as images.
  • the embedded object itself is preferably inserted as code which is suitable for execution according to a Web-based protocol, such as by a Web browser and/or Web server, for example.
  • the inserted code is part of a template Web page, according to which the dynamic Web page is assembled. Therefore, all dynamic Web pages which are constructed from the template Web page as a base would be exposed to the search engine by the inserted code.
  • the code which is inserted into the Web page may optionally be written in a document mark-up language, but may alternatively be written as an applet, a JavaScript or other type of code language which is suitable for Web pages.
  • the code may optionally and preferably be written as HTML code.
  • the code is optionally as follows: ⁇ img src ⁇ hit.p: A/pmain-ikmie- width ⁇ - "I " height - " 1 " >.
  • This code causes the Web browser loading this code to automatically send a request to the W ; eb server specified by "domain-name", in order to retrieve the "image" (this code is an example of an "image tag”).
  • the Web server extracts the referrer field from the HTTP header, which is the URL of the Web page containing the above code, which invoked the request. This URL is then stored by the Web server, and passed to and/or retrieved by a search engine for indexing.
  • the browser Whenever a page is loaded by any browser, the browser makes an HTTP request to the Web server asking for the gif.
  • the submission Web server extracts the "submit" field from the HTTP header, which is the full URL of the requested page. This field is optionally and preferably normalized, as described in greater detail below.
  • the URL of the Web page is extracted by using the document.location command.
  • the extracted Web page is then sent to the Web server by using a reference to an image (or any other reference which makes the Web browser automatically invoke an HTTP request to the particular Web server).
  • the term "URL" is used to refer to any type of Internet or network address for pointing to a document such as a Web page, whether static or dynamic.
  • the present invention first automatically determines whether there are any redundant parameters in the URL. and more preferably removes them.
  • This process is preferably invoked by an autonomous software search program and/or search engine in order to decide whether, and optionally when, this Web page was previously indexed.
  • the process is also preferably used to help the autonomous software search program and/or search engine to decide whether the Web page should be retrieved, for example for indexing.
  • the present invention more preferably retrieves the Web page by using the complete
  • each of the parameters is preferably removed.
  • the term "parameter” refers to any divisible subunit of the URL.
  • the Web page is then retrieved again by using the reduced URL. This Web page is then compared with the original Web page. If the removed parameter(s) are not redundant, such that they are required for the correct retrieval of the original Web page, then the retrieved Web page would be completely different from the original Web page.
  • the Web pages may be expected to be similar, although perhaps not completely identical. Lack of identity may occur if the Web page includes one or more links with the complete URL, as for a session ID. Alternatively, the Web page could be custom tailored according to user identifying information, for personalization. Other types of dynamic Web pages may also occur, which may optionally produce a plurality of similar but not completely identical Web pages. For that reason, the comparison function of the present invention preferably checks for similarity in content and more preferably produces a similarity level, which is the likelihood of the two Web pages to have the same content. If this value exceeds a certain threshold, then most preferably the removed parameter is considered to be redundant.
  • the level of similarity is determined according to visual similarity.
  • Visual similarity is preferably determined according to two different types of parameters.
  • a first type of parameter is based upon content of the document, such as text and/or images for example.
  • a second type of parameter is based upon visual layout characteristics of the document, such as the presence of one or more GUI (graphical user interface) gadgets or the location of text and/or images, for example.
  • the level of similarity is determined by comparing content-based parameters between documents. rather than by comparing visual layout characteristics.
  • the use of content-based parameters is preferred because similarity is preferably determined according to the actual content or "meaning" of a document, with regard to being submitted to a search engine and/or otherwise stored.
  • the above process is preferably executed once per URL structure, more preferably in a preprocessing stage.
  • the process is then preferably repeated for each URL with the same structure, more preferably in "real time' " , for example upon request by the search engine or autonomous search software program.
  • the term "URL structure" may include a group of the same parameters within a URL. However, preferably URLs which have the same structure are defined as having a fixed base template, optionally with one or more variable parameters. The redundant parameters are preferably removed automatically before the Web page is retrieved and indexed by the search engine.
  • the present invention is preferably used for normalizing URLs of dynamic Web pages, but may optionally be used for any type of Web page.
  • the present invention optionally and more preferably features a gateway server for modifying these Web pages for provision to the search engine, either directly or optionally through an autonomous software search program.
  • a method for ranking Web pages according to the dynamic popularity of the Web page is determined according to the number of times that a Web page is viewed per time period.
  • the time period may optionally be flexibly determined, but is preferably the same for all Web pages which are to be compared.
  • the viewing frequency of the page is used to assign a weight to the page, which can optionally be used when ranking the search results as a primary sorting parameter or as a secondary sorting parameter.
  • the viewing frequency of Web pages is determined by inserting an embedded object into the Web page, which causes the URL of that Web page to be automatically sent to a Web server when that Web page is loaded by a Web browser.
  • the Web server can then optionally automatically send the received URLs to the search engine, or alternatively, the autonomous software search program could retrieve the received URLs from the Web server.
  • the embedded object itself is preferably inserted as code which is suitable for execution by any application supporting Web-based protocol, such as by a Web browser and/or Web server, for example.
  • the code which is inserted into the Web page may optionally be written in a document mark-up language, but may alternatively be written as an applet, a JavaScript or other type of code language which is suitable for Web pages.
  • the code may optionally and preferably be written as HTML code.
  • the code is optionally as follows: ⁇ imgsrc ⁇ "hlip:'. domuiii-namc--image.gif xvidth - "/ " height
  • This code causes the Web browser loading this code to automatically send a request to the Web server specified by "domain-name", in order to retrieve the "image” (this code is an example of an "image tag”).
  • the Web server extracts the referrer field from the HTTP header. which is the URL of the Web page containing the above code, which invoked the request.
  • URL is then stored by the Web server, and passed to and/or retrieved by a search engine for indexing. If JavaScript code is to be used, as another illustrative, non-limiting example, then the
  • each Web page is given a weight, which is a function of the viewing frequency of the Web page, or the number of times that the Web page has been viewed per time period. More preferably, this weight is adjusted according to the popularity of the Web site which contains the Web page, in order to normalize comparisons of individual Web page from different Web sites.
  • the viewing frequency is adjusted and/or augmented according to the number of times that a Web page is viewed by unique users and/or according to unique IP addresses of the computational devices which request the Web page.
  • the number of times that the Web page is viewed by unique users is optionally and more preferably determined from the URL of the Web page.
  • the submission Web server that receives the request stores the URLs on a database. For each URL, the submission Web server stores its viewing frequency and optionally a list of unique IP addresses which downloaded the page.
  • the submission Web server can optionally store additional information such as history of viewing frequencies, total number of page impressions etc. These additional statistics may optionally be combined with the viewing frequency to form a single weight, for example by normalizing viewing frequency according to one or both of these different measurements.
  • the weight is used as the primary sorting parameter.
  • the weight is used as a secondary (or lower) sorting parameter.
  • the method of the present invention for ranking has a number of advantages, including the ability to more accurately determine the current popularity of a Web page.
  • updated rankings could optionally be provided once a day or even more frequently if desired.
  • the popularity information could optionally and preferably be used for determining the amount to be charged for displaying a link to a Web page or other document to a user earlier in the display of search results.
  • the user typically receives search results in the form of a list of links to various Web pages. The order of links in the list may optionally be at least partially
  • the amount of this cost is preferably related to the popularity of the Web page.
  • the popularity information could optionally and preferably be used to determine the "cpc" (cost per click through), which is the amount charged to the owner of a Web page when the user clicks on or otherwise selects a particular link.
  • the present invention is operable with any type of computational device network environment, in which information is to be collected about documents, and/or in which the documents themselves are to be collected.
  • the present invention is preferably operated with regard to an IP network environment, although optionally any type of
  • Figure 1 shows an illustrative system 10. in which a user interacts with a Web browser 112 being operated by a user computational device 114.
  • Web browser 112 receives content from, and sends commands to, a Web server 116, according to the HTTP (HyperText Transfer Protocol) protocol.
  • Web server 116 is connected to user
  • Network 118 may be the Internet, for example.
  • User computational device 114 is also preferably in communication with a submission Web server 120 through network 118.
  • Web browser 112 requests a particular Web page through user computational device 114, the Web page contains an embedded object, which
  • Web browser 112 causes Web browser 112 to communicate with submission Web server 120.
  • the communication is in the form of an automatically generated request by Web browser 112, for example a request that is generally submitted to retrieve a particular Web page component, such as an image for example.
  • the request is directed to the submission Web server 120, and includes the URL of the originating Web page, such that submission Web server 120 is preferably able to parse the request in order to retrieve the URL.
  • submission Web server 120 preferably stores the URL in a database 122.
  • Database 122 may optionally also contain other information retrieved with the request by submission Web server 120, such as the date and time, approximate geographic location of user computational device 114.
  • a search engine 124 may then optionally retrieve the URL from database 122, and/or submission Web server 120 may optionally and more preferably serve the URL to search engine 124. most preferably with any related information about the associated Web page, if available.
  • the URL is provided to search engine 124 indirectly.
  • An autonomous software search program 126 preferably interacts with submission Web server 120 in order to retrieve the URL, with optional related information.
  • Autonomous software search program 126 then preferably provides the URL, with optional related information, to search engine 124.
  • search engine 124 is able to retrieve URLs for any type of Web pages, even if those Web pages do not have a static form and/or content, such as for dynamic Web pages for example.
  • FIG. 2 is a flowchart of an exemplary method for automatically submitting Web pages to a search engine.
  • the user requests a Web page through a Web browser.
  • the Web page is optionally requested through a link, but preferably is requested after certain information is provided by the user, for example by entering data into a form and/or by selecting one or more choices from a menu.
  • the Web page is optionally and preferably constructed "on the fly", in real time, according to the request of the user.
  • the constructed Web page preferably includes an embedded object according to the present invention.
  • the Web page is downloaded to the computational device of the user and is displayed by the Web browser.
  • the Web browser preferably interacts with the embedded object, thereby causing certain information to be returned to a submission Web server.
  • submission Web server is optionally the same Web server which provided the Web page, preferably two separate such servers are provided.
  • the information which is returned to the submission Web server includes the URL of the Web page, and optionally includes other information as well.
  • a search engine retrieves the information about the Web page, including at the least the URL, from the submission Web server. Optionally, such retrieval is performed directly. but preferably an autonomous software search program is used to retrieve the URL from the submission Web server. The autonomous software search program then preferably provides the URL with the optional related information to the search engine.
  • the URL or other address which is sent to the search engine is normalized or otherwise adjusted according to the requirements of the search engine.
  • search engines which receive Web pages optionally and preferably receive the URL without redundant parameters.
  • Figure 3 shows a flowchart of an exemplary method for normalizing a URI, such as the
  • Such normalization is optionally and preferably performed before the Web page or other document is submitted to the search engine and/or autonomous search software program for indexing as previously described.
  • This process is optionally and preferably invoked by the autonomous software search program and/or search engine in order to decide whether, and optionally when, this Web page was previously indexed.
  • the process is also preferably used to help the autonomous software search program and/or search engine to decide whether the Web page should be retrieved, for example for indexing.
  • the Web page is preferably retrieved by using the complete URL to form an original Web page.
  • each of the parameters is preferably removed and the Web page is retrieved again by using the reduced URL.
  • the term "parameter" refers to any divisible subunit of the URL.
  • this Web page is then compared with the original Web page. If the removed parameter(s) are not redundant, such that they are required for the correct retrieval of the original Web page, then the retrieved Web page would be completely different from the original Web page. If the parameter is redundant, the Web pages may be expected to be similar, although perhaps not completely identical. Lack of identity may occur if the Web page includes one or more links with the complete URL, as for a session ID.
  • the Web page could be custom tailored according to user identifying information, for personalization.
  • the comparison function of the present invention preferably checks for similarity in content and more preferably produces a similarity level, which is the likelihood of the two Web pages to have the same content. If this value exceeds a certain threshold, then most preferably the removed parameter is considered to be redundant.
  • the level of similarity is determined according to visual similarity.
  • Visual similarity is preferably determined according to two different types of parameters.
  • a first type of parameter is based upon content of the document, such as text and/or images for example.
  • a second type of parameter is based upon visual layout characteristics of the document, such as the presence of one or more GUI (graphical user interface) gadgets or the location of text and/or images, for example.
  • GUI graphical user interface
  • the level of similarity is determined by comparing content-based parameters between documents. rather than by comparing visual layout characteristics. The use of content-based parameters is preferred because similarity is preferably determined according to the actual content or
  • stages 1-3 are optionally and preferably repeated for each URL structure. Once a parameter and/or a URL structure has been identified as occurring repeatedly". optionally and preferably, stages 1-3 are not performed again for such repeated parameters and/or
  • these redundant parameters are more preferably removed.
  • the redundant parameters are preferably removed automatically before the Web page is retrieved and indexed by the search engine in stage 5.
  • the present invention includes a system and method for determining the popularity or ranking of Web pages and/or other documents, for example according to the relative frequency at which the Web page or other document is requested.
  • Figure 4 shows an illustrative system 410 for determining the popularity of Web pages according to the viewing frequency per time period.
  • Any type of time period may optionally be used, such as a day or an hour for example, although such a time period is preferably predetermined.
  • the use of viewing frequency per time period is important, since otherwise the true popularity of a particular document cannot be accurately assessed.
  • a user interacts with a Web browser 412 being operated by a user computational device
  • Web browser 412 receives content from, and sends commands to, a Web server 416. according to the HTTP (HyperText Transfer Protocol) protocol.
  • Web server 416 is connected to user computational device 414, and hence is able to communicate with Web browser 412, through a network 418.
  • Network 418 may be the Internet, for example.
  • the frequency with which different users request the Web page through their respective Web browsers 412 and user computational devices 414 determines the viewing frequency.
  • the viewing frequency is optionally measured by a viewing frequency server 419. which may optionally provide this information to a search engine 424.
  • Search engine 424 then preferably uses the viewing frequency as at least part of a ranking mechanism for determining the rank of Web pages in search results, for example as a primary or secondary sorting parameter for determining the order of Web pages in the search results. More preferably, this weight is adjusted by submission web server 420 and/or search engine 424 and/or by viewing frequency server 419 according to the popularity of the Web site that contains the Web page, in order to normalize comparisons of individual Web pages from different Web sites.
  • the viewing frequency is adjusted and/or augmented according to the number of times that a Web page is viewed by unique users and/or according to unique IP addresses of computational devices 414, and/or is downloaded to a proxy server (not shown) connected to computational device 414 through network 418, which request the Web page.
  • the number of times that the Web page is viewed by unique users can be extracted from database 422.
  • These additional statistics may optionally be combined with the viewing frequency to form a single weight, for example by normalizing viewing frequency according to one or both of these different measurements.
  • the viewing frequency is determined by including an embedded object in the Web page.
  • this embedded object is the same embedded object which is used for submission to search engine, for example, as previously described.
  • user computational device 414 is also preferably in communication with a submission Web server 420 through network 418.
  • the embedded object causes Web browser 412 to communicate with submission Web server 420.
  • the communication is in the form of an automatically generated request by Web browser 412, for example a request which is generally submitted to retrieve a particular Web page component, such as an image for example.
  • the request is directed to the submission Web server 420, and includes the URL of the originating Web page, such that submission Web server 420 is preferably able to parse the request in order to retrieve the URL.
  • submission Web server 420 preferably stores the URL and/or the frequency with which the URL is requested in a database 422.
  • Database 422 may optionally also contain other information retrieved with the request by submission Web server 420, such as the date and time, approximate geographic location of user computational device 414. This information is then preferably provided to search engine 424 and/or viewing frequency server 419 for determining the ranking of Web pages.
  • viewing frequency server 419 may preferably perform a statistical analysis on the frequency ol ' iewing (displaying) of Web pages and/or other documents. Such statistical analysis may optionally be used to determine which users request the Web page and/or other document (for example, according to Web browser 412). Such information may be particularly useful in the coiporate environment, in order to assess the efficacy of providing documents to employees "on-line", through a corporate network for example.
  • viewing frequency server 419 may optionally and preferably determine prices of "clicking through” or otherwise selecting links to various Web pages, for example for advertisements, according to the information about popularity. Also alternatively or additionally, viewing frequency server 419 may optionally index or otherwise gather Web pages and/or other documents for submission to submission Web server 420 and/or search engine 424 according to popularity or other statistical analysis of viewing frequency.
  • FIG. 5 is a flowchart of an exemplary method for ranking Web pages. As shown, in stage 1 , the user requests a Web page through a Web browser. In stage 2, the request for the
  • Web page is detected for determining the viewing frequency.
  • detection occurs through the provision of an embedded object, which reports the request to another entity, such as a search engine or a different (ranking) server for example.
  • the Web browser preferably interacts with the embedded object, thereby causing certain information to be returned to a submission Web server.
  • submission Web server is optionally the same Web server which provided the Web page, preferably two separate such servers are provided.
  • the information which is returned to the submission Web server includes the URL of the Web page or at least an indication that this URL was requested for viewing, and optionally includes other information as well.
  • the viewing frequency of the Web page is determined in order to provide a weight which indicates the dynamic popularity of the Web page.
  • this weight is adjusted according to the popularity of the Web site which contains the Web page, in order to normalize comparisons of individual Web page from different Web sites.
  • the viewing frequency is adjusted and/or augmented according to the number of times that a Web page is viewed by unique users and/or according to unique IP addresses of the computational devices which request the Web page.
  • a search engine receives a request for a search from a user. The results of this search are ranked at least partially according to the weight accorded to the different Web pages.
  • This weight is optionally used as the primary or secondary sorting parameter.
  • the popularity parameter can optionally be used in the relevancy ranking algorithm of the search engines, since more popular pages may optionally have a higher rank.
  • This parameter can optionally be used as a primary sorting parameter or as secondary sorting parameter for determining the order in which the results of the search are presented.
  • the popularity parameter can optionally be used to exclude less popular pages from the search index. Alternatively or additionally, it can be used by Web sites that advertise Web pages on a pay-per-click basis, for example for displaying the Web page first or at least earlier in the search results presented by the search engine. The cost-per-click of a Web page could then optionally and preferably be a function of the popularity of the Web page.
  • the present invention provides a number of advantages over currently available solutions. For example, most autonomous software search programs simply ignore dynamic
  • the present invention overcomes a number of problems with the background art solutions. Other advantages of the present invention include, but are not limited to.

Abstract

A system and a method for automatically submitting Web pages to a search engine (124) which is preferably used for submitting dynamic Web pages, but may optionally be used for any type of Web page. According to the present invention, an embedded object is inserted into the Web page, which causes the URL of that Web page to be automatically sent to a Web server (116) when that Web page is loaded by a Web browser (112). The Web server (116) can then optionally automatically send the received URLs to the search engine (124), or alternatively, the autonomous software search program (126) could retrieve the received URLs from the Web server (116). The embedded object itself is preferably inserted as code which is suitable for execution according to a Web-based protocol, such as by a Web browser (112) and/or Web server (116), for example. There is also provided a system and a method for converting each URL or other Web page address into a normalized form.

Description

SYSTEM AND METHOD FOR
AUTOMATED TRACKING AND ANALYSIS OF DOCUMENT USAGE
FIELD OF THE INVENTION The present invention relates to a system and a method for submission of documents to a search engine, and in particular, for such a system and method in which the documents are constructed as mark-up language documents, such as Web pages written in HTML (HyperTex! Mark-up Language).
BACKGROUND OF THE INVENTION
The World Wide Web is structured as a "two-party'" system, in which a first party, the computer user, receives content from a second party, the Web server. The user typically requests the content in the form of mark-up language documents, such as Web pages written in HTML. In order to retrieve the desired Web page, the user submits a particular URL (uniform resource locator) to the Web server, which retrieves and transmits the desired Web page to the computer of the user. However, the user must know the correct URL, or else the Web page cannot be retrieved.
Since there are many Web pages available through the World Wide Web, search engines have evolved to assist the user in the search for a particular Web page. These search engines index Web pages according to one or more keywords, such that when the user submits the quer for a particular Web page, those Web page(s) with the same or similar keywords as for the query are retrieved. Search engines may receive Web pages (or pointers to those Web pages, such as URLs for example) by submission from the author of the page(s), but the search engines also actively search for new Web pages. Typically, such active searches are performed automatically with autonomous software programs called "spiders" or "crawlers,\
These autonomous software programs search through the World Wide Web by extracting links from known Web pages in order to locate new Web pages, to which the links point. As each new Web page is located, it is indexed and added to the database of the search engine, and new links are extracted from that Web page. Search engines use the URL as a unique identifier of the indexed page. Thus, the autonomous software programs depend upon two assumptions. FirsL the Web pages existing as static entities, to which links remain stable. The second assumption is that web pages have incoming links pointing to them. However, many Web pages today are provided as dynamic Web pages, which are created in real time or "on the fly" from a plurality of components stored in a database. Dynamic Web pages are created upon submission of a query by a user, which determines the identity of the components to be retrieved and assembled into the Web page. For example, a URL for a dynamic Web page, if it exists, may appear as follows: hup:: ■domam.com search, asp'.'p I ' yl&p2~ v2. The term "search.asp" is a name of an application which should be invoked, followed by a "?" sign, and a list of parameters and their values. Many autonomous software search programs are designed to ignore such links, since automatically following this type of link may cause an infinite recursion which the autonomous software program cannot properly handle. Furthermore, such links may not exist at all, as the user may enter information through a scripting language form, such as JavaScript for example, which would then cause the dynamic Web page to be assembled according to the entered information. Thus, dynamic Web pages are often not indexed, or even "un-indexable", by autonomous software search programs.
SUMMARY OF THE INVENTION
The background art does not teach or suggest a solution to the problem of automatically indexing dynamic Web pages by an autonomous software search program. The background art also does not teach or suggest a solution to the inability of such programs to easily analyze, parse and index dynamic Web pages. Also, the background art does not teach or suggest a solution to such problems as repeated indexing of the same Web page and/or to the correct identification of URLs for dynamic Web pages. In addition, the background art also does not teach or suggest a solution to the problem of automatically specifically notifying a search engine about the existence of specific Web pages, without direct manual submission to the search engine. The background art also does not teach or suggest a mechanism for determining ranking information for a dynamic Web page or other type of dynamic document, with regard to the number of times that the Web page or other document is accessed. The background art also does not teach or suggest
The present invention overcomes these problems of the background art by providing a system and a method for automatically submitting Web pages to a search engine, which is preferably used for submitting dynamic Web pages, but may optionally be used for any type of Web page. The present invention is also useful for any document which can be identified and/or located according to a URI (Unified Resource Identifier), which acts as an address or pointer Io that document. According to the present invention, particular code is inserted into the document, which causes the URI of that document to be automatically sent to another location, such as a server and/or search engine when that document is requested by a user. For example, for Web pages, the URL (URI of the Web page) could optionally be sent to the server and/or search engine when the Web page is loaded by a Web browser. If the URIs are not sent directly to the search engine, the server, such as a Web server for example, can then optionally automatically send the received URLs to the search engine, or alternatively, the search engine could retrieve the received URLs from the Web server.
Hereinafter, the term "search engine" includes but is not limited to, any type of autonomous software search program, such as a "spider" for searching for Web pages thtough the World Wide Web for example, as well as any type of repository and/or database, or other archiving or storage-based software.
Examples of documents for which the URI may optionally be submitted include, but arc not limited to, Web pages, any document written in any type of mark-up language, e-mail messages, word processing documents such as those generated by Microsoft Word™ (Microsoft Corp, USA) for example, and documents written in the pdf format (Adobe Systems Inc., USA).
With regard to the non-limiting example of Web page documents, the code which is inserted into the Web page may optionally be written in a document mark-up language, but may alternatively be written as an applet, a JavaScript or other type of code language which is suitable for Web pages.
According to another embodiment of the present invention, there is provided a system and a method for converting each URI into a normalized form. This system and method arc optionally and preferably used for any type of URL or other Web page address. Hereinafter, the term "URL" is used to refer to any type of URI for a Web page, whether static or dynamic. Preferably, the present invention first automatically determines whether there are any redundant parameters in the URL, and more preferably removes them. This process is preferably invoked by an autonomous software search program and/or search engine in order to decide whether, and optionally when, this Web page was previously indexed. The process is also preferably used to help the autonomous software search program and/or search engine to decide whether the Web page should be retrieved, for example for indexing.
The present invention more preferably retrieves the Web page by using the complete URL to form an original Web page. Next, each of the parameters is preferably removed, fhe term "parameter" refers to any divisible subunit of the URL. The Web page is then retrieved again by using the reduced URL. This Web page is then compared with the original Web page. If the removed parameters) are not redundant, such that they are required for the correct retrieval of the original Web page and/or a sufficiently similar Web page, then the retrieved Web page would be completely different from the original Web page. If the parameter is redundant, the Web pages may be expected to be similar, although perhaps not completely identical. Lack of identity may occur if the Web page includes one or more links with the complete URL, as for a session ID. Alternatively, the Web page could be custom tailored according to user identifying information, for personalization. Other types of dynamic Web pages may also occur, which may optionally produce a plurality of similar but not completely identical Web pages. For that reason, the comparison function of the present invention preferably checks for similarity in content and more preferably produces a similarity level, which is the likelihood of the two Web pages to have the same content. If this value exceeds a certain threshold, then most preferably the removed parameter is considered to be redundant. According to preferred embodiments of the present invention, the level of similarity is determined according to visual similarity. Visual similarity is preferably determined according to two different types of parameters. A first type of parameter is based upon content of the document, such as text and/or images for example. A second type of parameter is based upon visual layout characteristics of the document, such as the presence of one or more GUI (graphical user interface) gadgets or the location of text and/or images, for example. More preferably, the level of similarity is determined by comparing content-based parameters between documents, rather than by comparing visual layout characteristics. The use of content-based parameters is preferred because similarity is preferably determined according to the actual content or "meaning" of a document, with regard to being submitted to a search engine and/or otherwise stored.
The above process is preferably executed once per URL structure, and for each URL with the same structure. URLs e the same structure prc eiabh lealure a fixed b;ιsc template, optional!} \\ it one or more variable parameters. The redundant parameters are preferably removed automatically before the Web page is retrieved and indexed by the search engine.
The present invention is preferably used with regard to dynamic Web pages, but may optionally be used for any type of Web page. The present invention optionally and more preferably features a gateway server for modifying these Web pages for provision to the search engine, either directly or optionally through an autonomous software search program.
According to still another embodiment of the present invention, there is provided a method for ranking Web pages according to the dynamic popularity of the Web page. This dynamic popularity is determined according to the number of times that a Web page is viewed per time period. The time period may optionally be flexibly deteπυined, but is preferably the same for all Web pages which are to be compared. More popular Web pages, or those which arc viewed most frequently per time period, would receive higher rankings in any subsequent search results. This method has a number of advantages, including the ability to more accurately determine the current popularity of a Web page. For example, updated rankings could optionally be provided once a day or even more frequently if desired.
According to other preferred embodiments of the present invention, the popularity information could optionally and preferably be used for determining the amount to be charged for displaying a link to a Web page or other document to a user earlier in the display of search results. With regard to Web pages, the user typically receives search results in the form of a list of links to various Web pages. The order of links in the list may optionally be at least partially determined according to payment by the owners of the Web pages. The amount of this cost is preferably related to the popularity of the Web page. For example, the popularity information could optionally and preferably be used to determine the "cpc" (cost per click through), which is the amount charged to the owner of a Web page when the user clicks on or otherwise selects a particular link.
According to the present invention, there is provided a system for automatically submitting a Web page to a search engine, wherein the Web page features an embedded object. the system comprising: (a) a Web server for serving the Web page; (b) a Web browser for requesting the Web page from the Web server, and for receiving the Web page; and (c) a submission Web server for receiving at least a URL of the Web page through the embedded object, such that the search engine receives the URI from the submission Web server.
Preferably, the embedded object includes a URL for being in communication with the submission Web server, such that the Web browser sends a request to the submission Web server, the request including a URL of the Web page. Also preferably, the embedded object actively communicates the URL of the Web page to the submission Web server.
Alternatively or additionally and preferably, a single server comprises the submission Web server and the Web server. Optionally and preferably, the embedded object comprises HTML code.
Also preferably, the embedded object comprises an applet. More preferably, the embedded object comprises a scripting code.
According to preferred embodiments of the present invention, there is additionally provided (e) an autonomous software search program for retrieving the URL from the submission Web server and for providing the URL to the search engine.
Preferably, the submission Web server retrieves additional information with the URL. the additional information being provided to the search engine with the URL.
Also preferably, the Web page is a dynamic Web page. According to other preferred embodiments of the present invention, the submission Web server normalizes the URL for the Web page for the search engine. More preferably, the normalizing comprises removing at least one redundant parameter from the URL to form a normalized URL.
According to another embodiment of the present invention, there is provided a system for automatically submitting a Web page to a search engine, wherein the Web page features an embedded object, comprising: (a) a Web server for serving the Web page; (b) a Web biowser for requesting the Web page from the Web server, such that when the Web page is received, the embedded object is activated; and (c) a submission Web server for receiving at least a URL of the Web page upon activation of the embedded object. Preferably, the submission Web server and the Web server are the same server. More preferably, the embedded object comprises an applet. Optionally and more preferably, the embedded object comprises a scripting code.
Most preferably, the system further comprises (e) an autonomous software search program for retrieving the URL from the submission Web server and for providing the URL to the search engine.
Also most preferably, the submission Web server retrieves additional information with the URL, the additional information being provided to the search engine with the URL.
Alternatively or additionally, the Web page is preferably a dynamic Web page.
According to preferred embodiments of the present invention, at least one of the autonomous software search program, the search engine and the submission Web seivcr normalizes the URL for the Web page. Preferably, the normalizing comprises removing at least one redundant parameter from the URL to form a normalized URL.
According to still other embodiments of the present invention, there is provided a method for automatically submitting a Web page to a search engine, the Web page featuring an embedded object, comprising: requesting the Web page by a Web browser; upon receipt of the
Web page by the Web browser, automatically invoking a request for the embedded object; and receiving at least the URL of the Web page by the search engine through the request. Preferably, the embedded object invokes the request directly.
Alte natively or additionally and preferably, the Web browser transmits the request for the embedded object, the automatically invoking further comprising: receiving the request by an object server, the request including the URL of the Web page; and transmitting at least the URL of the Web page by the object server. More preferably, the receiving further comprises: normalizing the URL for the Web page for the search engine. Most preferably, the normalizing comprises removing at least one redundant parameter from the URL to form a normalized URL.
According to yet other embodiments of the present invention, there is provided a method for normalizing a URL for a Web page, comprising: removing at least one redundant parameter from the URL to form a normalized URL.
Preferably, all redundant parameters are removed. More preferably, each redundant parameter is removed by: removing a parameter from the URL to form a reduced URL; retrieving a new Web page according to the reduced URL; and comparing the new Web page and the Web page to determine similarity, such that similarity indicates that the parameter is redundant.
Most preferably, similarity is determined according to content of the new Web page and the Web page. Also most preferably, similarity is determined according to a quantitative comparison, such that if similarity is above a threshold, the parameter is redundant. Most preferably, the quantitative comparison is determined by comparing content of the new Web page and the Web page. Still more preferably, the quantitative comparison is performed by also comparing layout of the new Web page and the Web page.
Preferably, the quantitative comparison is determined by only comparing content of the new Web page and the Web page, and wherein content comprises at least one of text and image.
According to preferred embodiments of the present invention, the removal of parameters and the comparison of the content in order to determine redundancy of parameters are done either automatically or manually. Preferably, the URL is normalized before the Web page is provided to a search engine.
According to still another embodiment of the present invention, there is provided a method for ranking a Web page, comprising: defining a time period for dynamically ranking
Web pages; detecting a request for the Web page from a Web browser: determining a frequency of requests per the defined time period; and ranking the Web page according to the frequency of requests per the defined time period to determine the popularity of the Web page. Preferably, the Web page contains an embedded object for reporting a request to download the Web page by a Web browser. More preferably, the embedded object causes the
Web browser to invoke a request according to the HTTP protocol, the request being detected to report the request to download the Web page.
Also more preferably, the frequency of requests per time period is used to determine a weight for ranking the Web page. Most preferably, the method further comprises searching a plurality of Web pages to provide search results; and ranking the plurality of Web pages in the search results according to the weight. Also most preferably, the plurality of Web pages is ranked according to the weight as a primary ranking parameter.
Alternatively, the plurality of Web pages is ranked according to the weight as a secondary ranking parameter.
Preferably, the weight is adjusted according to a popularity of at least one other Web page in a Web site containing the Web page. More preferably, the weight is adjusted according to at least one of a number of times the Web page is viewed by unique users and unique IP addresses.
According to preferred embodiments of the present invention, there is further provided determining a billing rate for an advertisement with the Web page according to the ranking.
Preferably, the advertisement is for displaying at least one of a link to the Web page and the Web page in a list, wherein the list is generated by a search engine performing a search for Web pages. More preferably, the billing rate is for click through on the advertisement.
According to yet another embodiment of the present invention, there is provided a method for automatically submitting an URI of a document to a repository, the document featuring an embedded object, the method comprising: requesting the document by a user application capable of displaying the document; receiving the document by the user application; automatically invoking a request for the embedded object when displaying the document by the user application; and receiving at least the address of the document by the repository through the request.
Preferably, the embedded object invokes the request directly. More preferably, the embedded object communicates the address to the repository directly. Also more preferably, the user application transmits the request for the embedded object, and wherein the automatically invoking further comprises: receiving the request by an object server, the request including the address of the document; and transmitting at least the address of the document by the object server to the repository.
Most preferably, the document comprises an e-mail message, and wherein automatically invoking the request includes information about a time that the e-mail message has been opened by user application.
Hereinafter, the term "computational device" refers to any type of computer hardware system and/or to any type of software operating system, or cellular telephones, as well as to any type of device having a data processor and/or any type of microprocessor, or any type of device which is capable of performing any function of a computer. For the present invention, a software application or program could be written in substantially any suitable programming language, which could easily be selected by one of ordinary skill in the art. The programming language chosen should be compatible with the computational device according to which the software application is executed. Examples of suitable programming languages include, but are not limited to. C. C++ and Java.
Hereinafter, the term "Web browser" refers to any software program which can display text, graphics, or both, from Web pages on World Wide Web sites. Hereinafter, the term "Web page" refers to any document written in a mark-up language including, but not limited to, HTML (hypertext mark-up language) or VRML (virtual reality modeling language), dynamic HTML. XML (extended mark-up language) or related computer languages thereof, as well as to any collection of such documents reachable through one specific Internet address or at one specific World Wide Web site, or any document obtainable through a particular URL (Uniform Resource Locator). Hereinafter, the term "Web site" refers to at least one Web page, and preferably a plurality of Web pages, virtually connected to form a coherent group. Hereinafter, the term "W'eb server"" refers to a computer or other electronic device which is capable of serving at least one Web page (or other web elements such as a graphic file) to a Web browser.
Hereinafter, the term "applet" refers to a self-contained software module written in an applet language such as Java or constructed as an ActiveX™ control. Hereinafter, the term "client"" refers to any type of software program and/or code and/or other instructions which are operated and/or performed by the computational device of the user.
Hereinafter, the term "network" refers to a connection between any two or more computers which permits the transmission of data. Hereinafter, the phrase "display a Web page"' includes all actions necessary to render at least a portion of the information on the Web page available to the computer user. As such, the phrase includes, but is not limited to, the static visual display of static graphical information, the audible production of audio information, the animated visual display of animation and the visual display of video stream data.
Hereinafter, the tenn "embedded object" refers to any part of a document, such as a Web page for example, but not limited to Web pages and/or to documents written in a mark-up language, which is present at least for the purpose of operating the present invention.
BRIEF DESCRIPTION OF THE DRAWINGS
The invention is herein described, by way of example only, with reference to the accompanying drawings, wherein:
FIG. 1 is a schematic block diagram of an exemplary system according to the present invention for submitting documents to search engines; FIG. 2 is a flowchart of an exemplary method according to the present invention for submitting such documents;
FIG. 3 shows a flowchart of an exemplary method according to the present invention for normalizing address information for the documents to be submitted;
FIG. 4 is a schematic block diagram of an exemplary system according to the present invention for determining the popularity or "rank" of submitted documents; and
FIG. 5 is a flowchart of an exemplary method according to the present invention for performing such a determination of popularity.
DESCRIPTION OF THE PREFERRED EMBODIMENTS The present invention is of a system and a method for automatically submitting Web pages to a search engine, which is preferably used for submitting dynamic Web pages, but may optionally be used for any type of Web page. According to the present invention, an embedded object is inserted into the Web page, which causes the URL of that Web page to be automatically sent to a Web server when that Web page is loaded by a Web browser. It should be noted that although reference is made to "Web pages" and "Web servers", this is for the purpose of illustration only and is without any intention of being limiting, as in fact the present invention is operative with any type of document and/or any type of server for providing a document.
The present invention is also useful for any document which can be identified and/or located according to a URI (Unified Resource Identifier), which acts as an address or pointer to that document. According to the present invention, particular code is inserted into the document, which causes the URI of that document to be automatically sent to another location, such as a server and/or search engine when that document is requested by a user. For example, for Web pages, the URL (URI of the Web page) could optionally be sent to the server and/or search engine when the Web page is loaded by a Web browser. If the URIs are not sent directly to the search engine, the server, such as a Web server for example, can then optionally automatically send the received URLs to the search engine, or alternatively, the search engine could retrieve the received URLs from the Web server. Optionally and more preferably, as described in greater detail below, the URI is parsed, by the autonomous software search program and/or the receiving Web server, in order to remove redundant information, such as redundant parameters for example.
Hereinafter, the term "search engine" includes but is not limited to, any type of autonomous software search program, such as a "spider" for searching for Web pages through the World Wide Web for example, as well as any type of repository and/or database, or other archiving or storage-based software.
Examples of documents for which the URI may optionally be submitted include, but are not limited to, Web pages, any document written in any type of mark-up language, e-mail messages, word processing documents such as those generated by Microsoft Word™ (Microsoft Corp, USA) for example, and documents written in the PDF format (Adobe Systems Inc., USA). With regard to a non-limiting example of an e-mail message as the document, the user application preferably automatically invokes a request for an embedded object upon opening this message by the user application. More preferably, such a request includes information about a time that the e-mail message has been opened by user application. The method of the present invention is useful for any type of e-mail message, including those messages which are typically displayed through Web pages. The method of the present invention is operative with any tj pc of e-mail applications which can transmit, receive and/or display e-mail messages, preferably those messages that are written in a mark-up language. In any case, the messages may optionally include embedded objects such as images. With regard to the non-limiting example of Web page documents, the embedded object itself is preferably inserted as code which is suitable for execution according to a Web-based protocol, such as by a Web browser and/or Web server, for example.
Optionally and preferably, the inserted code is part of a template Web page, according to which the dynamic Web page is assembled. Therefore, all dynamic Web pages which are constructed from the template Web page as a base would be exposed to the search engine by the inserted code.
The code which is inserted into the Web page may optionally be written in a document mark-up language, but may alternatively be written as an applet, a JavaScript or other type of code language which is suitable for Web pages. As an example only, without any intention of being limiting, the code may optionally and preferably be written as HTML code. For example, the code is optionally as follows: <img src~hit.p: A/pmain-ikmie- width ■■- "I " height - " 1 ">. This code causes the Web browser loading this code to automatically send a request to the W;eb server specified by "domain-name", in order to retrieve the "image" (this code is an example of an "image tag"). The Web server extracts the referrer field from the HTTP header, which is the URL of the Web page containing the above code, which invoked the request. This URL is then stored by the Web server, and passed to and/or retrieved by a search engine for indexing.
Another non-limiting example of a code which could be used is a reference to an invisible image:
<IMG SRC- 'http://www.Submission Web Server .com/submit?URLpartI/partIl partII^, WlDTH-"0" HEIGHT="0" BORDER="0">. This image would be requested by the Web browser from the above-referenced URL or address (the portion in quotes between "http" and "submit") when the Web browser requested the Web page. The portion of the URL after "submit?" is an example of a mechanism for providing the entire URL to the submission Web server through the actual request, without requiring a reference to the HTTP header, according to the present invention. The information provided after "submit?" includes the URL of the originating Web page.
Whenever a page is loaded by any browser, the browser makes an HTTP request to the Web server asking for the gif. The submission Web server extracts the "submit" field from the HTTP header, which is the full URL of the requested page. This field is optionally and preferably normalized, as described in greater detail below.
If JavaScript code is to be used, as another illustrative, non-limiting example, then the URL of the Web page is extracted by using the document.location command. The extracted Web page is then sent to the Web server by using a reference to an image (or any other reference which makes the Web browser automatically invoke an HTTP request to the particular Web server).
According to another embodiment of the present invention, there is provided a system and a method for converting each URL or other Web page address into a normalized form.
Hereinafter, the term "URL" is used to refer to any type of Internet or network address for pointing to a document such as a Web page, whether static or dynamic. Preferably, the present invention first automatically determines whether there are any redundant parameters in the URL. and more preferably removes them. This process is preferably invoked by an autonomous software search program and/or search engine in order to decide whether, and optionally when, this Web page was previously indexed. The process is also preferably used to help the autonomous software search program and/or search engine to decide whether the Web page should be retrieved, for example for indexing. The present invention more preferably retrieves the Web page by using the complete
URL to form an original Web page. Next, each of the parameters is preferably removed. The term "parameter" refers to any divisible subunit of the URL. The Web page is then retrieved again by using the reduced URL. This Web page is then compared with the original Web page. If the removed parameter(s) are not redundant, such that they are required for the correct retrieval of the original Web page, then the retrieved Web page would be completely different from the original Web page.
If the parameter is redundant, the Web pages may be expected to be similar, although perhaps not completely identical. Lack of identity may occur if the Web page includes one or more links with the complete URL, as for a session ID. Alternatively, the Web page could be custom tailored according to user identifying information, for personalization. Other types of dynamic Web pages may also occur, which may optionally produce a plurality of similar but not completely identical Web pages. For that reason, the comparison function of the present invention preferably checks for similarity in content and more preferably produces a similarity level, which is the likelihood of the two Web pages to have the same content. If this value exceeds a certain threshold, then most preferably the removed parameter is considered to be redundant.
According to preferred embodiments of the present invention, the level of similarity is determined according to visual similarity. Visual similarity is preferably determined according to two different types of parameters. A first type of parameter is based upon content of the document, such as text and/or images for example. A second type of parameter is based upon visual layout characteristics of the document, such as the presence of one or more GUI (graphical user interface) gadgets or the location of text and/or images, for example. More preferably, the level of similarity is determined by comparing content-based parameters between documents. rather than by comparing visual layout characteristics. The use of content-based parameters is preferred because similarity is preferably determined according to the actual content or "meaning" of a document, with regard to being submitted to a search engine and/or otherwise stored. The above process is preferably executed once per URL structure, more preferably in a preprocessing stage. The process is then preferably repeated for each URL with the same structure, more preferably in "real time'", for example upon request by the search engine or autonomous search software program. The term "URL structure" may include a group of the same parameters within a URL. However, preferably URLs which have the same structure are defined as having a fixed base template, optionally with one or more variable parameters. The redundant parameters are preferably removed automatically before the Web page is retrieved and indexed by the search engine.
The present invention is preferably used for normalizing URLs of dynamic Web pages, but may optionally be used for any type of Web page. The present invention optionally and more preferably features a gateway server for modifying these Web pages for provision to the search engine, either directly or optionally through an autonomous software search program.
According to still another embodiment of the present invention, there is provided a method for ranking Web pages according to the dynamic popularity of the Web page. This dynamic popularity is determined according to the number of times that a Web page is viewed per time period. The time period may optionally be flexibly determined, but is preferably the same for all Web pages which are to be compared. The viewing frequency of the page is used to assign a weight to the page, which can optionally be used when ranking the search results as a primary sorting parameter or as a secondary sorting parameter.
According to an optional but preferred embodiment of the present invention, the viewing frequency of Web pages is determined by inserting an embedded object into the Web page, which causes the URL of that Web page to be automatically sent to a Web server when that Web page is loaded by a Web browser. The Web server can then optionally automatically send the received URLs to the search engine, or alternatively, the autonomous software search program could retrieve the received URLs from the Web server. The embedded object itself is preferably inserted as code which is suitable for execution by any application supporting Web-based protocol, such as by a Web browser and/or Web server, for example.
The code which is inserted into the Web page may optionally be written in a document mark-up language, but may alternatively be written as an applet, a JavaScript or other type of code language which is suitable for Web pages. As an example only, without any intention of being limiting, the code may optionally and preferably be written as HTML code. For example. the code is optionally as follows: <imgsrc~ "hlip:'. domuiii-namc--image.gif xvidth - "/ " height
= " / ">. This code causes the Web browser loading this code to automatically send a request to the Web server specified by "domain-name", in order to retrieve the "image" (this code is an example of an "image tag"). The Web server extracts the referrer field from the HTTP header. which is the URL of the Web page containing the above code, which invoked the request. This
URL is then stored by the Web server, and passed to and/or retrieved by a search engine for indexing. If JavaScript code is to be used, as another illustrative, non-limiting example, then the
URL of the Web page is extracted by using the document.Iocation command. The extracted Web page is then sent to the Web server by using a reference to an image (or any other reference which makes the Web browser automatically invoke an HTTP request to the particular Web server). According to a preferred embodiment of the present invention, each Web page is given a weight, which is a function of the viewing frequency of the Web page, or the number of times that the Web page has been viewed per time period. More preferably, this weight is adjusted according to the popularity of the Web site which contains the Web page, in order to normalize comparisons of individual Web page from different Web sites. Most preferably, the viewing frequency is adjusted and/or augmented according to the number of times that a Web page is viewed by unique users and/or according to unique IP addresses of the computational devices which request the Web page. The number of times that the Web page is viewed by unique users is optionally and more preferably determined from the URL of the Web page. The submission Web server that receives the request stores the URLs on a database. For each URL, the submission Web server stores its viewing frequency and optionally a list of unique IP addresses which downloaded the page. The submission Web server can optionally store additional information such as history of viewing frequencies, total number of page impressions etc. These additional statistics may optionally be combined with the viewing frequency to form a single weight, for example by normalizing viewing frequency according to one or both of these different measurements.
These rankings are suitable for searches over a few Web sites, as well as searches which are not restricted to a portion of the Web and/or to one or more preselected Web sites. Optionally, the weight is used as the primary sorting parameter. Alternatively, the weight is used as a secondary (or lower) sorting parameter.
The method of the present invention for ranking has a number of advantages, including the ability to more accurately determine the current popularity of a Web page. For example, updated rankings could optionally be provided once a day or even more frequently if desired. 5 According to other preferred embodiments of the present invention, the popularity information could optionally and preferably be used for determining the amount to be charged for displaying a link to a Web page or other document to a user earlier in the display of search results. With regard to Web pages, the user typically receives search results in the form of a list of links to various Web pages. The order of links in the list may optionally be at least partially
10 detemiined according to payment by the owners of the Web pages. The amount of this cost is preferably related to the popularity of the Web page. For example, the popularity information could optionally and preferably be used to determine the "cpc" (cost per click through), which is the amount charged to the owner of a Web page when the user clicks on or otherwise selects a particular link. The principles and operation of the system and method according to the present
] 5 invention may be better understood with reference to the drawings and the accompanying description. It should be noted that the present invention is operable with any type of computational device network environment, in which information is to be collected about documents, and/or in which the documents themselves are to be collected. The present invention is preferably operated with regard to an IP network environment, although optionally any type of
20 networked, distributed client-server environment could be used for the present invention.
Referring now to the drawings, Figure 1 shows an illustrative system 10. in which a user interacts with a Web browser 112 being operated by a user computational device 114. Web browser 112 receives content from, and sends commands to, a Web server 116, according to the HTTP (HyperText Transfer Protocol) protocol. Web server 116 is connected to user
>5 computational device 114, and hence is able to communicate with Web browser 1 12. through a network 118. Network 118 may be the Internet, for example.
User computational device 114 is also preferably in communication with a submission Web server 120 through network 118. When Web browser 112 requests a particular Web page through user computational device 114, the Web page contains an embedded object, which
10 causes Web browser 112 to communicate with submission Web server 120. Preferably, the communication is in the form of an automatically generated request by Web browser 112, for example a request that is generally submitted to retrieve a particular Web page component, such as an image for example. The request is directed to the submission Web server 120, and includes the URL of the originating Web page, such that submission Web server 120 is preferably able to parse the request in order to retrieve the URL.
Once submission Web server 120 has parsed the request, and retrieved the URL. submission Web server 120 preferably stores the URL in a database 122. Database 122 may optionally also contain other information retrieved with the request by submission Web server 120, such as the date and time, approximate geographic location of user computational device 114. A search engine 124 may then optionally retrieve the URL from database 122, and/or submission Web server 120 may optionally and more preferably serve the URL to search engine 124. most preferably with any related information about the associated Web page, if available.
According to preferred embodiments of the present invention, the URL. optionally with related information, is provided to search engine 124 indirectly. An autonomous software search program 126 preferably interacts with submission Web server 120 in order to retrieve the URL, with optional related information. Autonomous software search program 126 then preferably provides the URL, with optional related information, to search engine 124. Thus, search engine 124 is able to retrieve URLs for any type of Web pages, even if those Web pages do not have a static form and/or content, such as for dynamic Web pages for example.
Figure 2 is a flowchart of an exemplary method for automatically submitting Web pages to a search engine. As shown, in stage 1 , the user requests a Web page through a Web browser. The Web page is optionally requested through a link, but preferably is requested after certain information is provided by the user, for example by entering data into a form and/or by selecting one or more choices from a menu. In stage 2, the Web page is optionally and preferably constructed "on the fly", in real time, according to the request of the user. The constructed Web page preferably includes an embedded object according to the present invention. In stage 3. the Web page is downloaded to the computational device of the user and is displayed by the Web browser.
In stage 4, the Web browser preferably interacts with the embedded object, thereby causing certain information to be returned to a submission Web server. It should be noted that although submission Web server is optionally the same Web server which provided the Web page, preferably two separate such servers are provided. The information which is returned to the submission Web server includes the URL of the Web page, and optionally includes other information as well. In stage 5, a search engine retrieves the information about the Web page, including at the least the URL, from the submission Web server. Optionally, such retrieval is performed directly. but preferably an autonomous software search program is used to retrieve the URL from the submission Web server. The autonomous software search program then preferably provides the URL with the optional related information to the search engine.
According to preferred embodiments of the present invention, the URL or other address which is sent to the search engine is normalized or otherwise adjusted according to the requirements of the search engine. For example, search engines which receive Web pages optionally and preferably receive the URL without redundant parameters. Figure 3 shows a flowchart of an exemplary method for normalizing a URI, such as the
URL of a Web page for example. Such normalization is optionally and preferably performed before the Web page or other document is submitted to the search engine and/or autonomous search software program for indexing as previously described. This process is optionally and preferably invoked by the autonomous software search program and/or search engine in order to decide whether, and optionally when, this Web page was previously indexed. The process is also preferably used to help the autonomous software search program and/or search engine to decide whether the Web page should be retrieved, for example for indexing.
As shown, in stage 1 , the Web page is preferably retrieved by using the complete URL to form an original Web page. In stage 2, each of the parameters is preferably removed and the Web page is retrieved again by using the reduced URL. The term "parameter" refers to any divisible subunit of the URL. In stage 3, this Web page is then compared with the original Web page. If the removed parameter(s) are not redundant, such that they are required for the correct retrieval of the original Web page, then the retrieved Web page would be completely different from the original Web page. If the parameter is redundant, the Web pages may be expected to be similar, although perhaps not completely identical. Lack of identity may occur if the Web page includes one or more links with the complete URL, as for a session ID. Alternatively, the Web page could be custom tailored according to user identifying information, for personalization. For that reason, the comparison function of the present invention preferably checks for similarity in content and more preferably produces a similarity level, which is the likelihood of the two Web pages to have the same content. If this value exceeds a certain threshold, then most preferably the removed parameter is considered to be redundant.
According to preferred embodiments of the present invention, the level of similarity is determined according to visual similarity. Visual similarity is preferably determined according to two different types of parameters. A first type of parameter is based upon content of the document, such as text and/or images for example. A second type of parameter is based upon visual layout characteristics of the document, such as the presence of one or more GUI (graphical user interface) gadgets or the location of text and/or images, for example. More preferably, the level of similarity is determined by comparing content-based parameters between documents. rather than by comparing visual layout characteristics. The use of content-based parameters is preferred because similarity is preferably determined according to the actual content or
"meaning" of a document, with regard to being submitted to a search engine and/or otherwise stored. The above process is preferably executed once per URL structure, and for each URL with the same structure. Therefore, stages 1-3 are optionally and preferably repeated for each URL structure. Once a parameter and/or a URL structure has been identified as occurring repeatedly". optionally and preferably, stages 1-3 are not performed again for such repeated parameters and/or
URL structures. In stage 4, these redundant parameters are more preferably removed. The redundant parameters are preferably removed automatically before the Web page is retrieved and indexed by the search engine in stage 5.
According to other preferred embodiments of the present invention, the present invention includes a system and method for determining the popularity or ranking of Web pages and/or other documents, for example according to the relative frequency at which the Web page or other document is requested.
Figure 4 shows an illustrative system 410 for determining the popularity of Web pages according to the viewing frequency per time period. Any type of time period may optionally be used, such as a day or an hour for example, although such a time period is preferably predetermined. The use of viewing frequency per time period is important, since otherwise the true popularity of a particular document cannot be accurately assessed.
A user interacts with a Web browser 412 being operated by a user computational device
414. Web browser 412 receives content from, and sends commands to, a Web server 416. according to the HTTP (HyperText Transfer Protocol) protocol. Web server 416 is connected to user computational device 414, and hence is able to communicate with Web browser 412, through a network 418. Network 418 may be the Internet, for example. The frequency with which different users request the Web page through their respective Web browsers 412 and user computational devices 414 determines the viewing frequency.
The viewing frequency is optionally measured by a viewing frequency server 419. which may optionally provide this information to a search engine 424. Search engine 424 then preferably uses the viewing frequency as at least part of a ranking mechanism for determining the rank of Web pages in search results, for example as a primary or secondary sorting parameter for determining the order of Web pages in the search results. More preferably, this weight is adjusted by submission web server 420 and/or search engine 424 and/or by viewing frequency server 419 according to the popularity of the Web site that contains the Web page, in order to normalize comparisons of individual Web pages from different Web sites. Most preferably, the viewing frequency is adjusted and/or augmented according to the number of times that a Web page is viewed by unique users and/or according to unique IP addresses of computational devices 414, and/or is downloaded to a proxy server (not shown) connected to computational device 414 through network 418, which request the Web page. The number of times that the Web page is viewed by unique users can be extracted from database 422. These additional statistics may optionally be combined with the viewing frequency to form a single weight, for example by normalizing viewing frequency according to one or both of these different measurements.
According to a preferred embodiment of the present invention, the viewing frequency is determined by including an embedded object in the Web page. Optionally and more preferably, this embedded object is the same embedded object which is used for submission to search engine, for example, as previously described. For this embodiment, user computational device 414 is also preferably in communication with a submission Web server 420 through network 418. When Web browser 412 requests a particular Web page through user computational device 414, the embedded object causes Web browser 412 to communicate with submission Web server 420. Preferably, the communication is in the form of an automatically generated request by Web browser 412, for example a request which is generally submitted to retrieve a particular Web page component, such as an image for example. The request is directed to the submission Web server 420, and includes the URL of the originating Web page, such that submission Web server 420 is preferably able to parse the request in order to retrieve the URL. Once submission Web server 420 has parsed the request, and retrieved the URL. submission Web server 420 preferably stores the URL and/or the frequency with which the URL is requested in a database 422. Database 422 may optionally also contain other information retrieved with the request by submission Web server 420, such as the date and time, approximate geographic location of user computational device 414. This information is then preferably provided to search engine 424 and/or viewing frequency server 419 for determining the ranking of Web pages. According to other optional but preferred embodiments of the present invention, viewing frequency server 419 may preferably perform a statistical analysis on the frequency ol' iewing (displaying) of Web pages and/or other documents. Such statistical analysis may optionally be used to determine which users request the Web page and/or other document (for example, according to Web browser 412). Such information may be particularly useful in the coiporate environment, in order to assess the efficacy of providing documents to employees "on-line", through a corporate network for example.
Alternatively or additionally, viewing frequency server 419 may optionally and preferably determine prices of "clicking through" or otherwise selecting links to various Web pages, for example for advertisements, according to the information about popularity. Also alternatively or additionally, viewing frequency server 419 may optionally index or otherwise gather Web pages and/or other documents for submission to submission Web server 420 and/or search engine 424 according to popularity or other statistical analysis of viewing frequency.
Figure 5 is a flowchart of an exemplary method for ranking Web pages. As shown, in stage 1 , the user requests a Web page through a Web browser. In stage 2, the request for the
Web page is detected for determining the viewing frequency. Preferably, such detection occurs through the provision of an embedded object, which reports the request to another entity, such as a search engine or a different (ranking) server for example. The Web browser preferably interacts with the embedded object, thereby causing certain information to be returned to a submission Web server. It should be noted that although submission Web server is optionally the same Web server which provided the Web page, preferably two separate such servers are provided. The information which is returned to the submission Web server includes the URL of the Web page or at least an indication that this URL was requested for viewing, and optionally includes other information as well. In stage 3, the viewing frequency of the Web page is determined in order to provide a weight which indicates the dynamic popularity of the Web page. More preferably, this weight is adjusted according to the popularity of the Web site which contains the Web page, in order to normalize comparisons of individual Web page from different Web sites. Most preferably, the viewing frequency is adjusted and/or augmented according to the number of times that a Web page is viewed by unique users and/or according to unique IP addresses of the computational devices which request the Web page. In stage 4, a search engine receives a request for a search from a user. The results of this search are ranked at least partially according to the weight accorded to the different Web pages.
This weight is optionally used as the primary or secondary sorting parameter.
There are a number of potential different uses for the popularity parameter. For example, the popularity parameter can optionally be used in the relevancy ranking algorithm of the search engines, since more popular pages may optionally have a higher rank. This parameter can optionally be used as a primary sorting parameter or as secondary sorting parameter for determining the order in which the results of the search are presented.
The popularity parameter can optionally be used to exclude less popular pages from the search index. Alternatively or additionally, it can be used by Web sites that advertise Web pages on a pay-per-click basis, for example for displaying the Web page first or at least earlier in the search results presented by the search engine. The cost-per-click of a Web page could then optionally and preferably be a function of the popularity of the Web page.
The present invention provides a number of advantages over currently available solutions. For example, most autonomous software search programs simply ignore dynamic
Web pages, as being too difficult to detect and/or analyze, once detected. Those programs which do attempt to handle such dynamic Web pages may encounter such problems as infinite recursion within the available links, as links to dynamic Web pages do not point to any particular static or fixed Web page, but instead to a potential collection of items arranged as a Web page. Thus, the present invention overcomes a number of problems with the background art solutions. Other advantages of the present invention include, but are not limited to. providing access to potentially all Web pages and/or other documents, even if they were generated by form submission and did not have incoming links; optionally provision of control to the Web site owner as to which pages are submitted, through the use of the submission code; optionally and preferably, being able to determine the popularity or "ranking" of Web pages and/or other documents; immediate provision of information about a new Web page and/or other document immediately after it was first requested; and optional extraction of additional data from the I ITTP header such as IP address which can be used to get demographic data. This optionally extracted additional information can optionally and preferably be used to create demographic- based indexes (for example, to create a search engine for users who are located in a particular country).
While the invention has been described with respect to a limited number of embodiments, it will be appreciated that many variations, modifications and other applications of the invention may be made.

Claims

WHAT IS CLAIMED IS:
1. A system for automatically submitting a Web page to a search engine, wherein the Web page features an embedded object, comprising:
(a) a Web server for serving the Web page;
(b) a Web browser for requesting the Web page from said Web server, and for receiving the Web page; and
(c) a submission Web server for receiving at least a URL of the Web page through the embedded object, such that the search engine receives the URI from said submission Web server.
2. The system of claim 1, wherein the embedded object includes a URL for being in communication with said submission Web server, such that said Web browser sends a request to said submission Web server, said request including a URL of the Web page.
3. The system of claim 1, wherein the embedded object actively communicates said URL of the Web page to said submission Web server.
4. The system of claim 1 , wherein a single server comprises said submission Web server and said Web server.
5. The system of claim 1 , wherein the embedded object comprises HTML code.
6. The system of claim 1 , wherein the embedded object comprises an applet.
7. The system of claim 6, wherein the embedded object comprises a scripting code.
8. The system of claim 1. further comprising:
(e) an autonomous software search program for retrieving said URL from said submission Web server and for providing said URL to the search engine.
9. The system of claim 1 , wherein said submission Web server retrieves additional information with s.aid URL, said additional information being provided to the search engine with said URL.
10. The system of claim 1 , wherein the Web page is a dynamic Web page.
11. The system of any of claims 1-10, wherein said submission Web server normalizes the URL for the Web page for the search engine.
12. The system of claim 1 1 , wherein said normalizing comprises removing at least one redundant parameter from the URL to form a normalized URL.
13. A system for automatically submitting a Web page to a search engine, wherein the Web page features an embedded object, comprising:
(a) a Web server for serving the Web page;
(b) a Web browser for requesting the Web page from said Web server, such that when the Web page is received, the embedded object is activated; and
(c) a submission Web server for receiving at least a URL of the Web page upon activation of the embedded object.
14. The system of claim 13, wherein said submission Web server and said Web server are the same server.
15. The system of claim 13, wherein the embedded object comprises an applet.
16. The system of any of claims 13-15, wherein the embedded object comprises a scripting code.
17. The system of claim 13, further comprising:
(e) an autonomous software search program for retrieving said URL from said submission Web server and for providing said URL to said search engine.
18. The system of claim 13, wherein said submission Web server retrieves additional information with said URL, said additional information being provided to said search engine with said URL.
19. The system of claim 13, wherein the Web page is a dynamic Web page.
20. The system of any of claims 13-19, wherein at least one of said autonomous software search program, said search engine and said submission Web server normalizes the URL for the Web page.
21. The system of claim 20, wherein said normalizing comprises removing at least one redundant parameter from the URL to form a normalized URL.
22. A method for automatically submitting a Web page to a search engine, the Web page featuring an embedded object, comprising: requesting the Web page by a Web browser; upon receipt of the Web page by said Web browser, automatically invoking a request for the embedded object; and receiving at least the URL of the Web page by said search engine through said request.
23. The method of claim 22, wherein the embedded object invokes said request directly.
24. The method of claim 22, wherein said Web browser transmits said request for the embedded object, said automatically invoking further comprising: receiving said request by an object server, said request including the URL of the Web page; and transmitting at least the URL of the Web page by said object server.
25. The method of any of claims 22-24, wherein said receiving further comprises: normalizing the URL for the Web page for said search engine.
26. The method of claim 25, wherein said normalizing comprises removing at least one redundant parameter from the URL to form a normalized URL.
27. A method for normalizing a URL for a Web page, comprising: removing at least one redundant parameter from the URL to form a normalized URL.
28. The method of claim 27, wherein all redundant parameters are removed.
29. The method of claims 27 or 28, wherein each redundant parameter is removed by: removing a parameter from the URL to form a reduced URL; retrieving a new Web page according to said reduced URL; and comparing said new Web page and the Web page to determine similarity, such that similarity indicates that said parameter is redundant.
30. The method of claim 29, wherein similarity is determined according to content of said new Web page and the Web page.
31. The method of claims 29 or 30, wherein similarity is determined according to a quantitative comparison, such that if similarity is above a threshold, said parameter is redundant.
32. The method of claim 31, wherein said quantitative comparison is determined by comparing content of said new Web page and the Web page.
33. The method of claim 32, wherein said quantitative comparison is performed by also comparing layout of said new Web page and the Web page.
34. The method of claim 32, wherein said quantitative comparison is determined by only comparing content of said new Web page and the Web page, and wherein content comprises at least one of text and image.
35. The method of claims 27-34, wherein the removal of parameters and the comparison of the content in order to determine redundancy of parameters is done either automatically or manually.
36. The method of any of claims 27-35, wherein the URL is normalized before the Web page is provided to a search engine.
37. A method for ranking a Web page, comprising: defining a time period for dynamically ranking Web pages; detecting a request for the Web page from a Web browser; determining a frequency of requests per said defined time period; and ranking the Web page according to said frequency of requests per said defined time period to determine the popularity of the Web page.
38. The method of claim 37, wherein the Web page contains an embedded object for reporting a request to download the Web page by a Web browser.
39. The method of claim 38, wherein said embedded object causes said Web browser to invoke a request according to the HTTP protocol, said request being detected to report said request to download the Web page.
40. The method of claim 37, wherein said frequency of requests per time period is used to determine a weight for ranking the Web page.
41. The method of claim 40, further comprising: searching a plurality of Web pages to provide search results; and ranking said plurality of Web pages in said search results according to said weight.
42. The method of claim 41 , wherein said plurality of Web pages is ranked according to said weight as a primary ranking parameter.
43. The method of claim 41 , wherein said plurality of Web pages is ranked according to said weight as a secondary ranking parameter.
44. The method of claim 40, wherein said weight is adjusted according to a popularity of at least one other Web page in a Web site containing the Web page.
45. The method of claim 44, wherein said weight is adjusted according to at least one of a number of times the Web page is viewed by unique users and unique IP addresses.
46. The method of any of claims 37-45, further comprising: determining a billing rate for an advertisement with the Web page according to said ranking.
47. The method of claim 46, wherein said advertisement is for displaying at least one of a link to the Web page and the Web page in a list, wherein said list is generated by a search engine performing a search for Web pages.
48. The method of claims 46 or 47, wherein said billing rate is for click through on said advertisement.
49. A method for automatically submitting an URI of a document to a repositoiy, the document featuring an embedded object, the method comprising: requesting the document by a user application capable of displaying the document; receiving the document by said user application; automatically invoking a request for the embedded object when displaying the document by said user application; and receiving at least the address of the document by the repository through said request.
50. The method of claim 49, wherein the embedded object invokes said request directly.
51. The method of claim 50, wherein the embedded object communicates the address to the repository directly.
52. The method of claim 49, wherein said user application transmits said request for the embedded object, and wherein said automatically invoking further comprises: receiving said request by an object server, said request including the address of the document; and transmitting at least the address of the document by said object server to the repository.
53. The method of any of claims 49-52, wherein the document comprises an e-mail message, and wherein automatically invoking said request includes information about a time that said e-mail message has been opened by user application.
EP02755591A 2001-07-27 2002-07-25 System and method for automated tracking and analysis of document usage Withdrawn EP1412874A4 (en)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US30785201P 2001-07-27 2001-07-27
US307852P 2001-07-27
US31184401P 2001-08-14 2001-08-14
US311844P 2001-08-14
US31206201P 2001-08-15 2001-08-15
US312062P 2001-08-15
PCT/IL2002/000616 WO2003012576A2 (en) 2001-07-27 2002-07-25 System and method for automated tracking and analysis of document usage

Publications (2)

Publication Number Publication Date
EP1412874A2 EP1412874A2 (en) 2004-04-28
EP1412874A4 true EP1412874A4 (en) 2007-10-17

Family

ID=27405283

Family Applications (1)

Application Number Title Priority Date Filing Date
EP02755591A Withdrawn EP1412874A4 (en) 2001-07-27 2002-07-25 System and method for automated tracking and analysis of document usage

Country Status (4)

Country Link
US (1) US20040172389A1 (en)
EP (1) EP1412874A4 (en)
AU (1) AU2002321795A1 (en)
WO (1) WO2003012576A2 (en)

Families Citing this family (73)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003017023A2 (en) 2001-08-14 2003-02-27 Quigo Technologies, Inc. System and method for extracting content for submission to a search engine
US7890639B1 (en) * 2002-01-30 2011-02-15 Novell, Inc. Method and apparatus for controlling access to portal content from outside the portal
US7987421B1 (en) 2002-01-30 2011-07-26 Boyd H Timothy Method and apparatus to dynamically provide web content resources in a portal
US20080189408A1 (en) 2002-10-09 2008-08-07 David Cancel Presenting web site analytics
US8095589B2 (en) * 2002-03-07 2012-01-10 Compete, Inc. Clickstream analysis methods and systems
US10296919B2 (en) 2002-03-07 2019-05-21 Comscore, Inc. System and method of a click event data collection platform
US9946788B2 (en) 2002-07-23 2018-04-17 Oath Inc. System and method for automated mapping of keywords and key phrases to documents
AU2003265847A1 (en) * 2002-09-03 2004-03-29 X1 Technologies, Llc Apparatus and methods for locating data
US7103609B2 (en) * 2002-10-31 2006-09-05 International Business Machines Corporation System and method for analyzing usage patterns in information aggregates
US7624173B2 (en) * 2003-02-10 2009-11-24 International Business Machines Corporation Method and system for classifying content and prioritizing web site content issues
US20050010563A1 (en) * 2003-05-15 2005-01-13 William Gross Internet search application
US20050262063A1 (en) * 2004-04-26 2005-11-24 Watchfire Corporation Method and system for website analysis
US20050267872A1 (en) * 2004-06-01 2005-12-01 Yaron Galai System and method for automated mapping of items to documents
US10032452B1 (en) 2016-12-30 2018-07-24 Google Llc Multimodal transmission of packetized data
US20060031205A1 (en) * 2004-08-05 2006-02-09 Usa Revco, Llc, Dba Clear Search Method and system for providing information over a network
GB2418037B (en) * 2004-09-09 2007-02-28 Surfcontrol Plc System, method and apparatus for use in monitoring or controlling internet access
GB2418108B (en) 2004-09-09 2007-06-27 Surfcontrol Plc System, method and apparatus for use in monitoring or controlling internet access
US8108389B2 (en) 2004-11-12 2012-01-31 Make Sence, Inc. Techniques for knowledge discovery by constructing knowledge correlations using concepts or terms
US8126890B2 (en) * 2004-12-21 2012-02-28 Make Sence, Inc. Techniques for knowledge discovery by constructing knowledge correlations using concepts or terms
US9330175B2 (en) 2004-11-12 2016-05-03 Make Sence, Inc. Techniques for knowledge discovery by constructing knowledge correlations using concepts or terms
US8762280B1 (en) 2004-12-02 2014-06-24 Google Inc. Method and system for using a network analysis system to verify content on a website
US9454762B2 (en) * 2005-03-18 2016-09-27 Samuel Robert Gaidemak System and method for the delivery of content to a networked device
US8140559B2 (en) * 2005-06-27 2012-03-20 Make Sence, Inc. Knowledge correlation search engine
US8898134B2 (en) 2005-06-27 2014-11-25 Make Sence, Inc. Method for ranking resources using node pool
US9105028B2 (en) 2005-08-10 2015-08-11 Compete, Inc. Monitoring clickstream behavior of viewers of online advertisements and search results
US20070083671A1 (en) * 2005-10-11 2007-04-12 International Business Machines Corporation Servlet filters to decode encoded request parameters
US8024653B2 (en) 2005-11-14 2011-09-20 Make Sence, Inc. Techniques for creating computer generated notes
US20070239532A1 (en) 2006-03-31 2007-10-11 Scott Benson Determining advertising statistics for advertisers and/or advertising networks
US7941525B1 (en) 2006-04-01 2011-05-10 ClickTale, Ltd. Method and system for monitoring an activity of a user
US8020206B2 (en) * 2006-07-10 2011-09-13 Websense, Inc. System and method of analyzing web content
US8615800B2 (en) 2006-07-10 2013-12-24 Websense, Inc. System and method for analyzing web content
US7610276B2 (en) * 2006-09-22 2009-10-27 Advertise.Com, Inc. Internet site access monitoring
US20080077577A1 (en) * 2006-09-27 2008-03-27 Byrne Joseph J Research and Monitoring Tool to Determine the Likelihood of the Public Finding Information Using a Keyword Search
US7827166B2 (en) * 2006-10-13 2010-11-02 Yahoo! Inc. Handling dynamic URLs in crawl for better coverage of unique content
US9654495B2 (en) 2006-12-01 2017-05-16 Websense, Llc System and method of analyzing web addresses
GB2458094A (en) 2007-01-09 2009-09-09 Surfcontrol On Demand Ltd URL interception and categorization in firewalls
US20080177588A1 (en) * 2007-01-23 2008-07-24 Quigo Technologies, Inc. Systems and methods for selecting aesthetic settings for use in displaying advertisements over a network
US9009649B2 (en) * 2007-05-16 2015-04-14 Accenture Global Services Limited Application search tool for rapid prototyping and development of new applications
GB0709527D0 (en) 2007-05-18 2007-06-27 Surfcontrol Plc Electronic messaging system, message processing apparatus and message processing method
US8412571B2 (en) 2008-02-11 2013-04-02 Advertising.Com Llc Systems and methods for selling and displaying advertisements over a network
US20090240670A1 (en) * 2008-03-20 2009-09-24 Yahoo! Inc. Uniform resource identifier alignment
US7908391B1 (en) * 2008-03-25 2011-03-15 Symantec Corporation Application streaming and network file system optimization via feature popularity
US8726146B2 (en) 2008-04-11 2014-05-13 Advertising.Com Llc Systems and methods for video content association
US8832052B2 (en) * 2008-06-16 2014-09-09 Cisco Technologies, Inc. Seeding search engine crawlers using intercepted network traffic
EP2318955A1 (en) 2008-06-30 2011-05-11 Websense, Inc. System and method for dynamic and real-time categorization of webpages
KR101640464B1 (en) * 2009-10-26 2016-07-18 삼성전자 주식회사 Method for providing user interface based on touch screen and mobile terminal using the same
US9256692B2 (en) * 2009-12-03 2016-02-09 Hewlett Packard Enterprise Development Lp Clickstreams and website classification
WO2012009672A1 (en) * 2010-07-16 2012-01-19 Altruik, Inc. System and method for improving webpage indexing and optimization
CN101908071B (en) * 2010-08-10 2012-09-05 厦门市美亚柏科信息股份有限公司 Method and device thereof for improving search efficiency of search engine
US20120084291A1 (en) * 2010-09-30 2012-04-05 Microsoft Corporation Applying search queries to content sets
US8924395B2 (en) 2010-10-06 2014-12-30 Planet Data Solutions System and method for indexing electronic discovery data
US9747387B2 (en) 2011-08-15 2017-08-29 Google Inc. Methods and systems for content enhancement
US8707262B2 (en) * 2011-12-22 2014-04-22 Sap Ag Code scoring
US8839350B1 (en) * 2012-01-25 2014-09-16 Symantec Corporation Sending out-of-band notifications
US9900395B2 (en) 2012-01-27 2018-02-20 Comscore, Inc. Dynamic normalization of internet traffic
US8954580B2 (en) 2012-01-27 2015-02-10 Compete, Inc. Hybrid internet traffic measurement using site-centric and panel data
US9922334B1 (en) 2012-04-06 2018-03-20 Google Llc Providing an advertisement based on a minimum number of exposures
US10776830B2 (en) 2012-05-23 2020-09-15 Google Llc Methods and systems for identifying new computers and providing matching services
US10152723B2 (en) 2012-05-23 2018-12-11 Google Llc Methods and systems for identifying new computers and providing matching services
EP2864952A4 (en) * 2012-06-26 2015-12-23 Wetpaint Com Inc Portfolio optimization for media merchandizing
US20140149586A1 (en) * 2012-11-29 2014-05-29 Vindico Llc Internet panel for capturing active and intentional online activity
US9117054B2 (en) 2012-12-21 2015-08-25 Websense, Inc. Method and aparatus for presence based resource management
US10735552B2 (en) 2013-01-31 2020-08-04 Google Llc Secondary transmissions of packetized data
US10650066B2 (en) 2013-01-31 2020-05-12 Google Llc Enhancing sitelinks with creative content
US9659058B2 (en) 2013-03-22 2017-05-23 X1 Discovery, Inc. Methods and systems for federation of results from search indexing
US9880983B2 (en) 2013-06-04 2018-01-30 X1 Discovery, Inc. Methods and systems for uniquely identifying digital content for eDiscovery
KR102133486B1 (en) 2014-06-26 2020-07-13 구글 엘엘씨 Optimized browser rendering process
RU2659481C1 (en) 2014-06-26 2018-07-02 Гугл Инк. Optimized architecture of visualization and sampling for batch processing
EP3161662B1 (en) 2014-06-26 2024-01-31 Google LLC Optimized browser render process
US10346550B1 (en) 2014-08-28 2019-07-09 X1 Discovery, Inc. Methods and systems for searching and indexing virtual environments
US10353978B2 (en) * 2016-07-06 2019-07-16 Facebook, Inc. URL normalization
US10708313B2 (en) 2016-12-30 2020-07-07 Google Llc Multimodal transmission of packetized data
US10593329B2 (en) 2016-12-30 2020-03-17 Google Llc Multimodal transmission of packetized data

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5796952A (en) * 1997-03-21 1998-08-18 Dot Com Development, Inc. Method and apparatus for tracking client interaction with a network resource and creating client profiles and resource database
US5895470A (en) * 1997-04-09 1999-04-20 Xerox Corporation System for categorizing documents in a linked collection of documents
US5905862A (en) * 1996-09-04 1999-05-18 Intel Corporation Automatic web site registration with multiple search engines
US6035332A (en) * 1997-10-06 2000-03-07 Ncr Corporation Method for monitoring user interactions with web pages from web server using data and command lists for maintaining information visited and issued by participants
EP1030247A2 (en) * 1999-02-16 2000-08-23 Nectaris Technologies Ltd. System and method for sharing bookmark information
WO2000067159A2 (en) * 1999-05-05 2000-11-09 Xerox Corporation System and method for searching and recommending documents in a collection using shared bookmarks
WO2000068839A1 (en) * 1999-05-11 2000-11-16 Search Mechanics, Inc. A process for maintaining ongoing registration for pages on a given search engine
WO2000075814A1 (en) * 1999-06-03 2000-12-14 Keylime Software, Inc. System and method for monitoring user interaction with web pages

Family Cites Families (62)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5758257A (en) * 1994-11-29 1998-05-26 Herz; Frederick System and method for scheduling broadcast of and access to video programs and other data using customer profiles
US5870552A (en) * 1995-03-28 1999-02-09 America Online, Inc. Method and apparatus for publishing hypermedia documents over wide area networks
US5761673A (en) * 1996-01-31 1998-06-02 Oracle Corporation Method and apparatus for generating dynamic web pages by invoking a predefined procedural package stored in a database
US5983237A (en) * 1996-03-29 1999-11-09 Virage, Inc. Visual dictionary
US5727156A (en) * 1996-04-10 1998-03-10 Hotoffice Technologies, Inc. Internet-based automatic publishing system
US5894554A (en) * 1996-04-23 1999-04-13 Infospinner, Inc. System for managing dynamic web page generation requests by intercepting request at web server and routing to page server thereby releasing web server to process other requests
US5835712A (en) * 1996-05-03 1998-11-10 Webmate Technologies, Inc. Client-server system using embedded hypertext tags for application and database development
US5870559A (en) * 1996-10-15 1999-02-09 Mercury Interactive Software system and associated methods for facilitating the analysis and management of web sites
US5958008A (en) * 1996-10-15 1999-09-28 Mercury Interactive Corporation Software system and associated methods for scanning and mapping dynamically-generated web documents
US6192407B1 (en) * 1996-10-24 2001-02-20 Tumbleweed Communications Corp. Private, trackable URLs for directed document delivery
US5948061A (en) * 1996-10-29 1999-09-07 Double Click, Inc. Method of delivery, targeting, and measuring advertising over networks
US6285987B1 (en) * 1997-01-22 2001-09-04 Engage, Inc. Internet advertising system
US6122657A (en) * 1997-02-04 2000-09-19 Networks Associates, Inc. Internet computer system with methods for dynamic filtering of hypertext tags and content
US5933822A (en) * 1997-07-22 1999-08-03 Microsoft Corporation Apparatus and methods for an information retrieval system that employs natural language processing of search results to improve overall precision
US6078916A (en) * 1997-08-01 2000-06-20 Culliss; Gary Method for organizing information
US6230196B1 (en) * 1997-11-12 2001-05-08 International Business Machines Corporation Generation of smart HTML anchors in dynamic web page creation
US5987457A (en) * 1997-11-25 1999-11-16 Acceleration Software International Corporation Query refinement method for searching documents
US6094649A (en) * 1997-12-22 2000-07-25 Partnet, Inc. Keyword searches of structured databases
US6151624A (en) * 1998-02-03 2000-11-21 Realnames Corporation Navigating network resources based on metadata
US6421675B1 (en) * 1998-03-16 2002-07-16 S. L. I. Systems, Inc. Search engine
US6434614B1 (en) * 1998-05-29 2002-08-13 Nielsen Media Research, Inc. Tracking of internet advertisements using banner tags
US6006225A (en) * 1998-06-15 1999-12-21 Amazon.Com Refining search queries by the suggestion of correlated terms from prior searches
US6256633B1 (en) * 1998-06-25 2001-07-03 U.S. Philips Corporation Context-based and user-profile driven information retrieval
US6308202B1 (en) * 1998-09-08 2001-10-23 Webtv Networks, Inc. System for targeting information to specific users on a computer network
US6356899B1 (en) * 1998-08-29 2002-03-12 International Business Machines Corporation Method for interactively creating an information database including preferred information elements, such as preferred-authority, world wide web pages
US6311278B1 (en) * 1998-09-09 2001-10-30 Sanctum Ltd. Method and system for extracting application protocol characteristics
US6078866A (en) * 1998-09-14 2000-06-20 Searchup, Inc. Internet site searching and listing service based on monetary ranking of site listings
US6317722B1 (en) * 1998-09-18 2001-11-13 Amazon.Com, Inc. Use of electronic shopping carts to generate personal recommendations
US6370527B1 (en) * 1998-12-29 2002-04-09 At&T Corp. Method and apparatus for searching distributed networks using a plurality of search devices
US7055091B1 (en) * 1999-01-20 2006-05-30 Avaya Inc. System and method for establishing relationships between hypertext reference and electronic mail program incorporating the same
WO2000046701A1 (en) * 1999-02-08 2000-08-10 Huntsman Ici Chemicals Llc Method for retrieving semantically distant analogies
US6366298B1 (en) * 1999-06-03 2002-04-02 Netzero, Inc. Monitoring of individual internet usage
US6907566B1 (en) * 1999-04-02 2005-06-14 Overture Services, Inc. Method and system for optimum placement of advertisements on a webpage
US6269361B1 (en) * 1999-05-28 2001-07-31 Goto.Com System and method for influencing a position on a search result list generated by a computer network search engine
US6754873B1 (en) * 1999-09-20 2004-06-22 Google Inc. Techniques for finding related hyperlinked documents using link-based analysis
US6453315B1 (en) * 1999-09-22 2002-09-17 Applied Semantics, Inc. Meaning-based information organization and retrieval
AUPQ475799A0 (en) * 1999-12-20 2000-01-20 Youramigo Pty Ltd An internet indexing system and method
US6668256B1 (en) * 2000-01-19 2003-12-23 Autonomy Corporation Ltd Algorithm for automatic selection of discriminant term combinations for document categorization
US6546554B1 (en) * 2000-01-21 2003-04-08 Sun Microsystems, Inc. Browser-independent and automatic apparatus and method for receiving, installing and launching applications from a browser on a client computer
US6704727B1 (en) * 2000-01-31 2004-03-09 Overture Services, Inc. Method and system for generating a set of search terms
US6636247B1 (en) * 2000-01-31 2003-10-21 International Business Machines Corporation Modality advertisement viewing system and method
AU2001234758A1 (en) * 2000-02-04 2001-08-14 America Online Incorporated High performance "freeze-dried" dynamic web page generation
US6401075B1 (en) * 2000-02-14 2002-06-04 Global Network, Inc. Methods of placing, purchasing and monitoring internet advertising
HK1024380A2 (en) * 2000-03-28 2000-08-25 Lawrence Wai Ming Mo Internet-based font server
US7418440B2 (en) * 2000-04-13 2008-08-26 Ql2 Software, Inc. Method and system for extraction and organizing selected data from sources on a network
US7200677B1 (en) * 2000-04-27 2007-04-03 Microsoft Corporation Web address converter for dynamic web pages
US7313588B1 (en) * 2000-07-13 2007-12-25 Biap Systems, Inc. Locally executing software agent for retrieving remote content and method for creation and use of the agent
US7284008B2 (en) * 2000-08-30 2007-10-16 Kontera Technologies, Inc. Dynamic document context mark-up technique implemented over a computer network
US6654734B1 (en) * 2000-08-30 2003-11-25 International Business Machines Corporation System and method for query processing and optimization for XML repositories
US7222105B1 (en) * 2000-09-11 2007-05-22 Pitney Bowes Inc. Internet advertisement metering system and method
US7013351B2 (en) * 2000-10-02 2006-03-14 Microsoft Corporation Template architecture and rendering engine for web browser access to databases
US7249121B1 (en) * 2000-10-04 2007-07-24 Google Inc. Identification of semantic units from within a search query
US7299403B1 (en) * 2000-10-11 2007-11-20 Cisco Technology, Inc. Methods and apparatus for obtaining a state of a browser
AU2002225822A1 (en) * 2000-10-31 2002-05-15 Contextweb Internet contextual communication system
US7412519B2 (en) * 2000-12-08 2008-08-12 Xerox Corporation Authorized document usage including rendering a protected document
US6526440B1 (en) * 2001-01-30 2003-02-25 Google, Inc. Ranking search results by reranking the results based on local inter-connectivity
US7716161B2 (en) * 2002-09-24 2010-05-11 Google, Inc, Methods and apparatus for serving relevant advertisements
US9946788B2 (en) * 2002-07-23 2018-04-17 Oath Inc. System and method for automated mapping of keywords and key phrases to documents
US7174346B1 (en) * 2003-07-31 2007-02-06 Google, Inc. System and method for searching an extended database
US7231399B1 (en) * 2003-11-14 2007-06-12 Google Inc. Ranking documents based on large data sets
US20050149499A1 (en) * 2003-12-30 2005-07-07 Google Inc., A Delaware Corporation Systems and methods for improving search quality
US20050267872A1 (en) * 2004-06-01 2005-12-01 Yaron Galai System and method for automated mapping of items to documents

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5905862A (en) * 1996-09-04 1999-05-18 Intel Corporation Automatic web site registration with multiple search engines
US5796952A (en) * 1997-03-21 1998-08-18 Dot Com Development, Inc. Method and apparatus for tracking client interaction with a network resource and creating client profiles and resource database
US5895470A (en) * 1997-04-09 1999-04-20 Xerox Corporation System for categorizing documents in a linked collection of documents
US6035332A (en) * 1997-10-06 2000-03-07 Ncr Corporation Method for monitoring user interactions with web pages from web server using data and command lists for maintaining information visited and issued by participants
EP1030247A2 (en) * 1999-02-16 2000-08-23 Nectaris Technologies Ltd. System and method for sharing bookmark information
WO2000067159A2 (en) * 1999-05-05 2000-11-09 Xerox Corporation System and method for searching and recommending documents in a collection using shared bookmarks
WO2000068839A1 (en) * 1999-05-11 2000-11-16 Search Mechanics, Inc. A process for maintaining ongoing registration for pages on a given search engine
WO2000075814A1 (en) * 1999-06-03 2000-12-14 Keylime Software, Inc. System and method for monitoring user interaction with web pages

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
BHARAT K ET AL: "A technique for measuring the relative size and overlap of public Web search engines", COMPUTER NETWORKS AND ISDN SYSTEMS, NORTH HOLLAND PUBLISHING. AMSTERDAM, NL, vol. 30, no. 1-7, April 1998 (1998-04-01), pages 379 - 388, XP004121409, ISSN: 0169-7552 *
HIRAI J ET AL: "WebBase: a repository of Web pages", COMPUTER NETWORKS, ELSEVIER SCIENCE PUBLISHERS B.V., AMSTERDAM, NL, vol. 33, no. 1-6, June 2000 (2000-06-01), pages 277 - 293, XP004304772, ISSN: 1389-1286 *

Also Published As

Publication number Publication date
EP1412874A2 (en) 2004-04-28
US20040172389A1 (en) 2004-09-02
WO2003012576A3 (en) 2003-10-30
WO2003012576A2 (en) 2003-02-13
AU2002321795A1 (en) 2003-02-17

Similar Documents

Publication Publication Date Title
US20040172389A1 (en) System and method for automated tracking and analysis of document usage
EP1428139B1 (en) System and method for extracting content for submission to a search engine
US7536389B1 (en) Techniques for crawling dynamic web content
US7788245B1 (en) Method and system for dynamically generating search links embedded in content
CN100380864C (en) Method and system for updating/reloading the content of pages browsed over a network
US7885950B2 (en) Creating search enabled web pages
US9223895B2 (en) System and method for contextual commands in a search results page
US10284666B1 (en) Third-party cross-site data sharing
US20020120721A1 (en) Client capability detection in a client and server system
EP1030247A2 (en) System and method for sharing bookmark information
US20110238662A1 (en) Method and system for searching a wide area network
US8275766B2 (en) Systems and methods for detecting network resource interaction and improved search result reporting
GB2331166A (en) Database search engine
US20030051031A1 (en) Method and apparatus for collecting page load abandons in click stream data
WO2010024893A1 (en) Uniquely identifying network-distributed devices without explicitly provided device or user identifying information
US20070005606A1 (en) Approach for requesting web pages from a web server using web-page specific cookie data
EP1787225A1 (en) System and method for guiding navigation through a hypertext system
US20100057695A1 (en) Post-processing search results on a client computer
WO2006053167A9 (en) Search system presenting active abstracts including linked terms
US8140508B2 (en) System and method for contextual commands in a search results page
CN100550015C (en) Improved user interface
WO2001009771A9 (en) Targeted advertising system
EP0953921A2 (en) Device and method for information processing and storage medium containing a control program for information processing
US20060149697A1 (en) Context data transmission
KR20030000932A (en) Method, and system for displaying a desired content in distributed database on displayer of certain client computer

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20040127

AK Designated contracting states

Kind code of ref document: A2

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR IE IT LI LU MC NL PT SE SK TR

AX Request for extension of the european patent

Extension state: AL LT LV MK RO SI

RIC1 Information provided on ipc code assigned before grant

Ipc: G06F 17/20 20060101AFI20040203BHEP

Ipc: G06F 17/30 20060101ALI20070709BHEP

A4 Supplementary search report drawn up and despatched

Effective date: 20070919

17Q First examination report despatched

Effective date: 20100629

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20101110