WO1997021183A1 - Method and system for placing advertisements in a computer network - Google Patents

Method and system for placing advertisements in a computer network Download PDF

Info

Publication number
WO1997021183A1
WO1997021183A1 PCT/US1996/019509 US9619509W WO9721183A1 WO 1997021183 A1 WO1997021183 A1 WO 1997021183A1 US 9619509 W US9619509 W US 9619509W WO 9721183 A1 WO9721183 A1 WO 9721183A1
Authority
WO
WIPO (PCT)
Prior art keywords
user
advertisements
page
advertisement
query
Prior art date
Application number
PCT/US1996/019509
Other languages
French (fr)
Inventor
Shamin Abbas Naqvi
Tomasz Imielinski
Original Assignee
Bell Communications Research, Inc.
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 Bell Communications Research, Inc. filed Critical Bell Communications Research, Inc.
Priority to JP52147697A priority Critical patent/JP2001525951A/en
Priority to KR1019980704366A priority patent/KR19990072063A/en
Priority to EP96943640A priority patent/EP0954797A1/en
Publication of WO1997021183A1 publication Critical patent/WO1997021183A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • 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/9537Spatial or temporal dependent retrieval, e.g. spatiotemporal queries

Definitions

  • the present invention relates generally to advertising and, in particular, to a method and system for placing advertisements in a computer network, such as a wide area network or a metropolitan area network.
  • a number of information services are currently offered on wide area public networks, such as the Internet.
  • the basic model of these services is that a query is processed and a set of answers is returned.
  • a number of yellow page searchable directories have been developed in which users can query categories of products or services (e.g., new car dealers) and the system returns a set of vendors satisfying the query.
  • Public networks such as the Internet
  • search engines used in public networks are sponsored by a single vendor or company.
  • the sponsoring vendor or company will often have an advertisement displayed on a user's computer screen during use of the search engine.
  • Other search engines display randomly selected advertisements from a fixed set of advertisements.
  • WWW World Wide Web
  • advertisements are sometimes referred to as "banner” advertisements because they simulate a banner that the user sees as the user is traveling down a "road” on the computer network.
  • banner advertisements are typically tied to a particular search page that the user encounters during the search.
  • the current state of the art is such that when the user uses a search engine, a randomly selected advertisement is shown as if it is part of the search page.
  • the user may enter a search request to see a home page on cooking and, as a part of that page, the existing systems might display an advertisement about cars.
  • This is a problem, of course, because there is no connection made between the content of the advertisements or the message of the advertisements and what the user is actually searching.
  • Another problem with the current state of the art is that there is no guarantee associated with the advertisements that they will be shown a certain number of times or in a certain place on the page with respect to the other pieces of data on that page.
  • the existing systems for placing advertisements on computer networks, such as the Internet fail to take full advantage of the interactive/demand driven environment of the online medium.
  • the present invention provides a new process and system for online advertising. This new process will be referred to throughout this application as query-based advertising ("QBA") .
  • QBA query-based advertising
  • advertisements are primarily triggered by user queries.
  • User queries refer to requests from an information consumer for one or more pages of information from a computer network.
  • the query triggers advertisements.
  • a server containing a collection of advertisements is placed in electronic communication with a computer network.
  • the computer network is preferably a wide area network, such as the Internet, or a metropolitan area network.
  • the phrase "computer network" refers to any public or private data communications network.
  • the advertisements on the server are not tied to any particular page containing information on the computer network. Rather, the advertisements are contained on the server, distinct from the pages that may or may not later carry the advertisements.
  • the pages by themselves have no advertisements. Thus, the pages are analogous to a newspaper or magazine devoid of any advertisements.
  • the present invention upon receiving the user's request, retrieves advertisements that are related to the user's action, dynamically mixes the advertisements with the content of the pages according to a particular layout, and displays the pages with focused, targeted advertisements as a part of the page.
  • the advertisements can be made to satisfy a set of constraints requested by the advertiser, as well as the constraints of the publisher of the page, as further discussed below.
  • the advertisement triggering mechanism of the present invention is not random or coincidental, but rather, is prespecified in advance. This specification will be referred to in this application as a contract.
  • a contract specifies the marketing rules that link advertisements with specific queries.
  • a diet soft drink advertisement may be shown when a user asks for a page about exercising equipment.
  • These rules are specified by advertisers implementing the concept of "focus” or “relevance” of advertisements and help the advertisers to target a specific audience.
  • Owners of pages specify the focus content of their pages through special tags within a page. These tags are not displayed to the information consumer; the tags are used to decide what advertisement can be shown when the page is requested by a consumer.
  • the notion of a contract goes well beyond just marketing rules.
  • the advertising space on the online medium although technically unlimited, is severely restricted by the user's attention span. Placing advertisements on the first page which constitutes the answer to a query gives the advertisements much higher probability to be seen than on later pages of the answer.
  • Prime space will be used in this application to refer to limited advertising space on the first page of the answer to a query. Prime space is, in principle, as attractive as prime time television. Prime space, like prime time, is limited so it may be impossible to show all the relevant advertisements in prime space.
  • the present invention provides guarantees to advertisers through the use of contracts .
  • the contracts provide tools to specify such guarantees and to enforce them.
  • the present invention provides the following types of guarantees (or "contracts") to advertisers:
  • Ratio-based The ad will be shown in prime space no less than a certain percentage of the times a relevant query is made by a searcher.
  • Exclusive or Competitive Ad A is never to be shown in prime space when ad B is shown.
  • Dependent Ad A is to be shown with a predetermined probability when ad B is shown in prime space.
  • Story An ad consisting of several sub-ads will be shown in prime space in sequence to a consumer.
  • Frequency-based The ad will be shown in prime space a certain number of times in a given time period (e.g., 100 times per month) .
  • the contracts may also specify the type of layout used to mix ads together with the data. This may include the layout types, and so forth.
  • the present invention also provides means for determining whether there are any contracts that cannot be satisfied. For example, if the prime space is sufficient to hold only two ads, it is impossible to guarantee 100% ratio for more than two ads. Similarly, if ad A is never to be shown when ad B is shown and if both ad A and ad B are equally relevant according to focus matching, then it is impossible to guarantee ratios above 50% for both ads A and B.
  • the present invention uses algorithms to check for contract consistency to ensure that all contracts that are accepted can be properly satisfied.
  • An advertiser can ask for a certain contract (e.g., 5% relative coverage in prime space) and the present invention will determine whether that contract can be satisfied. If not, the system suggests what coverage it can provide. After the contract is determined to be consistent, the present invention will enforce the contract by displaying advertisements in accordance with the contract.
  • QBA Quality of Service
  • the query asks for a page that has a focus.
  • Ads that are resident in the system are checked to determine which ads can potentially be placed on the page in question. This decision is based on matching the focus of a page with the focus of the ad.
  • the contract enforcement feature of the present invention ensures that the ads that are placed on the page are consistent with the contracts signed by the system with the advertiser.
  • QBA Quality of Service
  • pages on the WWW have a fixed a priori agreed upon area on a page for advertising.
  • the present invention dynamically determines where an advertisement should be placed.
  • the present invention permits owners of pages to be free to organize the layouts of their pages.
  • the page owner makes the final determination of where an advertisement should or should not be placed.
  • the page owner can specify where an advertisement can be placed by placing a special tag ("ad space") on their page. Like the focus tag, this ad space tag is not visible to the consumer. It is a directive to the advertising system that the tag denotes space available for advertising, i.e., the tag can be thought of as a billboard stating "this space available for advertising."
  • the present invention also provides a download delay- time advertising feature.
  • the present invention uses the download delay-time to display ads to the consumer. This will be referred to as down-load delay time advertising.
  • the time that the consumer would have waited for a page to be downloaded is utilized to expose the consumer to ads.
  • the consumer does not experience a delay due to advertising by the present invention. Only the preexisting delay time is utilized by the advertising system.
  • the present invention provides a system and method for advertising on a computer network, comprising a server containing a plurality of advertisements, means for electronically connecting the server to a computer network, and means for selecting and retrieving an advertisement from the server in response to a query entered on the network.
  • the selecting means comprises means for ensuring that a selected advertisement is relevant to the query.
  • a mixer means is provided for combining a retrieved advertisement with a content page returned by the computer network in response to the query.
  • the mixer means comprises a layout manager means for computing an optimum layout of a combined page containing the retrieved advertisement and the content page.
  • the mixer means also comprises a typography manager means for detecting special tags and HTML rules in the content page and for determining which part of the content page the selected advertisement can be displayed on.
  • the content page is provided by a home page dispatcher, a search engine, or a generic HTML content provider in response to the query.
  • a transaction means is provided for permitting a user to make a transaction with the advertiser by interacting with the displayed advertisement.
  • a prime space manager means is provided for controlling when the advertisements contained on the server are selected by the selecting means, the control being based upon respective advertiser contracts associated with each of the advertisements.
  • An ad placement means is provided for placing new advertisements on the server, the ad placement means having means for entering an advertiser contract for each advertisement placed on the server and means for checking a new advertiser contract for consistency with existing advertiser contracts.
  • a local client means is provided for displaying a retrieved advertisement only during a download delay time period in which a user is waiting for a content page to be downloaded in response to the query.
  • a means for refreshing a displayed advertisement after a predetermined time period of inactivity by the user, and a means for replacing a displayed advertisement with a downloaded content page as soon as the content page is received by the client are also provided.
  • the system includes means for calculating a search time estimation for the query, and means for combining a page containing the search time estimation and a retrieved advertisement.
  • the system also includes means for determining a geographic location of a user, and means for selecting an advertisement based upon the user's geographic location.
  • Fig. 1 is a schematic diagram providing a general overview of the main components of the present invention.
  • Fig. 2 is a flow chart showing a process of placing advertisements on content pages provided by yellow page publishers of a computer network.
  • Figs. 3A-3D are screen prints showing page views displayed during various steps in the process of Fig. 2.
  • Fig. 4 is a flow chart showing the process performed by the layout manager of the present invention.
  • Fig. 5 is a flow chart showing the process performed by the parser of the present invention.
  • Fig. 6 is a flow chart showing the process performed by the mixer and ad selector of the present invention.
  • Fig. 7 is a flow chart showing a process of placing targeted advertisements in online pages provided by a home page publisher of a computer network.
  • Figs. 8A-8C are screen prints showing page views displayed during various steps in the process shown in Fig. 7.
  • Figs. 9A and 9B are flow charts showing a billing system process according to the present invention.
  • Fig. 10 is a flow chart showing the steps of an ad placement process according to the present invention.
  • Fig. 11 is a flow chart showing the steps of a page placement process according to the present invention.
  • Fig. 12 is a schematic showing the architecture of a transaction system according to the present invention.
  • Figs. 13A and 13B are screen prints showing page views displayed during various steps in a transaction process of the present invention.
  • Fig. 14 is a flow chart showing the steps of the transaction process according to the present invention.
  • Fig. 15 is a diagram chart showing the process performed by the prime space manager component of the present invention.
  • Fig. 1 provides a general overview or space architecture of the main components of the present invention.
  • the layout manager 10 is primarily responsible for the computation of the layout of a page to be displayed to a client. Other modules of the system compute the necessary data that is to be displayed, as described below. The layout manager 10 then accepts this data from the other modules and computes the optimum layout for the display.
  • the layout manager 10 uses two sub-components to determine the optimum layout; a rule base and a layout data base within the layout manager (collectively shown as the layout rules component 11 in Fig. 1) .
  • the layout data base contains a collection of templates that have been predefined and stored in the layout data base.
  • the rule base contains a collection of rules defined by the user or by the placer of the layout manager to ascertain which layout templates are best under what set of conditions.
  • the layout manager 10 receives the data to display, it invokes various rules in the layout rules to figure out which rule to trigger and, hence, decides on one layout as being the best under the present set of conditions.
  • the variables used in the rules are the amount of data that is to be displayed, the kind of data that is to be displayed, the amount of text, the amount of advertising material, and the size of the various maps and multi-media icons that are to be displayed. Based on these variables, the rules are checked and one or more rules are picked as delineating the best layout that can be found. The layout manager 10 then arbitrarily picks one of the rules that it thinks are the best and picks that layout, inserts the data given to it in the layout template, and gives the final product to the client to be displayed.
  • the variables that are expressed in the rules are based on a number of parameters including the size of the text, the amount of text, the size of the maps, the size of the images, and the size of the advertisement. In principle, there is no limit as to the number of parameters that one can achieve using the layout manager 10.
  • the rules are preferably expressed in a programming language general enough to take any other parameters that one may desire to furnish.
  • the layout rules are constructed based on various parameters.
  • the layout rules are then checked and used to pinpoint the exact template to be used for a certain kind of data situation.
  • the template is then filled in by the layout manager 10 to provide a display to the client.
  • the segmenter 12 will be described.
  • the segmenter 12 is responsible for analyzing an HTML page and for extracting the relevant data from the HTML page.
  • the purpose of the segmenter 12 is that, if the system is given a page constructed by another component or by some other content provider, the segmenter 12 will try to find reasonable places within that page where a certain advertisement could be inserted dynamically.
  • the segmenter 12 uses various rules for finding advertising space within a page, and for preventing the essential layout of the page from being disturbed.
  • the segmenter 12 looks for certain special tags inserted by the designer of the HTML page and replaces those special tags with advertisements or other types of information that it has been given. The segmenter 12 then looks at the page, decides where to insert ads, and provides that information to the layout manager 10.
  • the typography manager 14 is the main input device to the layout manager 10.
  • the typography manager 14 ' s role is to "render" the page. By rendering the page it is meant that the typography manager 14 takes various kinds of input that has to go on a page and decides which part of the information has to go on the page and which part of the information could in fact be deleted.
  • the typography manager 14 is similar in function to a typographer in a traditional publishing situation.
  • the typography manager 14 has the final say in what data gets sent to the layout manager 10.
  • the typography manager 14 also detects special tags and special HTML rules that tell it where the markups of the HTML page are supposed to happen.
  • the layout manager 10 and the typography manager 14 collaborate on coming up with a page. This page in its final form is then passed to the gate 15.
  • the gate 15 transfers a page from the system of the present invention to the client.
  • the gate 15, therefore, provides the gate between the client and the server.
  • the gate 15 gives the page that it wants to display to the WWW Daemon 16 and the Daemon interacts in turn with the client
  • a user requests a particular piece of information through one of the clients 17.
  • the user's request is given to the WWW Daemon 16, which passes the information to the gate 15.
  • the gate 15 decides what piece of information is being requested by the user and finds other relevant pieces of information that can be commingled with what the user has asked.
  • the user for example, might ask the system to see certain car dealers, to find a phone number of a car dealer, or to get a page of a particular magazine.
  • the gate 15 at this point gives the request to the matching rule engine 18 ("MRE") .
  • MRE matching rule engine 18
  • the purpose of the MRE 18 is to look at the content of the user's query and to find a category within its active index SIC 19 that matches the same type. If the user has asked for car dealers, the MRE
  • the MRE 18 at this point then returns to the gate 15 the category index of the user's query. If the user had asked about cars or about family sedans or about sports cars, at this point the MRE 18 would have figured out that the user's interest falls into a certain category. Based on the user's interest category, the system then retrieves the advertisements that are relevant to that category. Thus, the purpose of the MRE 18 is to figure out what the user requested, to place the user's request in a category of a classification system (i.e., the active index SIC 19) and, based on that classification, to retrieve relevant advertisements. At this point there may be several hundred related advertisements retrieved from the category containing the user's request.
  • a classification system i.e., the active index SIC 19
  • prime space manager 20 comes into play.
  • the purpose of the prime space manager 20 is to prioritize the advertisements that are to be shown to the user.
  • the system must determine which five of the ads to show.
  • the operation of the prime space manager 20 is based on a set of contracts that were accepted when the advertisers placed their advertisements with the system.
  • the system supports the following five basic types of contracts : 1.
  • Ad A is to be shown with a predetermined probability when ad B is shown in prime space.
  • Ad A is never to be shown in prime space when ad B is shown.
  • Story An ad consisting of several sub-ads will be shown in prime space in a particular sequence to a consumer.
  • Frequency-based The ad will be shown in prime space a certain number of times in a given time period (e.g., 100 times per month) . Additionally, the contracts may also specify the type of the layout used to mix ads together with the data. This includes the layout types, and so forth. The various contracts used by the system will now be discussed in more detail .
  • the ratio-based contracts are used where an advertiser wants the advertisement to be displayed a certain percentage of the time in prime space. In other words, when a query is received that is related to the business of the advertiser, the advertiser is guaranteed that its advertisement will be on the first screen of information displayed to the user a certain percentage of the time (e.g., 15% of the time) . This percentage is called the coverage guarantee.
  • the ratio-based contract provides a coverage guarantee to the advertiser that its advertisement will be displayed X% of the time for every relevant query.
  • the second kind of contract that the system supports is referred to as a dependent contract.
  • the dependent contract guarantees that one advertiser's ad can be shown in conjunction with another advertiser's ad on the same screen. For example, a travel destination advertisement
  • a credit card advertisement e.g., "Pay for your ticket through VISA”
  • the system can support contracts that satisfy the needs of two or more advertisers at the same time .
  • the third type of contact supported by the system is called an exclusive or competitive contract.
  • This type of contract can be used to guarantee that an advertiser's ad is not shown at the same time or on the same page as a competitor's advertisement.
  • a beverage manufacturer e.g., Coca-Cola
  • a competing beverage manufacturer's e.g., Pepsi's
  • the fourth kind of contract is called a story contract .
  • This type of contract is used to guarantee an advertising package in which a sequence of two or more ads are shown together.
  • the ads can be displayed so that the user sees a first part of the advertisement, then sees a second part of the ad, and then sees a third part of the ad and so on.
  • an advertisement for coffee might consist of a picture on a first page showing somebody drinking a cup of coffee; a picture on a second page showing them putting the coffee cup away; and a picture on a third page identifying the name of the advertiser's product (e.g., "Maxwell House makes a good cup of coffee") .
  • the story contract guarantees that an advertiser's ads will be shown in the form of a story.
  • the story contract is desirable where a group of ads must be shown together in a particular order to make sense.
  • the fifth kind of contract is the frequency-based contract. This contract is used where the advertiser wants to guarantee that its advertisement will be shown a certain number of times over a given time period (e.g., 100 times per week) .
  • an advertiser can enter a story contract which also guarantees that its advertisement will not be shown at the same time as its competitors ads are shown, that its advertisement will be shown at the same time that a related advertisement is shown, and that its advertisement will be shown in prime space a certain percentage of the time.
  • the prime space manager 20 has the responsibility of determining all the possible advertisements that can be shown in conjunction with the information requested by the user. The prime space manager 20 then decides which ads to show based on the particular contracts that have been signed. If a contract has already been entered with an advertiser's competitor, the prime space manager 20 will make sure that it can in fact satisfy the new contract with the advertiser. Thus, the prime space manager 20 dynamically makes a decision of which advertisements to show given the amount and the number of advertisements that it can possibly show. The end result of the prime space manager 20 ' s computation is that the system knows exactly which advertisements can and will be shown to the user. These advertisements are then given to the gate 15.
  • the gate 15 at this point gives the ads to the typography manager 14, and the typography manager 14 determines how best to display the information.
  • the page information then comes back to the gate 15 and is forwarded to the client 17.
  • the advertisement contracts, the active index SIC 19, the layout rules 11, the segmenter 12, the segment rules 13, the layout manager 10, and the typography manager 14 have been explained.
  • a logging module 22 of the system performs extensive logging of what the user has asked, what advertisements were shown, how long the advertisements were shown, and which advertisements were shown to which user.
  • the logging module 22 then stores these logs in a SYS logs database 23.
  • Various scanned reports can be produced and defined using the information in the SYS logs database 23.
  • a local client 24 of the present invention provides a download delay-time advertising feature. Download delay time refers to the delay experienced by most users of computer networks from the moment a page is requested to the time the page is downloaded to their browser.
  • the download delay-time advertising feature utilizes the time that the consumer would have waited for a page to be downloaded to expose the consumer to ads. Once a page (or a subpart of the page) has been downloaded to the consumer's browser and is available to be displayed, the ads are replaced by the page content .
  • the present invention uses this delay time to show advertisements, while taking care that the delay time of the user is not increased by showing the ad.
  • the only time an advertisement is displayed is the time that the user would have had to wait anyway. While the user waits for the page, the user can view the advertisements on the local client 24.
  • the information brokers or content providers shown in Fig. 1 include a home page dispatcher 25, a search engine INFORMIX 26, and a generic HTML 27.
  • a "publisher” can include virtually anyone that provides content to the network.
  • anyone who is a home page owner is a publisher in the category shown as Generic HTML 27.
  • a second kind of publisher is the search engine publisher 26, which includes phone company yellow page providers, such as NYNEX.
  • a third kind of publisher is the so-called home page dispatchers, which include traditional magazines and newspapers, such as Business Week.
  • the present invention distinguishes between these three types of publishers. If the publisher is a home page dispatcher 25, the publisher provides its own content and intersperses the content with certain special tags indicating where ads can and cannot be placed and indicating where the focus of the content is about certain topics . These special tags are then used to trigger certain actions in the system of the present invention relating to the type of content contained on the page and the kinds of advertisements that can be placed on the page.
  • the second kind of publisher that the present invention is used with is the search engine publisher 26.
  • the search engine publisher 26 there are many companies on the WWW that permit users to query their database and then return a set of answers from the database to the user.
  • a telephone company may have a site that allows a user to obtain a set of phone numbers and business names for a particular type of business (i.e., a yellow page directory) .
  • the search engine publisher 26 is distinguished from the home page dispatcher 25 in the sense that the content returned by the search engine publisher 26 does not contain any special tags or meta comments put in by the publisher to define the layout of the content and the ads.
  • the layout manager 10 of the present invention computes the optimum layout based upon the rules and layout templates, as described above. The final result, therefore, is that output is taken from the search engine publisher 26, adorned with certain relevant advertisements, and then shown to the users.
  • the third kind of publisher, the generic HTML publisher 27, includes those publishers that the present invention assumes are people who have designed their own home page, perhaps taking great care to provide a desired appearance. These publishers will probably not have inserted any special tags or meta comments into their home page to guide the advertising system of the present invention.
  • the system of the present invention can either try to find a space in the home page that it thinks is reasonable without violating the desired appearance of the page, or it can insert the advertisement before or after the page. That is, if the segmenter 12 cannot find a suitable place within the page that the generic HTML publisher 27 has already designed, it will place the advertisement on the proceeding or the following page. This is more likely to occur if the owner of the page has not provided any special tags or meta comments, or if copyright concerns prevent the insertion of a certain advertisement within the page.
  • the present invention partitions the publishers (i.e, the information brokers) into three categories: the home page dispatchers 25, the search engine publishers 26, and the generic HTML home page providers 27.
  • the home page dispatchers 25 intersperse their content with special tags or meta comments which helps the present invention in determining where to place the advertisements and what kind of advertisements to place
  • the search engine kind of publishers 26 return unadorned results of queries and the present invention is free to reformat and relay out the set of answers
  • the generic HTML home page publishers 27 are publishers that have meticulously crafted their home pages, usually without special tags or meta comments, so that no guidance is provided to determine an appropriate space for placing an ad.
  • the segmenter 12 which is the module of the present invention whose responsibility is to find a place somewhere on a generic HTML page to place an advertisement, may not succeed in finding a space on a generic HTML home page. In this case, it will either place the advertisement on a proceeding or a following page. Most, if not all, of the publishers on the WWW will fall into one or more of these three categories .
  • LA refers to List of Ads
  • Q refers to the user's query
  • CGI is a standard WWW abbreviation for "common gateway interface”
  • HTML is a standard abbreviation for hypertext markup language
  • Ly is the list from the layout manager 10 to the typography manager 14 that indicates a list of pages that have to be displayed.
  • a flow chart is provided that describes the main flow of the process of placing ads on content pages provided by yellow page publishers, in accordance with the present invention.
  • the process begins at START 30 when the client provides a query to the system.
  • the query depicted is a yellow page query in which a user requests some item of interest, and the publisher is a yellow page publisher
  • the user may submit a query form asking for a listing of all car dealers in Morristown, New Jersey.
  • This query form is evaluated by the box 31 entitled YP
  • the purpose of this evaluation is to determine the type of the query (e.g., is the user interested in cars, a particular geographic region, etc.) .
  • a client may be asking for a certain category of listings, or the client may be asking for a particular vendor.
  • the user could ask for car dealers in Morristown, NJ (i.e., a category of listings) , or the user could ask for Morristown BMW located on South Street in Morristown, NJ (i.e., a particular vendor) .
  • the system determines which of the two types of queries or searches the user has made, as illustrated by box 32 in Fig. 2. If the query is for a certain category, the process will go to the left hand side of the flow chart of Fig. 2, and if the query is for a certain vendor, the process will go to the right hand side of the flow chart of Fig. 2. The left hand side of the flow chart will be explained first.
  • the category search engine 33 After determining the type of query, the category search engine 33 next determines which category best fits the user's request. The user may have asked for "car, " but the category in the yellow page provider's index may in fact say “automobile.” Or, the user may have asked for "spectacles, " and the category in the yellow page provider may be called “optician.” The matching of these variations of terms is performed by the category search engine 33.
  • the advertisement selection process comes into play with the ad selector 34.
  • the ad selector 34 determines what advertisements are best suited to be mixed in with what the user has requested.
  • the content from the category search engine 33 and the ad(s) from the ad selector 34 are then given to a mixer 35.
  • the mixer 35 functions to mix the content coming from the search engine with the ad(s) selected by the ad selector 34.
  • the result is the creation of a page that is of interest to the user. If the user's category was about cars, at this point the ad selector 34 would have presumably found advertisements related to cars and displayed these ads at step 36 to the user.
  • the user at this point can select one or more of the listed or advertised car dealers. This again results in more advertisements being selected by the ad selector 34, as well as the accessing of a vendor search engine 37 provided by the yellow page publisher, and a new page being shown to the user.
  • the system will first do a search time estimation 38 to figure how long it will take to find the piece of information requested by the user.
  • the ad selector 34 will perform a search for the advertisements that are to be shown to the user. As soon as the relevant ads are found by the ad selector 34, the ads are mixed with the search time estimation information and both are displayed to the user.
  • the user is asked for a confirmation of whether to continue with the requested search given the estimated search time.
  • the ad selector 34 will again be accessed, as will be the vendor search engine 41.
  • the first set of ads returned by the ad selector will continue to be displayed to the user for viewing until the search results from the vendor search engine 41 are available.
  • the vender search engine 41 completes the search, it returns the search results to the mixer 35.
  • the ad selector 34 returns a second set of ads to the mixer 35.
  • the mixer 35 mixes the ads with the content provided by the vendor search engine 41 and forwards the combined page to the page display 42.
  • a yellow page inquiry posed by the user is categorized either as a category search or a vendor search.
  • the type of the query is matched with a certain category of ads, the search results and the ads are mixed, and a page is constructed and shown to the user.
  • the system selects and mixes a second set of ads with the content page of the publisher, and another page containing ads is constructed and shown to the user.
  • the "focus" arrows 43 shown in Fig. 2 indicate that a certain focus is associated with each category.
  • the query may have been directed to a category of listings or a particular vendor.
  • FIGs. 3A-3D show four form views labeled successively Form# YP_1, Form* YP_2 , Form* YP_3 , and Form* YP_4. These form views correspond to the references made to the same form numbers in the flow chart of Fig. 2.
  • the user is first presented with a user's screen that looks like Form* YP_1 and the user is prompted to type in a query.
  • the user can type in a query for car dealers in Morristown, NJ. This query will result in a search type as previously described, either as a category or a vendor. In fact, the user can pick one or the other by selecting the appropriate box on Form* YP_1.
  • the system knows whether the search type is category or vendor and, because the user has typed in car dealers, the system knows the focus.
  • the system will show a screen that looks like Form* YP_2. This screen informs the user that it will take approximately 30 seconds for the system to respond to the user and asks the user whether this is okay. If the user wants to proceed, the user clicks on the box labeled "Search it now" and the system begins the search.
  • the system displays a screen that looks like Form* YP_3.
  • This Form* YP_3 shows a list of categories under the heading of car dealers. The user is then asked to make a selection of one of these categories. Simultaneously, the system goes into the ad selection mode and selects and places ads on the Form* YP_3 that is being displayed to the user. In this case the advertisement shown on Form* YP_3 is the Bellcore logo.
  • the system next displays a screen that looks like Form* YP_ .
  • the ads placed on this Form* YP_4 have been selected by the ad selector 34, and the listings on the form have been searched and retrieved by the vendor DB entries search engine 41.
  • the general process for a yellow page search request in the system is that first the user states a query, the result of the query is a set of possible categories that the user wants to see. The system then makes a choice of one category from this list of categories and shows the relevant providers in that category to the user. When the user states a query and the system displays to the user a list of categories, certain advertisements are shown to the user as well.
  • a user If a user requested a category, the user will be shown advertisements and a list of categories that relate to the user's query. If the user requested a particular vendor, the user will be shown advertisements related to the focus of the user's query and an estimation of how long it will take for the system to process the query. In both cases, the user has been shown advertisements and some part of the information and then asked to make a further choice. Once the user makes the further choice, the system again tries to find what the user requested plus what advertisements to show as a part of this process. Thus, whenever the user asks the system to do something, the system will do what the user asks, but at the same time will find advertisements that it can mix in with what the user requested.
  • FIG. 2 illustrates the present invention only in conjunction with a yellow page publisher, similar processes are used with other types of publishers.
  • the process of the present invention for placing ads with home page providers is described below in conjunction with the flow chart of Fig. 7.
  • the layout manager 10 is given the collection of data to be displayed.
  • the layout manager 10 has a collection of rules that it evaluates so that it can return the best layout for each page.
  • the layout manager 10 receives data it reads the parameters of the data for each rule (step 51) and expands on the expand meta template 53.
  • the layout rules describe certain parameters that can be used to determine the best layout to use under a given set of situations.
  • the layout data base is a collection of templates that can be thought of as forms that need to be filled out with certain kinds of data.
  • the layout manager 10 uses the rules to determine which templates to use. Specifically, the layout manager 10 evaluates each and every rule in its rule base to figure out which rule is the best for a given piece of data. The rules are evaluated at step 54 by calculating a meta and a target function cost.
  • the meta template is the template that describes what the layout is about. For example, the template may provide that there are only five places for advertisements in a particular layout.
  • the basic problem that the layout manager 10 is faced with is that are a certain number of advertisements to show and there is a certain amount of user-requested data that has to be shown. This creates a spectrum of objective versus subjective content that has to be evaluated. That is, it must be determined how much subjective content to provide and how much objective content to provide. If the publisher is a yellow page publisher, the layout manager 10 must decide how many telephone listings to display and how much of the page to fill with advertisements. The system could, for example, display only three telephone listings and fill the rest of the page with advertisements, or the system could display twenty telephone listings and only one ad.
  • Each template in the layout database has a set of meta attributes associated therewith indicating the number of advertisements that can be displayed, the amount of content to be displayed, and the cost function associated with the template.
  • the layout manager 10 picks up a rule in the data base, calculates the cost function for each template and stores the template with the minimum cost in a safe place (step 55) . At the end of this computation the layout manager 10 succeeds in finding the minimum cost layout within its data base that it can use for the current data account. It then picks the minimum cost layout as the best layout and returns the best layout (step 52) to the typography manager 14 for display to the user.
  • parser 60 The purpose of the parser 60 is to interpret the meta comments and meta tags inserted on the publishers ' pages . As described above, these are generally pages constructed by magazine or newspaper publishers that have provided special tags in their content for the present system to interpret in a special way. These pages are referred to in Fig. 5 as enhanced HTML or E_HTML 61.
  • the parser 60 first searches for special tags (step 62) in the input E_HTML.
  • tags for focus are tags that tell the system what the focus of the page is or what the context or content of the page is about. For example, a focus tag might indicate that the page is about sports cars, cooking, or travel destinations in the Caribbean.
  • the advertisement space tags indicate a space on the page that is so many pixels by so many pixels and that can be used for advertisements.
  • the parser 60 searches for these special tags and identifies the tag name as either a focus or an advertisement tag (step 63) . If the parser 60 cannot find any special tags, it simply returns from where it was called.
  • the parser 60 finds a focus kind of tag, it extracts and stores the focus words (step 64) . If the parser 60 finds an advertisement kind of tag, it extracts and stores the size value (step 65) . In both cases, the process returns the focus and ads information to another module in the system (step 67) after reaching the end of the page (EOF) 66.
  • the purpose of the mixer 35 is to take publishers ' content and advertisements and combine them together so that the content and the advertisements are mixed on the same page.
  • the mixer 35 is shown receiving two inputs from the publishers: data 50 (which is the content) and E- HTML 61 (which contains the special tags) .
  • the layout manager 10 and parser 60 both form a part of the mixer 35.
  • the data 50 is input to the layout manager 10
  • the E_HTML 61 is input to the E_HTML parser 60, as previously discussed. Both of these sub-modules then determine where the advertisements can be placed on the publisher's page.
  • the advertisement list is then input from the ad selector 34.
  • the ad selector 34 receives a focus input 43, retrieves relevant ads (step 70) , and creates the advertisement list using the prime space manager 20 (step 71) . These advertisements are then placed in the parser 60 and the layout manager 10 (step 72) , as described above.
  • the mixer 35 logs all the essential billing and other user information (step 73) for keeping track of the system's placement of an advertiser's ad. At this point, a refresh tag is inserted (step 74) and the system outputs an HTML page (step 75) .
  • the HTML page output from the mixer 35 has no special tags and can be displayed by any client that can understand HTML.
  • the E_HTML 61 is peculiar to the present invention.
  • the HTML 75 is the standard HTML used on computer networks.
  • the E_HTML 61 is peculiar in the sense that it has the special tags for advertisements and focus, as discussed above.
  • the refresh tag inserted at step 74 is a special tag inserted into every page that is to be displayed. The purpose of this tag is to refresh the page if the user does not take any action for a predetermined period of time.
  • the system will refresh and show a new advertisement in the ad space, while leaving the rest of the page the same. Thus, while the user is viewing the page, the system will not show the same advertisements for more than a predetermined period of time so as to take advantage of the user's limited attention span. This permits the system to effectively run as many ads as possible.
  • the advertisement may change every so often as the user is viewing the same page. If the user is making changes to the page or is going back and forth on the page, then the advertisements will not be changed by the refresh tag function.
  • the timer for the refresh tag function can be specified by the advertiser or determined by the system. As described above, there are five basic types of contracts supported by this system. One type of contract, the ratio-based contract, requires that a certain advertisement has to be shown on the first screen of information or the prime space screen of information for a certain percentage of the time. In order to satisfy this contract, the system has to be able to refresh the prime space screen.
  • the insert refresh tag function 74 ensures that the user will be shown new advertisements and not be subjected to the same advertisement for any great length of time.
  • FIG. 7 a flow chart of the present invention as used with a home page provider will be described.
  • the flow chart of Fig. 7 is somewhat similar to the flow chart of Fig. 2.
  • the flow chart of Fig. 2 shows the process used with yellow page publishers
  • the flow chart of Fig. 7 shows the process used with home page provider publishers.
  • home page providers are publishers that have provided special tags and special focus and advertisement space tags in the meta content supplied to the present system.
  • the user enters a query.
  • the user may enter restaurants or cars as a query.
  • the query has a focus, as described above.
  • the system determines what the focus is and, as described above, the system provides the user with a list of categories that relate to the query. For example, if the user requests restaurants, the user might be shown a list of restaurant types, such as Chinese, American, French, Italian, and so forth.
  • the query entered by the user is evaluated by a query form manager (step 81) to determine the focus of the query.
  • the screen (“Form* 1") illustrated in Fig. 8A is the graphical interface used to enter the query. Form* 1 shows the space (immediately following the phrase "SEARCH FOR") where the user types in the query (in this case "car”) .
  • the result of the query is a list of relevant subcategories for cars, as shown in Fig. 8B ("Form* 2") .
  • the category search engine 33 generates a number of subcategories of the query (e.g., cars) , and the ad selector 34 (Fig. 7) finds certain advertisements that are related to cars.
  • the mixer 35 mixes these two screens to create the display shown as Form* 2 in Fig. 8B (step 82) .
  • step 82 the user is asked to make a further selection. That is, the user is asked to pick one or more of the categories displayed in Form* 2 so that the system will provide more specific information.
  • the user may pick, for example, "new and used car dealers retail” by highlighting that item and clicking on the submit button.
  • the content provider search engine 83 is accessed.
  • the ad selector 34 is directed to find appropriate advertisements for the category "new and used car dealers retail . "
  • the content provider search engine 83 and the ad selector 34 then return their respective outputs to the mixer 35.
  • the mixer 35 then mixes the outputs and produces a list of matching content providers plus the advertisements (step 84) .
  • the combined display at this point is shown as Form* 3 in Fig. 8C.
  • Form* 3 shows a list of different car dealers in the center of the display, and five advertisements along both sides of the display.
  • the user is then further asked to make a selection of a particular dealer (e.g., a Mazda 626 dealer or a Ford Mustang dealer) that the user wants to visit.
  • a particular dealer e.g., a Mazda 626 dealer or a Ford Mustang dealer
  • the user makes the choice, and the choice of the user is given to the content provider dispatcher 85 and the ad selector 34.
  • the ad selector 34 again finds an appropriate advertisement based on the user ' s request .
  • the user can pick a Mazda 626 dealer by clicking on Mazda 626.
  • the ad selector 34 finds advertisements that can be inserted on this page. There may or may not be advertising space on the home page for the Mazda 626 dealer.
  • the system will either insert the ads before or after the page, or the system may decide not to place any advertisements at all.
  • the ad selector 34 will attempt to find suitable advertisements and give these ads to the mixer 35, and the mixer 35 at that point will display the content provider's home page with or without ads.
  • Figs. 8A-8C show three screen displays referred to in Fig. 7 as Form* 1, Form* 2 and Form* 3, respectively.
  • Form* 1 is the first screen that the user sees and in which the user is expected to type in a general query in the typeable space. This results in a second screen (Form* 2) where the user is asked to make a choice from a list of categories. After choosing from the list of categories in the second screen, a third screen (Form* 3) is shown to the user from which the user makes a choice from a list of subcategories.
  • the present invention uses these three screens also to show ads related to the user's requests.
  • Form* 1 shows two ads for the owner of the service provider (e.g., Bellcore in this case) .
  • Form* 2 shows advertisements related to cars because the user typed in cars.
  • Form* 3 shows more car advertisements relating to particular makes of cars because the user asked for retail car dealers.
  • Figs. 9A and 9B show two submodules of the system called the info bank and ad auditing. The purpose of these two modules is to construct log reports of various usages of the present invention.
  • Fig. 9A shows the process flow for the info bank sub odule 90.
  • the purpose of the info bank submodule 90 is to log certain kinds of information during a particular client's session. The logged information is then used to provide advertisers with a description of what advertisements have been shown, what the user has bought after seeing an ad, and so forth.
  • the info bank submodule provides an information bank to show advertisers who has been accessing the system and how successful the ads have been.
  • the screen for the relevant module contains a link called the info bank which the user can select.
  • info bank link When the user clicks on the info bank link, the user is shown the start 91 of the info bank submodule.
  • authentication information such as the user's name and personal identification number (PIN) .
  • PIN personal identification number
  • the system then goes into the authentication mode 93 and verifies whether the user ID and PIN number typed in are valid. If the authentication is successful, the system then searches the transaction log and filter (step 94) and pulls up the appropriate log requested by the user. The user can ask to see all transactions performed by the client or all of the things of a certain type that the user has bought.
  • a report of the results (step 95) is automatically produced for the client and displayed.
  • the submodule for ad auditing 96 has a similar purpose to the info bank submodule.
  • the ad auditor an advertiser that has placed an advertisement with the system is able to go into the system at any point in time and find out who has seen his ad, what was the content of the query when the advertisement was displayed, how many times has the advertisement been displayed, and so forth.
  • the authentication and other process steps are similar to the corresponding steps of the info bank submodule 90.
  • the advertiser is shown a screen with a link for ad auditing.
  • the user clicks on the ad auditing link and is led into the start 97 of the ad auditing module.
  • the advertiser is then asked to type in authentication information (step 98) , which consists of the user name followed by a PIN number. If the PIN and the user name check out and are authenticated by the authentication step 99, the user is then asked to tell the system which advertisement or which subset of advertisements they want to verify or audit (step 100) .
  • step 101 is a log of who has seen the ad, what machine they were using, what time and for how long the advertisement was displayed, and other desired information. All the log information accessed by the info bank and ad auditing submodules is logged in a single database 23 (Fig. 1) . Whether the user is looking for auditing information, transactions, things that the user has bought, or user demographics, the information is all in the same database. However, when a user uses the info bank submodule 90, the user is interested in only certain things, as described above.
  • the reports that are produced by the info bank and ad auditing submodules contain different data.
  • the database is filtered and only the items of interest for a certain report are retained so that the rest of the database need not be used.
  • ad placement process 110 The purpose of ad placement is to allow advertisers to enter their advertisements into the system.
  • the system For entering an ad, the system provides a screen that is shown to the user asking whether the user wants to enter an ad. If the user indicates yes by clicking on that particular choice, the system enters the start 111 of the ad placement mode. At this point the system asks the user for the focus (step 112) .
  • the advertiser may say, for example, that he is in the car business, the car washing business, or that he is a physician, a lawyer or whatever other category name that he wants to give.
  • the user is also asked for an advertisement name at step 112. This is just a name for future reference.
  • the purpose of the focus in step 112, as discussed above, is to prevent an advertisement from being shown that is not relevant to the query at hand.
  • the system of the present invention always shows advertisements that are relevant to what the user has asked for. Therefore, it is of paramount importance that the system know the context of the ad. Thus, when the advertiser places an ad, the system establishes the focus.
  • the present invention describes the world in terms of SIC codes, which is a categorization of approximately 64,000 categories. For example, the system knows that there is a distinction between opera glasses and operating tables. It knows a distinction between lawyers and physicians, as well as the distinction between different kinds of physicians. For example, when the user types in bicycle as the focus, the present invention accesses the category search engine 33 and returns a list of subcategories related to the bicycle business (e.g., bicycle repair, bicycle sales, bicycling as a sport, and so forth) . The user is prompted (step 114) to select one or more of the subcategories from the list that are relevant to the user's ad. The user can also create his or her own categories at this point. The result is that the advertisement is tied to all of the categories selected or created by the user.
  • SIC codes is a categorization of approximately 64,000 categories.
  • the system knows that there is a distinction between opera glasses and operating tables. It knows a distinction between lawyers and physicians, as well as the distinction between different
  • the user may also be asked to provide certain demographic or profile information. For instance, the user can require that his advertisement be shown only to people in age group 30 to 40 or only to people living in Morristown, NJ or any other geographic location.
  • the last item that the user is asked to specify is the contract. The various contracts available to the advertiser are explained above.
  • the system updates the ad info database (step 115) .
  • the system then either accepts the advertisement (step 116) , or the system rejects it.
  • the system might reject the advertisement because the contract that the user wants cannot be satisfied by the system. If the system decides at this point that the user's contract cannot be satisfied, the system displays to the user the next best possible contract that it can satisfy, and the user is then free to either choose that contract or to suggest a different one for consideration by the system.
  • the advertisement becomes a part of the database. Referring to Fig. 11, the flow of a page placement process 120 according to the present invention will be described. The purpose of the page placement process is similar to the ad placement process described above with reference to Fig. 10.
  • the page placement process 120 is distinct from the case where the page resides outside of the present system, either as a part of a search engine or because somebody else owns the home page.
  • the page placement process is used for publishers interested in creating a home page for use in the present system.
  • the page placement process permits publishers to provide a page with meta tags and meta contacts.
  • the page placement process has a starting screen 121 in which one of the menu choices is, "Would you like to place a page?" If the user clicks on that menu choice, a screen is shown to the user asking the user to type in a page name, a page URL (i.e., Universal Resource Locator) , and a focus.
  • the URL is a physical address in terms of the WWW of where the page is actually residing.
  • the focus is a list of key words that the user believes captures the content of the page.
  • the system Upon entry of the focus, page name, and page URL, the system retrieves a list of subcategories from the category search engine 33 that are related to the focus at hand and displays those subcategories to the user (step 124) .
  • the user picks one or more of these subcategories as being relevant to the content of the page.
  • the system is then able to integrate the page into the page database of the present invention (step 125) and return a confirmation of the new home page being linked to the relevant categories (step 126) .
  • the advertisements displayed to users provide a gateway for the client to take further action with the advertiser. That is, the ads are not just there for the user to see, they are interactive.
  • the user can make a transaction with the system.
  • the transaction can be very simple, such as where the user clicks on the advertisement and is displayed all information about that particular product. Or the transaction could be something more complicated, such as where the user actually enters a dialogue with the system and buys the product.
  • the flow chart shown in Fig. 12 describes a typical scenario in which the client has seen a certain advertisement and clicks on that advertisement to actually buy something. In particular, whatever this person is going to buy is going to involve multiple servers.
  • the client is running on Host 1, and the transaction that the client is requesting will involve multiple servers, perhaps geographically distributed.
  • Host 4 is a bank server running at a bank somewhere on the computer network.
  • Host 3 i ⁇ a transaction server for logging and serving as the transaction focal point.
  • Host 2 is a server that accepts the start of the transaction from the client housed at Host 1.
  • a typical transaction where the client 130 sees an advertisement and clicks on the advertisement will now be described by reference to the transaction system architecture diagram shown in Fig. 12 and the screen displays shown in Figs. 13A and 13B.
  • the action of clicking on the advertisement is captured by the gate 131 in Host 2 , and the appropriate information is then displayed to the client by the transaction client 132 in Host 2.
  • the transaction client 132 might prompt the client to enter the type of transaction desired.
  • the transaction client in Host 2 is a client for a transaction server 133 in Host 3.
  • Figs. 13A and 13B in the typical transaction the user first clicks on an item from a list of features offered by the particular publisher (Fig. 13A) , in this case, the item "Internet DMV. " A second screen display (Fig. 13B) then appears in which an advertisement is provided in the middle of the page that says “Division of Motor Vehicles, Morristown, New Jersey, Automatic Renewal of Driving License.” The user may then click on this particular advertisement. At this point a screen is displayed to the user asking the user what type of transaction the user wants to make.
  • the next screen generated by the transaction client at Host 2 would say, for example, "Would you like to renew your license?" or "Would you like to get a new car registration?” If the user says, "I would like to renew my driver's license, " the request is captured by the transaction client 132 at Host 2 and given to the transaction server 133 in Host 3. The transaction server 133 in Host 3 then receives this request for renewal of driving license, extracts the appropriate forms to be filled out from its local database, and provides the forms to the transaction client 132 in Host 2.
  • the transaction client 132 at Host 2 then receives these forms and fills them out with the client's information with help from the client 130 at Host 1.
  • the client's name, address, car ID and other necessary information are filled in for the client automatically.
  • the client 130 is asked to type in a PIN number to start the second part of the transaction. If the client 130 types in the PIN number, the second part of the transaction starts.
  • the second part of the transaction is that the form that has now been filled in and constitutes the request for a renewal of driver's license is sent from the client 130 in Host 1 to the transaction client 132 in Host 2, and from the transaction client 132 in Host 2 to the transaction server 133 in Host 3.
  • Host 3 there are two things that have to happen at Host 3.
  • the particular request for renewal of the driving license has to be processed by making a record that this person has renewed the license and by sending confirmation back to the client.
  • the transaction server 133 must be paid for the renewal of the driving license. In other words, there has to be a monetary fee that has to be exchanged between the client and the DMV.
  • the transaction server 133 will also act as a transaction client 134 to the bank server 135 in Host 4.
  • the transaction client 134 sends a message to the bank server 135 in Host 4 indicating that it has the client's PIN number and the authorization to deduct a certain fee from the client's account.
  • the bank server 135 authenticates that information, logs the information in its own records, and sends back an electronic approval for the debit.
  • the transaction client 134 at that point indicates receipt of the payment to the transaction server 133 in Host 3.
  • the transaction server 133 in Host 3 logs receipt of the money, receipt of the request, and sends a confirmation message through the transaction client 132 and gate 131 back to the client 130 at Host 1.
  • the confirmation might say, for example, "We have received your request; we have deducted $17 from your account; your license is in the mail; here is your new driving license number; thank you very much.”
  • the user starts the process (step 140) by clicking on an appropriate advertisement to ask for a transaction.
  • the system then links the user (step 141) to the transaction server (step 142) .
  • the transaction server then returns the required form to the client (step 143) , and the client fills in the form with the user's profile information.
  • the form is then resubmitted to the transaction server (step 144) .
  • the transaction server accesse ⁇ the bank server (step 145) to determine whether the user has the required money and whether the money can be withdrawn.
  • the transaction server Upon authentication by the bank server, the transaction server receives confirmation from the bank server (step 146) that the user has given a valid account number, and that the bank server has in fact authenticated the user and has authenticated the deduction of the appropriate sums from the bank. The transaction server then makes the deduction and puts the deducted amount into the bank server's log (step 147) . These logs are maintained so that at any time users can find out how much money they have spent or who has bought what things. The transaction server also maintains a transaction server log of the transaction time and any other particulars of the transaction desired (step 148) . Once the logging is complete, the transaction server then generates a confirmation of the transaction which is then displayed to the client (step 149) .
  • prime space manager 20 offers advertisers certain contractual guarantees as to how and when their ads will be shown in prime space (the first screen of information displayed to the user) .
  • These contractual guarantees include frequency-based contracts, ratio or percentage-based contracts, exclusive or competitive contracts, dependent contracts, and story contracts . These contracts can be used alone or combined in a variety of ways, as previously explained.
  • the prime space manager 20 has a prime space algorithm 150 that accepts as inputs the list of relevant ads that are related to the query at hand, the size of the prime space, and the list of all ad contracts. The prime space manager 20 then looks at all the ad contracts and determines which advertisements to show to the user. The prime space manager 20 then updates the contracts (step
  • the prime space manager 20 then provides a list of prime space ads to be shown to the appropriate module. That is, the prime space manager 20 accepts a possibly very long list of advertisements and, based on the contracts that it has, filters the ads to a smaller list containing exactly the number of advertisement ⁇ that it can show based on the size of prime space.
  • prime space algorithms are provided to further illustrate the function and operation of the prime space manager 20 of the present invention. It should be noted that many variations of these algorithms are possible, and that the specific examples provided are for purposes of illustration only.
  • the prime space on a user's terminal means the first screen of data which constitutes the answer to the user's query (plus the relevant advertisements) .
  • advertisers will be assured of "fair" treatment in the sense that their advertisements will be presented to the targeted users in a manner that is commensurate with the fees they were charged. Fairness means equal access as well as controlled access--ensuring that advertisers who pay more are more accessible than those who pay less.
  • Contracts are specifications that indicate the frequency of display of a given advertisement in response to relevant user queries.
  • Frequency-based These contracts specify the number of times a given advertisement is to be shown in response to the relevant user queries .
  • Ratio-based These contracts specify how often a given advertisement is to be shown in the prime space in response to the relevant user queries.
  • An ad A 1 can have a dependent contract of X% with another ad A,. The dependent contract will ensure that ad A ⁇ is shown together with A 3 at least X% of the times ad A-, will be shown.
  • Exclusive An ad A x can have an exclusive contract with another ad A . The exclusive contract will ensure that ad A will not be displayed along with ad A-.
  • WHILE primary space is not filled
  • P A denote the prime space contract value of Node A .
  • D (A, B, X) denote the dependency contract value from advertisement A to advertisement B [A should appear together with advertisement B, X% of the times advertisement B appears) .
  • E (A, B) denote the exclusive contract from advertisement A to advertisement B (note that no value is associated with exclusive contracts) . If a new advertisement A is to be introduced into the system with a prime space contract value of P A l a set of dependency contracts D (A, 1 , x) , . . . , D (A, k, y) and a set of exclusive contracts E (A, 1) , ... , E (A, g) , then for checking the consistency of all the contracts, the following basic checks have to be carried out (more specific checks may be required for specific algorithm ⁇ and their implementation ⁇ ) :
  • the consistency checking algorithm verifies if the new advertisement can be accommodated with the corresponding contract. If the new advertisement can be accommodated, the contract is approved and the system is updated to reflect the new addition, else, the consistency checking algorithm informs the advertiser of the maximal contract that can be accommodated for the new advertisement.
  • the fairness guarantees of an algorithm for the system ensures that the advertisements are displayed in a way that is proportional to the fee charged for that advertisement.
  • the fairness of the frequency-based contract algorithm, ratio-based contract algorithm, and the dependent contract algorithm follows from the probability distribution of the contract values and the random number generator that selects an advertisement with the correct random bias.
  • the probability that the random number generator will generate a number in a particular range is proportional to the length of the range. The larger the range, the more probable that a number corresponding to that range will be selected.
  • Each advertisement is assigned a range of values depending on the fee charged for that advertisement. The more the fee charged, the greater the range assigned to that advertisement. This ensures that the larger the fee, the more frequently (more number of times) that advertisement will be displayed.
  • Exclusive contracts are constraints imposed on the display of advertisements. Fairness in meeting the exclusive contracts means that the contracts are satisfied (no two advertisements that have an exclusive contract are displayed together) .
  • the prime space management algorithm 150 ensures that the exclusive contracts are met, by removing all the advertisements that have a relative contract with an advertisement A, as soon as advertisement A is selected for display in the prime space.
  • Story advertisement is a kind of advertisement in which the advertisement changes dynamically as time progresses.
  • the story advertisement is composed of a sequence of static conventional advertisements, which together tell a story.
  • a story advertisement is displayed using the notion of refresh-insert tags.
  • a refresh tag that is associated with a page denotes the time period after which the story advertisements are refreshed (the next advertisement in the sequence is displayed) . All other static advertisements are unaffected by the refresh timer.
  • the refresh tag can be set by the client or the application.
  • the story advertisement is a logical sequence of a number of advertisements, that will be displayed one at a time at each refresh cycle.

Abstract

A method and system for placing advertisements in a computer network. A server containing a collection of advertisements is placed in electronic communication with the computer network. The advertisements on the server are not tied to any particular page containing information on the network, but rather, are retrieved in response to a query entered by the user (17) and dynamically mixed with the content of the pages returned in response to the query (16). The present invention displays the content pages with focused, targeted advertisements as a part of the page, in accordance with a particular layout. The advertisements can be made to satisfy a set of constraints (19) requested by the advertiser, as well as the constraints of the publisher of the page. The system uses contracts (21) to specify the marketing rules (18) that link ads with specific queries, to permit advertisers to target a specific audience, and to guarantee a certain amount of exposure of the advertisement in prime advertising space. Algorithms are used to check for contract consistency to ensure that all contracts that are accepted can be properly satisfied. The present invention also provides a download delay-time advertising feature.

Description

METHOD AND SYSTEM FOR PLACING ADVERTISEMENTS IN A COMPUTER NETWORK
NOTICE OF COPYRIGHTED MATERIAL IN DISCLOSURE
A portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever.
BACKGROUND OF THE INVENTION Field of the Invention
The present invention relates generally to advertising and, in particular, to a method and system for placing advertisements in a computer network, such as a wide area network or a metropolitan area network.
Description of the Prior Art
A number of information services are currently offered on wide area public networks, such as the Internet. The basic model of these services is that a query is processed and a set of answers is returned. For example, a number of yellow page searchable directories have been developed in which users can query categories of products or services (e.g., new car dealers) and the system returns a set of vendors satisfying the query.
One problem with these services is determining who should subsidize the end user's cost of using the services. One way of providing such a subsidy is through the use of advertisements. Public networks, such as the Internet, are starting to see random use of advertisements. For example, some search engines used in public networks are sponsored by a single vendor or company. The sponsoring vendor or company will often have an advertisement displayed on a user's computer screen during use of the search engine. Other search engines display randomly selected advertisements from a fixed set of advertisements.
As one example, a number of services on the World Wide Web ("WWW") are currently using ad hoc means of advertising. That is, when a user uses certain search engines for conducting a search, the user will be shown advertisements while doing the searching. These advertisements are sometimes referred to as "banner" advertisements because they simulate a banner that the user sees as the user is traveling down a "road" on the computer network. These advertisements are typically tied to a particular search page that the user encounters during the search. The current state of the art is such that when the user uses a search engine, a randomly selected advertisement is shown as if it is part of the search page. For example, the user may enter a search request to see a home page on cooking and, as a part of that page, the existing systems might display an advertisement about cars. This is a problem, of course, because there is no connection made between the content of the advertisements or the message of the advertisements and what the user is actually searching. Another problem with the current state of the art is that there is no guarantee associated with the advertisements that they will be shown a certain number of times or in a certain place on the page with respect to the other pieces of data on that page. For these reasons, the existing systems for placing advertisements on computer networks, such as the Internet, fail to take full advantage of the interactive/demand driven environment of the online medium.
SUMMARY OF THE INVENTION
It is thus an object of the present invention to provide an improved method and system for advertising on a computer network, particularly a wide area or metropolitan area network, which overcomes the above described problems of existing advertising systems.
It is a further object of the present invention to provide an effective advertising medium that anyone with a personal computer can use to advertise on computer networks .
It is a further object of the present invention to provide a method and system for advertising in which advertisements are more informative and provide a direct link to additional information about the advertised product or service or about the advertiser.
It is a further object of the present invention to provide a method and system for advertising on a computer network in which advertisements are more focused and targeted, for example, by user queries and user profiles, including the past history of the user's interactions with the system.
It is a further object of the present invention to provide a method and system for advertising in which new online publishers can be created with little effort.
It is a further object of the present invention to provide a method and system for advertising in which advertisers can be guaranteed that their advertisements will be displayed a certain number of times or in a particular manner or under particular circumstances.
Additional objects, advantages and novel features of the invention will be set forth in the description which follows, and will become apparent to those skilled in the art upon reading this description or practicing the invention. The objects and advantages of the invention may be realized and attained by the appended claims. The present invention provides a new process and system for online advertising. This new process will be referred to throughout this application as query-based advertising ("QBA") . In the QBA process, advertisements are primarily triggered by user queries. User queries, as used herein, refer to requests from an information consumer for one or more pages of information from a computer network. As a result of a query, a user is exposed to advertisements with the present invention, i.e., the query triggers advertisements. In accordance with the present invention, a server containing a collection of advertisements is placed in electronic communication with a computer network. The computer network is preferably a wide area network, such as the Internet, or a metropolitan area network. As used in this application, the phrase "computer network" refers to any public or private data communications network.
The advertisements on the server are not tied to any particular page containing information on the computer network. Rather, the advertisements are contained on the server, distinct from the pages that may or may not later carry the advertisements. The pages by themselves have no advertisements. Thus, the pages are analogous to a newspaper or magazine devoid of any advertisements.
When the user requests a certain page or a certain topic of information, the relevant pages are retrieved from the computer network and shown to the user. The present invention, upon receiving the user's request, retrieves advertisements that are related to the user's action, dynamically mixes the advertisements with the content of the pages according to a particular layout, and displays the pages with focused, targeted advertisements as a part of the page. The advertisements can be made to satisfy a set of constraints requested by the advertiser, as well as the constraints of the publisher of the page, as further discussed below. The advertisement triggering mechanism of the present invention is not random or coincidental, but rather, is prespecified in advance. This specification will be referred to in this application as a contract. A contract specifies the marketing rules that link advertisements with specific queries. For example, a diet soft drink advertisement may be shown when a user asks for a page about exercising equipment. These rules are specified by advertisers implementing the concept of "focus" or "relevance" of advertisements and help the advertisers to target a specific audience. Owners of pages specify the focus content of their pages through special tags within a page. These tags are not displayed to the information consumer; the tags are used to decide what advertisement can be shown when the page is requested by a consumer. The notion of a contract, however, goes well beyond just marketing rules. First of all, the advertising space on the online medium, although technically unlimited, is severely restricted by the user's attention span. Placing advertisements on the first page which constitutes the answer to a query gives the advertisements much higher probability to be seen than on later pages of the answer. This is analogous to a certain extent, to newspaper advertising where advertising on the first page of the newspaper is more expensive than on the last page of the newspaper. Thus, the present invention introduces the concept of prime space as a part of the QBA. Prime space will be used in this application to refer to limited advertising space on the first page of the answer to a query. Prime space is, in principle, as attractive as prime time television. Prime space, like prime time, is limited so it may be impossible to show all the relevant advertisements in prime space.
As a solution to the prime space limitations, the present invention provides guarantees to advertisers through the use of contracts . The contracts provide tools to specify such guarantees and to enforce them. Specifically, the present invention provides the following types of guarantees (or "contracts") to advertisers:
1. Ratio-based: The ad will be shown in prime space no less than a certain percentage of the times a relevant query is made by a searcher. 2. Exclusive or Competitive: Ad A is never to be shown in prime space when ad B is shown. 3. Dependent: Ad A is to be shown with a predetermined probability when ad B is shown in prime space. 4. Story: An ad consisting of several sub-ads will be shown in prime space in sequence to a consumer. 5. Frequency-based: The ad will be shown in prime space a certain number of times in a given time period (e.g., 100 times per month) . Additionally, the contracts may also specify the type of layout used to mix ads together with the data. This may include the layout types, and so forth.
The present invention also provides means for determining whether there are any contracts that cannot be satisfied. For example, if the prime space is sufficient to hold only two ads, it is impossible to guarantee 100% ratio for more than two ads. Similarly, if ad A is never to be shown when ad B is shown and if both ad A and ad B are equally relevant according to focus matching, then it is impossible to guarantee ratios above 50% for both ads A and B.
The present invention uses algorithms to check for contract consistency to ensure that all contracts that are accepted can be properly satisfied. An advertiser can ask for a certain contract (e.g., 5% relative coverage in prime space) and the present invention will determine whether that contract can be satisfied. If not, the system suggests what coverage it can provide. After the contract is determined to be consistent, the present invention will enforce the contract by displaying advertisements in accordance with the contract.
A consequence of QBA is that ads cannot be placed on pages a priori because it is the query that determines what ads are to be placed on a page. This is referred to as dynamic advertising. The query asks for a page that has a focus. Ads that are resident in the system are checked to determine which ads can potentially be placed on the page in question. This decision is based on matching the focus of a page with the focus of the ad. When not all matching ads can be placed on a page because of space limitations, the contract enforcement feature of the present invention ensures that the ads that are placed on the page are consistent with the contracts signed by the system with the advertiser.
Another consequence of QBA is that it must be determined where to place an advertisement on a page. Currently, pages on the WWW have a fixed a priori agreed upon area on a page for advertising. The present invention, however, dynamically determines where an advertisement should be placed. The present invention permits owners of pages to be free to organize the layouts of their pages. The page owner makes the final determination of where an advertisement should or should not be placed. Once the page is organized, the page owner can specify where an advertisement can be placed by placing a special tag ("ad space") on their page. Like the focus tag, this ad space tag is not visible to the consumer. It is a directive to the advertising system that the tag denotes space available for advertising, i.e., the tag can be thought of as a billboard stating "this space available for advertising."
The present invention also provides a download delay- time advertising feature. Most consumers on computer networks, such as the Internet, experience a delay from the moment they ask for a page to the time the page is downloaded to their browser. This delay may be caused, for example, by traffic congestion on the WWW. This delay time will be referred to as download delay-time.
The present invention uses the download delay-time to display ads to the consumer. This will be referred to as down-load delay time advertising. The time that the consumer would have waited for a page to be downloaded is utilized to expose the consumer to ads. Once a page (or a subpart of the page) has been downloaded to the consumer's browser and is available to be displayed, the ads are replaced by the page content. The consumer does not experience a delay due to advertising by the present invention. Only the preexisting delay time is utilized by the advertising system. In summary, the present invention provides a system and method for advertising on a computer network, comprising a server containing a plurality of advertisements, means for electronically connecting the server to a computer network, and means for selecting and retrieving an advertisement from the server in response to a query entered on the network. The selecting means comprises means for ensuring that a selected advertisement is relevant to the query. A mixer means is provided for combining a retrieved advertisement with a content page returned by the computer network in response to the query. The mixer means comprises a layout manager means for computing an optimum layout of a combined page containing the retrieved advertisement and the content page. The mixer means also comprises a typography manager means for detecting special tags and HTML rules in the content page and for determining which part of the content page the selected advertisement can be displayed on. The content page is provided by a home page dispatcher, a search engine, or a generic HTML content provider in response to the query.
A transaction means is provided for permitting a user to make a transaction with the advertiser by interacting with the displayed advertisement. A prime space manager means is provided for controlling when the advertisements contained on the server are selected by the selecting means, the control being based upon respective advertiser contracts associated with each of the advertisements. An ad placement means is provided for placing new advertisements on the server, the ad placement means having means for entering an advertiser contract for each advertisement placed on the server and means for checking a new advertiser contract for consistency with existing advertiser contracts. A local client means is provided for displaying a retrieved advertisement only during a download delay time period in which a user is waiting for a content page to be downloaded in response to the query. A means for refreshing a displayed advertisement after a predetermined time period of inactivity by the user, and a means for replacing a displayed advertisement with a downloaded content page as soon as the content page is received by the client are also provided. The system includes means for calculating a search time estimation for the query, and means for combining a page containing the search time estimation and a retrieved advertisement. The system also includes means for determining a geographic location of a user, and means for selecting an advertisement based upon the user's geographic location.
BRIEF DESCRIPTION OF THE DRAWINGS
The present invention will become more clearly appreciated as the disclosure of the present invention is made with reference to the accompanying drawings, wherein: Fig. 1 is a schematic diagram providing a general overview of the main components of the present invention. Fig. 2 is a flow chart showing a process of placing advertisements on content pages provided by yellow page publishers of a computer network.
Figs. 3A-3D are screen prints showing page views displayed during various steps in the process of Fig. 2.
Fig. 4 is a flow chart showing the process performed by the layout manager of the present invention.
Fig. 5 is a flow chart showing the process performed by the parser of the present invention. Fig. 6 is a flow chart showing the process performed by the mixer and ad selector of the present invention.
Fig. 7 is a flow chart showing a process of placing targeted advertisements in online pages provided by a home page publisher of a computer network. Figs. 8A-8C are screen prints showing page views displayed during various steps in the process shown in Fig. 7.
Figs. 9A and 9B are flow charts showing a billing system process according to the present invention. Fig. 10 is a flow chart showing the steps of an ad placement process according to the present invention.
Fig. 11 is a flow chart showing the steps of a page placement process according to the present invention.
Fig. 12 is a schematic showing the architecture of a transaction system according to the present invention.
Figs. 13A and 13B are screen prints showing page views displayed during various steps in a transaction process of the present invention.
Fig. 14 is a flow chart showing the steps of the transaction process according to the present invention. Fig. 15 is a diagram chart showing the process performed by the prime space manager component of the present invention.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT
Reference will now be made in detail to a preferred embodiment of the invention, an example of which is illustrated in the accompanying drawings.
Fig. 1 provides a general overview or space architecture of the main components of the present invention. The layout manager 10 is primarily responsible for the computation of the layout of a page to be displayed to a client. Other modules of the system compute the necessary data that is to be displayed, as described below. The layout manager 10 then accepts this data from the other modules and computes the optimum layout for the display.
The layout manager 10 uses two sub-components to determine the optimum layout; a rule base and a layout data base within the layout manager (collectively shown as the layout rules component 11 in Fig. 1) . The layout data base contains a collection of templates that have been predefined and stored in the layout data base. The rule base contains a collection of rules defined by the user or by the placer of the layout manager to ascertain which layout templates are best under what set of conditions. When the layout manager 10 receives the data to display, it invokes various rules in the layout rules to figure out which rule to trigger and, hence, decides on one layout as being the best under the present set of conditions.
The variables used in the rules are the amount of data that is to be displayed, the kind of data that is to be displayed, the amount of text, the amount of advertising material, and the size of the various maps and multi-media icons that are to be displayed. Based on these variables, the rules are checked and one or more rules are picked as delineating the best layout that can be found. The layout manager 10 then arbitrarily picks one of the rules that it thinks are the best and picks that layout, inserts the data given to it in the layout template, and gives the final product to the client to be displayed. The variables that are expressed in the rules are based on a number of parameters including the size of the text, the amount of text, the size of the maps, the size of the images, and the size of the advertisement. In principle, there is no limit as to the number of parameters that one can achieve using the layout manager 10. The rules are preferably expressed in a programming language general enough to take any other parameters that one may desire to furnish.
The layout rules are constructed based on various parameters. The layout rules are then checked and used to pinpoint the exact template to be used for a certain kind of data situation. The template is then filled in by the layout manager 10 to provide a display to the client. Next, the segmenter 12 will be described. The segmenter 12 is responsible for analyzing an HTML page and for extracting the relevant data from the HTML page. The purpose of the segmenter 12 is that, if the system is given a page constructed by another component or by some other content provider, the segmenter 12 will try to find reasonable places within that page where a certain advertisement could be inserted dynamically. The segmenter 12 uses various rules for finding advertising space within a page, and for preventing the essential layout of the page from being disturbed. In particular, the segmenter 12 looks for certain special tags inserted by the designer of the HTML page and replaces those special tags with advertisements or other types of information that it has been given. The segmenter 12 then looks at the page, decides where to insert ads, and provides that information to the layout manager 10. In most instances, the typography manager 14 is the main input device to the layout manager 10. One exception to this will be described later. The typography manager 14 ' s role is to "render" the page. By rendering the page it is meant that the typography manager 14 takes various kinds of input that has to go on a page and decides which part of the information has to go on the page and which part of the information could in fact be deleted. Thus, the typography manager 14 is similar in function to a typographer in a traditional publishing situation. The typography manager 14 has the final say in what data gets sent to the layout manager 10. The typography manager 14 also detects special tags and special HTML rules that tell it where the markups of the HTML page are supposed to happen. Ultimately, the layout manager 10 and the typography manager 14 collaborate on coming up with a page. This page in its final form is then passed to the gate 15.
The gate 15 transfers a page from the system of the present invention to the client. The gate 15, therefore, provides the gate between the client and the server. The gate 15 gives the page that it wants to display to the WWW Daemon 16 and the Daemon interacts in turn with the client
17 on the user's side.
The above description has explained how the layout manager 10, the segmenter 12, the typography manager 14, and the gate 15 operate. Before describing in detail the remaining components of the system, an example flow of a request through the system will be explained.
Initially, a user requests a particular piece of information through one of the clients 17. The user's request is given to the WWW Daemon 16, which passes the information to the gate 15. The gate 15 at this point decides what piece of information is being requested by the user and finds other relevant pieces of information that can be commingled with what the user has asked. The user, for example, might ask the system to see certain car dealers, to find a phone number of a car dealer, or to get a page of a particular magazine.
The gate 15 at this point gives the request to the matching rule engine 18 ("MRE") . The purpose of the MRE 18 is to look at the content of the user's query and to find a category within its active index SIC 19 that matches the same type. If the user has asked for car dealers, the MRE
18 invokes its rules to determine that car dealers are part of a class of things relating to transportation. Based on the classification determined by the MRE 18, the system now knows that the user is asking about cars or about transportation or about whatever else that the user might be interested in.
The MRE 18 at this point then returns to the gate 15 the category index of the user's query. If the user had asked about cars or about family sedans or about sports cars, at this point the MRE 18 would have figured out that the user's interest falls into a certain category. Based on the user's interest category, the system then retrieves the advertisements that are relevant to that category. Thus, the purpose of the MRE 18 is to figure out what the user requested, to place the user's request in a category of a classification system (i.e., the active index SIC 19) and, based on that classification, to retrieve relevant advertisements. At this point there may be several hundred related advertisements retrieved from the category containing the user's request. This creates a problem in that there will be many more advertisements related to the user's request than can possibly be shown to the user on the first page of information. At this point, the prime space manager 20 comes into play. The purpose of the prime space manager 20 is to prioritize the advertisements that are to be shown to the user.
For example, if there is only room for five advertisements and the MRE 18 returns a list of 500 possible advertisements to show, the system must determine which five of the ads to show. The operation of the prime space manager 20 is based on a set of contracts that were accepted when the advertisers placed their advertisements with the system. The system supports the following five basic types of contracts : 1. Ratio-based: The ad will be shown in prime space no less than a certain percentage of the times a relevant query is made by a searcher.
2. Dependent: Ad A is to be shown with a predetermined probability when ad B is shown in prime space.
3. Exclusive or Competitive: Ad A is never to be shown in prime space when ad B is shown. 4. Story: An ad consisting of several sub-ads will be shown in prime space in a particular sequence to a consumer.
5. Frequency-based: The ad will be shown in prime space a certain number of times in a given time period (e.g., 100 times per month) . Additionally, the contracts may also specify the type of the layout used to mix ads together with the data. This includes the layout types, and so forth. The various contracts used by the system will now be discussed in more detail .
The ratio-based contracts are used where an advertiser wants the advertisement to be displayed a certain percentage of the time in prime space. In other words, when a query is received that is related to the business of the advertiser, the advertiser is guaranteed that its advertisement will be on the first screen of information displayed to the user a certain percentage of the time (e.g., 15% of the time) . This percentage is called the coverage guarantee. The ratio-based contract provides a coverage guarantee to the advertiser that its advertisement will be displayed X% of the time for every relevant query.
This guarantee is probablistic in nature, so that over the long run of the system, the probability will converge to the percentage that the advertiser has requested.
The second kind of contract that the system supports is referred to as a dependent contract. The dependent contract guarantees that one advertiser's ad can be shown in conjunction with another advertiser's ad on the same screen. For example, a travel destination advertisement
(e.g., "Come to the Bahamas") can be shown on the first screen of information together with a credit card advertisement (e.g., "Pay for your ticket through VISA") . With this type of contract, the system can support contracts that satisfy the needs of two or more advertisers at the same time . The third type of contact supported by the system is called an exclusive or competitive contract. This type of contract can be used to guarantee that an advertiser's ad is not shown at the same time or on the same page as a competitor's advertisement. For example, a beverage manufacturer (e.g., Coca-Cola) can prevent a competing beverage manufacturer's (e.g., Pepsi's) ads to be shown at the same time as its own ads and vice versa.
The fourth kind of contract is called a story contract . This type of contract is used to guarantee an advertising package in which a sequence of two or more ads are shown together. The ads can be displayed so that the user sees a first part of the advertisement, then sees a second part of the ad, and then sees a third part of the ad and so on. For example, an advertisement for coffee might consist of a picture on a first page showing somebody drinking a cup of coffee; a picture on a second page showing them putting the coffee cup away; and a picture on a third page identifying the name of the advertiser's product (e.g., "Maxwell House makes a good cup of coffee") . Thus, the story contract guarantees that an advertiser's ads will be shown in the form of a story. The story contract is desirable where a group of ads must be shown together in a particular order to make sense.
The fifth kind of contract is the frequency-based contract. This contract is used where the advertiser wants to guarantee that its advertisement will be shown a certain number of times over a given time period (e.g., 100 times per week) .
Several different combinations of the above-described types of contracts can also be used. For example, an advertiser can enter a story contract which also guarantees that its advertisement will not be shown at the same time as its competitors ads are shown, that its advertisement will be shown at the same time that a related advertisement is shown, and that its advertisement will be shown in prime space a certain percentage of the time.
The prime space manager 20 has the responsibility of determining all the possible advertisements that can be shown in conjunction with the information requested by the user. The prime space manager 20 then decides which ads to show based on the particular contracts that have been signed. If a contract has already been entered with an advertiser's competitor, the prime space manager 20 will make sure that it can in fact satisfy the new contract with the advertiser. Thus, the prime space manager 20 dynamically makes a decision of which advertisements to show given the amount and the number of advertisements that it can possibly show. The end result of the prime space manager 20 ' s computation is that the system knows exactly which advertisements can and will be shown to the user. These advertisements are then given to the gate 15.
The gate 15 at this point gives the ads to the typography manager 14, and the typography manager 14 determines how best to display the information. The page information then comes back to the gate 15 and is forwarded to the client 17. In the above description of the present invention, the advertisement contracts, the active index SIC 19, the layout rules 11, the segmenter 12, the segment rules 13, the layout manager 10, and the typography manager 14 have been explained.
During the computation of the advertisements and all the other computations that the system of the present invention performs, a logging module 22 of the system performs extensive logging of what the user has asked, what advertisements were shown, how long the advertisements were shown, and which advertisements were shown to which user. The logging module 22 then stores these logs in a SYS logs database 23. Various scanned reports can be produced and defined using the information in the SYS logs database 23. A local client 24 of the present invention provides a download delay-time advertising feature. Download delay time refers to the delay experienced by most users of computer networks from the moment a page is requested to the time the page is downloaded to their browser. The download delay-time advertising feature utilizes the time that the consumer would have waited for a page to be downloaded to expose the consumer to ads. Once a page (or a subpart of the page) has been downloaded to the consumer's browser and is available to be displayed, the ads are replaced by the page content .
In most cases, when a user asks for a page there is a considerable download delay time. The user must wait for the page after the request for a few seconds or, in certain cases, a few minutes before the page is finally downloaded by the network. The present invention uses this delay time to show advertisements, while taking care that the delay time of the user is not increased by showing the ad. Thus, the only time an advertisement is displayed is the time that the user would have had to wait anyway. While the user waits for the page, the user can view the advertisements on the local client 24.
The information brokers or content providers shown in Fig. 1 include a home page dispatcher 25, a search engine INFORMIX 26, and a generic HTML 27. For purposes of the present invention, it is assumed that there are three broad classes of publishers that can utilize the advertising features of the present invention. A "publisher" can include virtually anyone that provides content to the network. For example, anyone who is a home page owner is a publisher in the category shown as Generic HTML 27. A second kind of publisher is the search engine publisher 26, which includes phone company yellow page providers, such as NYNEX. And a third kind of publisher is the so-called home page dispatchers, which include traditional magazines and newspapers, such as Business Week.
The present invention distinguishes between these three types of publishers. If the publisher is a home page dispatcher 25, the publisher provides its own content and intersperses the content with certain special tags indicating where ads can and cannot be placed and indicating where the focus of the content is about certain topics . These special tags are then used to trigger certain actions in the system of the present invention relating to the type of content contained on the page and the kinds of advertisements that can be placed on the page.
The second kind of publisher that the present invention is used with is the search engine publisher 26. Currently, there are many companies on the WWW that permit users to query their database and then return a set of answers from the database to the user. For example, a telephone company may have a site that allows a user to obtain a set of phone numbers and business names for a particular type of business (i.e., a yellow page directory) .
For purposes of the present invention, the search engine publisher 26 is distinguished from the home page dispatcher 25 in the sense that the content returned by the search engine publisher 26 does not contain any special tags or meta comments put in by the publisher to define the layout of the content and the ads. In this case, the layout manager 10 of the present invention computes the optimum layout based upon the rules and layout templates, as described above. The final result, therefore, is that output is taken from the search engine publisher 26, adorned with certain relevant advertisements, and then shown to the users.
The third kind of publisher, the generic HTML publisher 27, includes those publishers that the present invention assumes are people who have designed their own home page, perhaps taking great care to provide a desired appearance. These publishers will probably not have inserted any special tags or meta comments into their home page to guide the advertising system of the present invention. In this case, the system of the present invention can either try to find a space in the home page that it thinks is reasonable without violating the desired appearance of the page, or it can insert the advertisement before or after the page. That is, if the segmenter 12 cannot find a suitable place within the page that the generic HTML publisher 27 has already designed, it will place the advertisement on the proceeding or the following page. This is more likely to occur if the owner of the page has not provided any special tags or meta comments, or if copyright concerns prevent the insertion of a certain advertisement within the page.
In summary, the present invention partitions the publishers (i.e, the information brokers) into three categories: the home page dispatchers 25, the search engine publishers 26, and the generic HTML home page providers 27.
The distinction between the three is that the home page dispatchers 25 intersperse their content with special tags or meta comments which helps the present invention in determining where to place the advertisements and what kind of advertisements to place, the search engine kind of publishers 26 return unadorned results of queries and the present invention is free to reformat and relay out the set of answers, and the generic HTML home page publishers 27 are publishers that have meticulously crafted their home pages, usually without special tags or meta comments, so that no guidance is provided to determine an appropriate space for placing an ad.
The segmenter 12, which is the module of the present invention whose responsibility is to find a place somewhere on a generic HTML page to place an advertisement, may not succeed in finding a space on a generic HTML home page. In this case, it will either place the advertisement on a proceeding or a following page. Most, if not all, of the publishers on the WWW will fall into one or more of these three categories .
In Fig. 1, the acronym LA refers to List of Ads, Q refers to the user's query, CGI is a standard WWW abbreviation for "common gateway interface, " HTML is a standard abbreviation for hypertext markup language, and Ly is the list from the layout manager 10 to the typography manager 14 that indicates a list of pages that have to be displayed.
Referring to Fig. 2, a flow chart is provided that describes the main flow of the process of placing ads on content pages provided by yellow page publishers, in accordance with the present invention. The process begins at START 30 when the client provides a query to the system.
For purposes of illustration, the query depicted is a yellow page query in which a user requests some item of interest, and the publisher is a yellow page publisher
(please refer to the previous discussion for a description of the three kinds of publishers) .
For example, the user may submit a query form asking for a listing of all car dealers in Morristown, New Jersey. This query form is evaluated by the box 31 entitled YP
QUERY FORM. The purpose of this evaluation is to determine the type of the query (e.g., is the user interested in cars, a particular geographic region, etc.) .
In using a yellow page publisher there are two broad distinctions for a query. A client may be asking for a certain category of listings, or the client may be asking for a particular vendor. For example, the user could ask for car dealers in Morristown, NJ (i.e., a category of listings) , or the user could ask for Morristown BMW located on South Street in Morristown, NJ (i.e., a particular vendor) . The system determines which of the two types of queries or searches the user has made, as illustrated by box 32 in Fig. 2. If the query is for a certain category, the process will go to the left hand side of the flow chart of Fig. 2, and if the query is for a certain vendor, the process will go to the right hand side of the flow chart of Fig. 2. The left hand side of the flow chart will be explained first.
After determining the type of query, the category search engine 33 next determines which category best fits the user's request. The user may have asked for "car, " but the category in the yellow page provider's index may in fact say "automobile." Or, the user may have asked for "spectacles, " and the category in the yellow page provider may be called "optician." The matching of these variations of terms is performed by the category search engine 33.
Once it has been determined which category the user's request falls into, the advertisement selection process comes into play with the ad selector 34. The ad selector 34 determines what advertisements are best suited to be mixed in with what the user has requested. The content from the category search engine 33 and the ad(s) from the ad selector 34 are then given to a mixer 35. The mixer 35 functions to mix the content coming from the search engine with the ad(s) selected by the ad selector 34. The result is the creation of a page that is of interest to the user. If the user's category was about cars, at this point the ad selector 34 would have presumably found advertisements related to cars and displayed these ads at step 36 to the user. The user at this point can select one or more of the listed or advertised car dealers. This again results in more advertisements being selected by the ad selector 34, as well as the accessing of a vendor search engine 37 provided by the yellow page publisher, and a new page being shown to the user. Referring to the right hand side of Fig. 2, if the user requests a particular vendor, the system will first do a search time estimation 38 to figure how long it will take to find the piece of information requested by the user. At the same time, the ad selector 34 will perform a search for the advertisements that are to be shown to the user. As soon as the relevant ads are found by the ad selector 34, the ads are mixed with the search time estimation information and both are displayed to the user. At this point 40 in the process, the user is asked for a confirmation of whether to continue with the requested search given the estimated search time. Upon receiving confirmation from the user, the ad selector 34 will again be accessed, as will be the vendor search engine 41. The first set of ads returned by the ad selector will continue to be displayed to the user for viewing until the search results from the vendor search engine 41 are available. When the vender search engine 41 completes the search, it returns the search results to the mixer 35. Similarly, the ad selector 34 returns a second set of ads to the mixer 35. The mixer 35 mixes the ads with the content provided by the vendor search engine 41 and forwards the combined page to the page display 42.
The result of this process is that a yellow page inquiry posed by the user is categorized either as a category search or a vendor search. In both cases, the type of the query is matched with a certain category of ads, the search results and the ads are mixed, and a page is constructed and shown to the user. Upon further input from the user, the system selects and mixes a second set of ads with the content page of the publisher, and another page containing ads is constructed and shown to the user. The "focus" arrows 43 shown in Fig. 2 indicate that a certain focus is associated with each category. The query may have been directed to a category of listings or a particular vendor. In both cases there is a "focus" associated with the content of the query (e.g., automobiles, physicians, lawyers, etc.) . In addition, there may be a focus associated with the geographic location of the user to permit advertisers to target users in particular geographic regions . The focus process plays a major part in the present invention. No advertisements are shown unless it can be determined that the advertisements are in some way focused or related to the content of what the user requested.
Referring to Figs. 3A-3D, the page views displayed to the user during the process of Fig. 2 will be described. Figs. 3A-3D show four form views labeled successively Form# YP_1, Form* YP_2 , Form* YP_3 , and Form* YP_4. These form views correspond to the references made to the same form numbers in the flow chart of Fig. 2.
The user is first presented with a user's screen that looks like Form* YP_1 and the user is prompted to type in a query. For example, the user can type in a query for car dealers in Morristown, NJ. This query will result in a search type as previously described, either as a category or a vendor. In fact, the user can pick one or the other by selecting the appropriate box on Form* YP_1. At thiε point, the system knows whether the search type is category or vendor and, because the user has typed in car dealers, the system knows the focus.
At this point, if the search type is vendor, the system will show a screen that looks like Form* YP_2. This screen informs the user that it will take approximately 30 seconds for the system to respond to the user and asks the user whether this is okay. If the user wants to proceed, the user clicks on the box labeled "Search it now" and the system begins the search.
If the search type is category, the system displays a screen that looks like Form* YP_3. This Form* YP_3 shows a list of categories under the heading of car dealers. The user is then asked to make a selection of one of these categories. Simultaneously, the system goes into the ad selection mode and selects and places ads on the Form* YP_3 that is being displayed to the user. In this case the advertisement shown on Form* YP_3 is the Bellcore logo.
The user then selects one of the subcategories being displayed and clicks on the box "Search it now."
The system next displays a screen that looks like Form* YP_ . The ads placed on this Form* YP_4 have been selected by the ad selector 34, and the listings on the form have been searched and retrieved by the vendor DB entries search engine 41.
In summary, the general process for a yellow page search request in the system is that first the user states a query, the result of the query is a set of possible categories that the user wants to see. The system then makes a choice of one category from this list of categories and shows the relevant providers in that category to the user. When the user states a query and the system displays to the user a list of categories, certain advertisements are shown to the user as well. This is the top half of the flow chart of Fig. 2 where the category search engine 33 or search time estimator 38 and the ad selector 34 provide the two components to the mixer 35 and the mixer 35 comes up with a page containing both an advertisement and a list of categories or the search time estimation of how long it will take. If a user requested a category, the user will be shown advertisements and a list of categories that relate to the user's query. If the user requested a particular vendor, the user will be shown advertisements related to the focus of the user's query and an estimation of how long it will take for the system to process the query. In both cases, the user has been shown advertisements and some part of the information and then asked to make a further choice. Once the user makes the further choice, the system again tries to find what the user requested plus what advertisements to show as a part of this process. Thus, whenever the user asks the system to do something, the system will do what the user asks, but at the same time will find advertisements that it can mix in with what the user requested.
Although the flow chart of Fig. 2 illustrates the present invention only in conjunction with a yellow page publisher, similar processes are used with other types of publishers. The process of the present invention for placing ads with home page providers is described below in conjunction with the flow chart of Fig. 7.
Referring now to Fig. 4, the layout manager 10 of the present invention will be described in further detail. At step 50, the layout manager 10 is given the collection of data to be displayed. The layout manager 10 has a collection of rules that it evaluates so that it can return the best layout for each page. When the layout manager 10 receives data it reads the parameters of the data for each rule (step 51) and expands on the expand meta template 53. There are two main components of the layout manager
10, as previously discussed -- a layout data base and a layout rule base. The layout rules describe certain parameters that can be used to determine the best layout to use under a given set of situations. The layout data base is a collection of templates that can be thought of as forms that need to be filled out with certain kinds of data.
When the layout manager 10 is given a piece of data, it uses the rules to determine which templates to use. Specifically, the layout manager 10 evaluates each and every rule in its rule base to figure out which rule is the best for a given piece of data. The rules are evaluated at step 54 by calculating a meta and a target function cost. The meta template is the template that describes what the layout is about. For example, the template may provide that there are only five places for advertisements in a particular layout.
There is a cost associated with each kind of layout. The basic problem that the layout manager 10 is faced with is that are a certain number of advertisements to show and there is a certain amount of user-requested data that has to be shown. This creates a spectrum of objective versus subjective content that has to be evaluated. That is, it must be determined how much subjective content to provide and how much objective content to provide. If the publisher is a yellow page publisher, the layout manager 10 must decide how many telephone listings to display and how much of the page to fill with advertisements. The system could, for example, display only three telephone listings and fill the rest of the page with advertisements, or the system could display twenty telephone listings and only one ad. Each template in the layout database has a set of meta attributes associated therewith indicating the number of advertisements that can be displayed, the amount of content to be displayed, and the cost function associated with the template.
In summary, the layout manager 10 picks up a rule in the data base, calculates the cost function for each template and stores the template with the minimum cost in a safe place (step 55) . At the end of this computation the layout manager 10 succeeds in finding the minimum cost layout within its data base that it can use for the current data account. It then picks the minimum cost layout as the best layout and returns the best layout (step 52) to the typography manager 14 for display to the user.
Referring to Fig. 5, a flow chart of a parser 60 of the present invention will be described. The purpose of the parser 60 is to interpret the meta comments and meta tags inserted on the publishers ' pages . As described above, these are generally pages constructed by magazine or newspaper publishers that have provided special tags in their content for the present system to interpret in a special way. These pages are referred to in Fig. 5 as enhanced HTML or E_HTML 61.
The parser 60 first searches for special tags (step 62) in the input E_HTML. There are two kinds of special tags: tags for focus and tags for advertisement space. Tags for focus are tags that tell the system what the focus of the page is or what the context or content of the page is about. For example, a focus tag might indicate that the page is about sports cars, cooking, or travel destinations in the Caribbean. The advertisement space tags, on the other hand, indicate a space on the page that is so many pixels by so many pixels and that can be used for advertisements. The parser 60 searches for these special tags and identifies the tag name as either a focus or an advertisement tag (step 63) . If the parser 60 cannot find any special tags, it simply returns from where it was called.
If the parser 60 finds a focus kind of tag, it extracts and stores the focus words (step 64) . If the parser 60 finds an advertisement kind of tag, it extracts and stores the size value (step 65) . In both cases, the process returns the focus and ads information to another module in the system (step 67) after reaching the end of the page (EOF) 66.
Referring to Fig. 6, a process flow of the mixer and ad selector will be described. The purpose of the mixer 35 (as previously described in reference to Fig. 2) is to take publishers ' content and advertisements and combine them together so that the content and the advertisements are mixed on the same page.
In Fig. 6, the mixer 35 is shown receiving two inputs from the publishers: data 50 (which is the content) and E- HTML 61 (which contains the special tags) . The layout manager 10 and parser 60 both form a part of the mixer 35. The data 50 is input to the layout manager 10, and the E_HTML 61 is input to the E_HTML parser 60, as previously discussed. Both of these sub-modules then determine where the advertisements can be placed on the publisher's page. The advertisement list is then input from the ad selector 34. The ad selector 34 receives a focus input 43, retrieves relevant ads (step 70) , and creates the advertisement list using the prime space manager 20 (step 71) . These advertisements are then placed in the parser 60 and the layout manager 10 (step 72) , as described above.
The mixer 35 then logs all the essential billing and other user information (step 73) for keeping track of the system's placement of an advertiser's ad. At this point, a refresh tag is inserted (step 74) and the system outputs an HTML page (step 75) .
The HTML page output from the mixer 35 has no special tags and can be displayed by any client that can understand HTML. The E_HTML 61 is peculiar to the present invention.
The HTML 75 is the standard HTML used on computer networks. The E_HTML 61 is peculiar in the sense that it has the special tags for advertisements and focus, as discussed above.
The refresh tag inserted at step 74 is a special tag inserted into every page that is to be displayed. The purpose of this tag is to refresh the page if the user does not take any action for a predetermined period of time. The system will refresh and show a new advertisement in the ad space, while leaving the rest of the page the same. Thus, while the user is viewing the page, the system will not show the same advertisements for more than a predetermined period of time so as to take advantage of the user's limited attention span. This permits the system to effectively run as many ads as possible.
For example, while a user is reading an online magazine page, the advertisement may change every so often as the user is viewing the same page. If the user is making changes to the page or is going back and forth on the page, then the advertisements will not be changed by the refresh tag function. The timer for the refresh tag function can be specified by the advertiser or determined by the system. As described above, there are five basic types of contracts supported by this system. One type of contract, the ratio-based contract, requires that a certain advertisement has to be shown on the first screen of information or the prime space screen of information for a certain percentage of the time. In order to satisfy this contract, the system has to be able to refresh the prime space screen. Otherwise, once an advertisement was placed on a user's screen it would remain on the screen the entire time that the user is viewing the screen. The insert refresh tag function 74 ensures that the user will be shown new advertisements and not be subjected to the same advertisement for any great length of time.
Referring to Fig. 7, a flow chart of the present invention as used with a home page provider will be described. The flow chart of Fig. 7 is somewhat similar to the flow chart of Fig. 2. However, while the flow chart of Fig. 2 shows the process used with yellow page publishers, the flow chart of Fig. 7 shows the process used with home page provider publishers. As described above, home page providers are publishers that have provided special tags and special focus and advertisement space tags in the meta content supplied to the present system.
To start (step 80), the user enters a query. For example, the user may enter restaurants or cars as a query.
The query has a focus, as described above. The system determines what the focus is and, as described above, the system provides the user with a list of categories that relate to the query. For example, if the user requests restaurants, the user might be shown a list of restaurant types, such as Chinese, American, French, Italian, and so forth. The query entered by the user is evaluated by a query form manager (step 81) to determine the focus of the query. The screen ("Form* 1") illustrated in Fig. 8A is the graphical interface used to enter the query. Form* 1 shows the space (immediately following the phrase "SEARCH FOR") where the user types in the query (in this case "car") . The result of the query is a list of relevant subcategories for cars, as shown in Fig. 8B ("Form* 2") .
Referring again to Fig. 7, the category search engine 33 generates a number of subcategories of the query (e.g., cars) , and the ad selector 34 (Fig. 7) finds certain advertisements that are related to cars. The mixer 35 mixes these two screens to create the display shown as Form* 2 in Fig. 8B (step 82) .
At this point (step 82) the user is asked to make a further selection. That is, the user is asked to pick one or more of the categories displayed in Form* 2 so that the system will provide more specific information. The user may pick, for example, "new and used car dealers retail" by highlighting that item and clicking on the submit button. Upon clicking the submit button, the content provider search engine 83 is accessed. At the same time the ad selector 34 is directed to find appropriate advertisements for the category "new and used car dealers retail . "
The content provider search engine 83 and the ad selector 34 then return their respective outputs to the mixer 35. The mixer 35 then mixes the outputs and produces a list of matching content providers plus the advertisements (step 84) . The combined display at this point is shown as Form* 3 in Fig. 8C. Form* 3 shows a list of different car dealers in the center of the display, and five advertisements along both sides of the display.
The user is then further asked to make a selection of a particular dealer (e.g., a Mazda 626 dealer or a Ford Mustang dealer) that the user wants to visit. The user makes the choice, and the choice of the user is given to the content provider dispatcher 85 and the ad selector 34. As the content provider dispatcher 85 is retrieving the requested home page, the ad selector 34 again finds an appropriate advertisement based on the user ' s request .
For example, the user can pick a Mazda 626 dealer by clicking on Mazda 626. As the page for a Mazda 626 dealer is being retrieved, the ad selector 34 finds advertisements that can be inserted on this page. There may or may not be advertising space on the home page for the Mazda 626 dealer.
If there are no spaces on the home page for the system to place ads, the system will either insert the ads before or after the page, or the system may decide not to place any advertisements at all. In any case, for any home pages requested, the ad selector 34 will attempt to find suitable advertisements and give these ads to the mixer 35, and the mixer 35 at that point will display the content provider's home page with or without ads.
In summary, Figs. 8A-8C show three screen displays referred to in Fig. 7 as Form* 1, Form* 2 and Form* 3, respectively. Form* 1 is the first screen that the user sees and in which the user is expected to type in a general query in the typeable space. This results in a second screen (Form* 2) where the user is asked to make a choice from a list of categories. After choosing from the list of categories in the second screen, a third screen (Form* 3) is shown to the user from which the user makes a choice from a list of subcategories. The present invention uses these three screens also to show ads related to the user's requests. Form* 1 shows two ads for the owner of the service provider (e.g., Bellcore in this case) . Form* 2 shows advertisements related to cars because the user typed in cars. Form* 3 shows more car advertisements relating to particular makes of cars because the user asked for retail car dealers.
Referring to Figs. 9A and 9B, a description of the billing system of the present invention will be provided. Figs. 9A and 9B show two submodules of the system called the info bank and ad auditing. The purpose of these two modules is to construct log reports of various usages of the present invention.
Fig. 9A shows the process flow for the info bank sub odule 90. The purpose of the info bank submodule 90 is to log certain kinds of information during a particular client's session. The logged information is then used to provide advertisers with a description of what advertisements have been shown, what the user has bought after seeing an ad, and so forth. Thus, the info bank submodule provides an information bank to show advertisers who has been accessing the system and how successful the ads have been.
The screen for the relevant module contains a link called the info bank which the user can select. When the user clicks on the info bank link, the user is shown the start 91 of the info bank submodule. At this point the user is asked for authentication information (step 92) , such as the user's name and personal identification number (PIN) . The system then goes into the authentication mode 93 and verifies whether the user ID and PIN number typed in are valid. If the authentication is successful, the system then searches the transaction log and filter (step 94) and pulls up the appropriate log requested by the user. The user can ask to see all transactions performed by the client or all of the things of a certain type that the user has bought. A report of the results (step 95) is automatically produced for the client and displayed. The submodule for ad auditing 96 has a similar purpose to the info bank submodule. With the ad auditor, an advertiser that has placed an advertisement with the system is able to go into the system at any point in time and find out who has seen his ad, what was the content of the query when the advertisement was displayed, how many times has the advertisement been displayed, and so forth. The authentication and other process steps are similar to the corresponding steps of the info bank submodule 90.
More specifically, in order to use the ad auditing submodule 96 the advertiser is shown a screen with a link for ad auditing. The user clicks on the ad auditing link and is led into the start 97 of the ad auditing module. The advertiser is then asked to type in authentication information (step 98) , which consists of the user name followed by a PIN number. If the PIN and the user name check out and are authenticated by the authentication step 99, the user is then asked to tell the system which advertisement or which subset of advertisements they want to verify or audit (step 100) . Once the user specifies the advertisement by name or by browsing all the advertisements in the system and clicking on the ones that the user wants to get a report on, the system generates a report (step 101), which is a log of who has seen the ad, what machine they were using, what time and for how long the advertisement was displayed, and other desired information. All the log information accessed by the info bank and ad auditing submodules is logged in a single database 23 (Fig. 1) . Whether the user is looking for auditing information, transactions, things that the user has bought, or user demographics, the information is all in the same database. However, when a user uses the info bank submodule 90, the user is interested in only certain things, as described above. But when the user uses the ad auditing submodule 96, the user is interested in other things. Therefore, the reports that are produced by the info bank and ad auditing submodules contain different data. The database is filtered and only the items of interest for a certain report are retained so that the rest of the database need not be used.
Referring to Fig. 10, the flow of an ad placement process 110 according to the present invention will be described. The purpose of ad placement is to allow advertisers to enter their advertisements into the system. For entering an ad, the system provides a screen that is shown to the user asking whether the user wants to enter an ad. If the user indicates yes by clicking on that particular choice, the system enters the start 111 of the ad placement mode. At this point the system asks the user for the focus (step 112) . The advertiser may say, for example, that he is in the car business, the car washing business, or that he is a physician, a lawyer or whatever other category name that he wants to give. The user is also asked for an advertisement name at step 112. This is just a name for future reference.
The purpose of the focus in step 112, as discussed above, is to prevent an advertisement from being shown that is not relevant to the query at hand. The system of the present invention always shows advertisements that are relevant to what the user has asked for. Therefore, it is of paramount importance that the system know the context of the ad. Thus, when the advertiser places an ad, the system establishes the focus.
The present invention describes the world in terms of SIC codes, which is a categorization of approximately 64,000 categories. For example, the system knows that there is a distinction between opera glasses and operating tables. It knows a distinction between lawyers and physicians, as well as the distinction between different kinds of physicians. For example, when the user types in bicycle as the focus, the present invention accesses the category search engine 33 and returns a list of subcategories related to the bicycle business (e.g., bicycle repair, bicycle sales, bicycling as a sport, and so forth) . The user is prompted (step 114) to select one or more of the subcategories from the list that are relevant to the user's ad. The user can also create his or her own categories at this point. The result is that the advertisement is tied to all of the categories selected or created by the user.
The user may also be asked to provide certain demographic or profile information. For instance, the user can require that his advertisement be shown only to people in age group 30 to 40 or only to people living in Morristown, NJ or any other geographic location. The last item that the user is asked to specify is the contract. The various contracts available to the advertiser are explained above. When the user is finished entering all of this information, the system updates the ad info database (step 115) .
The system then either accepts the advertisement (step 116) , or the system rejects it. The system might reject the advertisement because the contract that the user wants cannot be satisfied by the system. If the system decides at this point that the user's contract cannot be satisfied, the system displays to the user the next best possible contract that it can satisfy, and the user is then free to either choose that contract or to suggest a different one for consideration by the system. Upon confirmation of the ad placement, the advertisement becomes a part of the database. Referring to Fig. 11, the flow of a page placement process 120 according to the present invention will be described. The purpose of the page placement process is similar to the ad placement process described above with reference to Fig. 10. The page placement process 120 is distinct from the case where the page resides outside of the present system, either as a part of a search engine or because somebody else owns the home page. The page placement process is used for publishers interested in creating a home page for use in the present system. The page placement process permits publishers to provide a page with meta tags and meta contacts.
The page placement process has a starting screen 121 in which one of the menu choices is, "Would you like to place a page?" If the user clicks on that menu choice, a screen is shown to the user asking the user to type in a page name, a page URL (i.e., Universal Resource Locator) , and a focus. The URL is a physical address in terms of the WWW of where the page is actually residing. As discussed above, the focus is a list of key words that the user believes captures the content of the page.
Upon entry of the focus, page name, and page URL, the system retrieves a list of subcategories from the category search engine 33 that are related to the focus at hand and displays those subcategories to the user (step 124) . The user picks one or more of these subcategories as being relevant to the content of the page. The system is then able to integrate the page into the page database of the present invention (step 125) and return a confirmation of the new home page being linked to the relevant categories (step 126) .
Referring to Fig. 12, an architecture of the underlying transaction system of the present invention will be described. One of the basic features of the present invention is that the advertisements displayed to users provide a gateway for the client to take further action with the advertiser. That is, the ads are not just there for the user to see, they are interactive.
For example, if the system shows the user a picture of a car or a cookie and the user wants to buy or receive further information about the advertised product, the user can make a transaction with the system. The transaction can be very simple, such as where the user clicks on the advertisement and is displayed all information about that particular product. Or the transaction could be something more complicated, such as where the user actually enters a dialogue with the system and buys the product. The flow chart shown in Fig. 12 describes a typical scenario in which the client has seen a certain advertisement and clicks on that advertisement to actually buy something. In particular, whatever this person is going to buy is going to involve multiple servers. The client is running on Host 1, and the transaction that the client is requesting will involve multiple servers, perhaps geographically distributed. Host 4 is a bank server running at a bank somewhere on the computer network. Host 3 iε a transaction server for logging and serving as the transaction focal point. Host 2 is a server that accepts the start of the transaction from the client housed at Host 1.
A typical transaction where the client 130 sees an advertisement and clicks on the advertisement will now be described by reference to the transaction system architecture diagram shown in Fig. 12 and the screen displays shown in Figs. 13A and 13B. The action of clicking on the advertisement is captured by the gate 131 in Host 2 , and the appropriate information is then displayed to the client by the transaction client 132 in Host 2. For example, the transaction client 132 might prompt the client to enter the type of transaction desired. The transaction client in Host 2 is a client for a transaction server 133 in Host 3.
Referring to Figs. 13A and 13B, in the typical transaction the user first clicks on an item from a list of features offered by the particular publisher (Fig. 13A) , in this case, the item "Internet DMV. " A second screen display (Fig. 13B) then appears in which an advertisement is provided in the middle of the page that says "Division of Motor Vehicles, Morristown, New Jersey, Automatic Renewal of Driving License." The user may then click on this particular advertisement. At this point a screen is displayed to the user asking the user what type of transaction the user wants to make. The next screen generated by the transaction client at Host 2 would say, for example, "Would you like to renew your license?" or "Would you like to get a new car registration?" If the user says, "I would like to renew my driver's license, " the request is captured by the transaction client 132 at Host 2 and given to the transaction server 133 in Host 3. The transaction server 133 in Host 3 then receives this request for renewal of driving license, extracts the appropriate forms to be filled out from its local database, and provides the forms to the transaction client 132 in Host 2.
The transaction client 132 at Host 2 then receives these forms and fills them out with the client's information with help from the client 130 at Host 1. Thus, the client's name, address, car ID and other necessary information are filled in for the client automatically.
The client 130 is asked to type in a PIN number to start the second part of the transaction. If the client 130 types in the PIN number, the second part of the transaction starts. The second part of the transaction is that the form that has now been filled in and constitutes the request for a renewal of driver's license is sent from the client 130 in Host 1 to the transaction client 132 in Host 2, and from the transaction client 132 in Host 2 to the transaction server 133 in Host 3. At this point, there are two things that have to happen at Host 3. First, the particular request for renewal of the driving license has to be processed by making a record that this person has renewed the license and by sending confirmation back to the client. Second, the transaction server 133 must be paid for the renewal of the driving license. In other words, there has to be a monetary fee that has to be exchanged between the client and the DMV.
In exchanging the monetary fee, the transaction server 133 will also act as a transaction client 134 to the bank server 135 in Host 4. The transaction client 134 sends a message to the bank server 135 in Host 4 indicating that it has the client's PIN number and the authorization to deduct a certain fee from the client's account. The bank server 135 authenticates that information, logs the information in its own records, and sends back an electronic approval for the debit.
The transaction client 134 at that point indicates receipt of the payment to the transaction server 133 in Host 3. The transaction server 133 in Host 3 logs receipt of the money, receipt of the request, and sends a confirmation message through the transaction client 132 and gate 131 back to the client 130 at Host 1. The confirmation might say, for example, "We have received your request; we have deducted $17 from your account; your license is in the mail; here is your new driving license number; thank you very much."
Referring to Fig. 14, the transaction process of the present invention will now be described by reference to a flow chart. The user starts the process (step 140) by clicking on an appropriate advertisement to ask for a transaction. The system then links the user (step 141) to the transaction server (step 142) . The transaction server then returns the required form to the client (step 143) , and the client fills in the form with the user's profile information. The form is then resubmitted to the transaction server (step 144) . The transaction server accesseε the bank server (step 145) to determine whether the user has the required money and whether the money can be withdrawn.
Upon authentication by the bank server, the transaction server receives confirmation from the bank server (step 146) that the user has given a valid account number, and that the bank server has in fact authenticated the user and has authenticated the deduction of the appropriate sums from the bank. The transaction server then makes the deduction and puts the deducted amount into the bank server's log (step 147) . These logs are maintained so that at any time users can find out how much money they have spent or who has bought what things. The transaction server also maintains a transaction server log of the transaction time and any other particulars of the transaction desired (step 148) . Once the logging is complete, the transaction server then generates a confirmation of the transaction which is then displayed to the client (step 149) .
Referring to Fig. 15, the prime space manager 20 will now be described in further detail. As explained above, an important feature of the present invention is that it offers advertisers certain contractual guarantees as to how and when their ads will be shown in prime space (the first screen of information displayed to the user) . These contractual guarantees include frequency-based contracts, ratio or percentage-based contracts, exclusive or competitive contracts, dependent contracts, and story contracts . These contracts can be used alone or combined in a variety of ways, as previously explained.
The prime space manager 20 has a prime space algorithm 150 that accepts as inputs the list of relevant ads that are related to the query at hand, the size of the prime space, and the list of all ad contracts. The prime space manager 20 then looks at all the ad contracts and determines which advertisements to show to the user. The prime space manager 20 then updates the contracts (step
151) to indicate which ads were selected (this information is used in considering which ads to select the next time) . The prime space manager 20 then provides a list of prime space ads to be shown to the appropriate module. That is, the prime space manager 20 accepts a possibly very long list of advertisements and, based on the contracts that it has, filters the ads to a smaller list containing exactly the number of advertisementε that it can show based on the size of prime space.
The following examples of prime space algorithms are provided to further illustrate the function and operation of the prime space manager 20 of the present invention. It should be noted that many variations of these algorithms are possible, and that the specific examples provided are for purposes of illustration only.
Notations:
Let A\ An denote the advertisements in the system of the present invention.
Let i Pn denote the contract values associated with the corresponding advertisements ( Pλ denotes the contract value associated with advertisement Ax, as a function of the price paid by the advertiser.)
Let S denote the size of the prime space in the system.
Prime Space:
The prime space on a user's terminal means the first screen of data which constitutes the answer to the user's query (plus the relevant advertisements) . In this context, advertisers will be assured of "fair" treatment in the sense that their advertisements will be presented to the targeted users in a manner that is commensurate with the fees they were charged. Fairness means equal access as well as controlled access--ensuring that advertisers who pay more are more accessible than those who pay less.
Contracts:
Contracts are specifications that indicate the frequency of display of a given advertisement in response to relevant user queries.
The example prime space algorithms provided below may be used for the following four types of advertisement contracts :
1. Frequency-based: These contracts specify the number of times a given advertisement is to be shown in response to the relevant user queries .
2. Ratio-based: These contracts specify how often a given advertisement is to be shown in the prime space in response to the relevant user queries.
3. Dependent: An ad A1 can have a dependent contract of X% with another ad A,. The dependent contract will ensure that ad A± is shown together with A3 at least X% of the times ad A-, will be shown. 4. Exclusive: An ad Ax can have an exclusive contract with another ad A . The exclusive contract will ensure that ad A will not be displayed along with ad A-.
Algorithm for Frequency-based Contracts:
WHILE (screen space is not filled) begin
1. Select an advertisement, say A1 , with the selection biased by the contract value P 2. Include A-, in the screen space end
Algorithm for Ratio-based Contracts:
WHILE (prime space is not filled) begin
1. Select an advertisement, say Aλ , with the selection biased by the contract value P1
2 . Include Ai in the prime space end
Algorithm for Dependent Contracts: WHILE (Prime space is not filled) begin
1. Select an advertisement, say Ax, with the selection biased by the contract value Pλ
2 . Assign A to A
3. WHILE (some advertisement iε selected AND prime space is not filled)
Select one of the dependents of A, say A,, with the selection biased by the contract value j Assign A3 to A
Include A in the prime space end
Algorithm for Exclusive Contracts:
WHILE (prime space is not filled) begin
1. Select an advertisement, say Ax, with the selection biased by the contract value P 2. Remove all advertisements A: ' s that have an exclusive contract on A,
3. Remove all advertisements A ' s that Ax has an exclusive contract on
4. Include Aλ in the prime space end
Algorithm for Overall Prime Space Management:
WHILE (prime space is not filled) begin 1. Select an advertisement, say Ax , with the selection biased by the contract value Pλ
2. Assign A to A
3. WHILE (some advertisement is selected AND prime space is not filled) - Remove all advertisements Λ-, ' s that have an exclusive contract on A
Remove all advertisements Ak ' s that A has an exclusive contract with
Select one of the dependents of A, say Am, with the selection biased by the contract value Pm Assign Am to A
Include A in the prime space end
Algorithm for Checking Consistency:
Notations :
Let PA denote the prime space contract value of Node A . Let D (A, B, X) denote the dependency contract value from advertisement A to advertisement B [A should appear together with advertisement B, X% of the times advertisement B appears) .
Let E (A, B) denote the exclusive contract from advertisement A to advertisement B (note that no value is associated with exclusive contracts) . If a new advertisement A is to be introduced into the system with a prime space contract value of PA l a set of dependency contracts D (A, 1 , x) , . . . , D (A, k, y) and a set of exclusive contracts E (A, 1) , ... , E (A, g) , then for checking the consistency of all the contracts, the following basic checks have to be carried out (more specific checks may be required for specific algorithmε and their implementationε) :
1. Check whether Inequality (I) can be satisfied
2. For each of the dependency contracts D (A, i , x) check whether Inequality (II) can be satisfied
3. For each of the exclusive contracts E (A, i ) check whether conditions (III) can be satisfied
The consistency checking algorithm verifies if the new advertisement can be accommodated with the corresponding contract. If the new advertisement can be accommodated, the contract is approved and the system is updated to reflect the new addition, else, the consistency checking algorithm informs the advertiser of the maximal contract that can be accommodated for the new advertisement.
Install Equation Editor and double¬ click here to view equation
Install Equation Editor and double¬ click here to view equation
For checking the Dependency Contracts and the Exclusive Contracts a graph is drawn by representing all the advertisements as nodes m a directed graph A dependency contract "Advertisement C appears 50% of the times as advertisement D appears (together) " is represented as an edge from the node "C" to the node " D" . A weight of 0.5 is assigned to this edge. For each exclusive contract E (C, D) , there exists an edge m the graph Thus, a graph is formed where the nodes denote the advertisements, and the edges denote the dependency and exclusive contracts. If a new dependency contract D (A, B, X) is to be introduced, then the following check has to be made for consistency:
Install Equation Editor and double click here to view equation
If a new exclusive contract E (A, B) is to be introduced, the following conditions ( III) should hold (for any value of x) : Install Equation Editor and double¬ click here to view equation.
where X<A.B> denotes the weight of the dependency edge from A to B, i.e. , D(A,B,XIAιB)) .
Fairness:
The fairness guarantees of an algorithm for the system ensures that the advertisements are displayed in a way that is proportional to the fee charged for that advertisement. The fairness of the frequency-based contract algorithm, ratio-based contract algorithm, and the dependent contract algorithm follows from the probability distribution of the contract values and the random number generator that selects an advertisement with the correct random bias. The probability that the random number generator will generate a number in a particular range is proportional to the length of the range. The larger the range, the more probable that a number corresponding to that range will be selected. Each advertisement is assigned a range of values depending on the fee charged for that advertisement. The more the fee charged, the greater the range assigned to that advertisement. This ensures that the larger the fee, the more frequently (more number of times) that advertisement will be displayed. Exclusive contracts are constraints imposed on the display of advertisements. Fairness in meeting the exclusive contracts means that the contracts are satisfied (no two advertisements that have an exclusive contract are displayed together) . The prime space management algorithm 150 ensures that the exclusive contracts are met, by removing all the advertisements that have a relative contract with an advertisement A, as soon as advertisement A is selected for display in the prime space.
In order to ensure fairness, the contracts have to be consistent. When contracts are negotiated with the advertiser, certain consistency checks (using the consistency checking algorithm) are made in order to ensure that the fairness guarantees can in fact be met.
Story Advertisements: Story advertisement is a kind of advertisement in which the advertisement changes dynamically as time progresses. The story advertisement is composed of a sequence of static conventional advertisements, which together tell a story. A story advertisement is displayed using the notion of refresh-insert tags. A refresh tag that is associated with a page denotes the time period after which the story advertisements are refreshed (the next advertisement in the sequence is displayed) . All other static advertisements are unaffected by the refresh timer. The refresh tag can be set by the client or the application. Thus, the story advertisement is a logical sequence of a number of advertisements, that will be displayed one at a time at each refresh cycle.
It will be appreciated that the present invention is not limited to the exact construction or process steps that have been described above and illustrated in the accompanying drawings, and that various modifications and changes can be made without departing from the scope thereof. It is intended that the scope of the invention only be limited by the appended claims.

Claims

WHAT IS CLAIMED IS:
1. A system for advertising on a computer network, comprising: a server containing a plurality of advertisements; means for electronically connecting the server to a computer network; and means for selecting and retrieving an advertisement from said server in response to a query entered on said network.
2. The system for advertising as set forth in claim 1, wherein said selecting means comprises means for ensuring that a selected advertisement is relevant to the query.
3. The system for advertising as set forth in claim 1, further comprising a mixer means for combining a retrieved advertisement with a content page returned by the computer network in response to the query.
4. The system for advertising as set forth in claim 1, further comprising a prime space manager means for controlling when the advertisements contained on said server are selected by said selecting means, said control being based upon respective advertiser contracts associated with each of said advertisements.
5. The syεtem for advertising as set forth in claim 1, further comprising a local client means for displaying a retrieved advertisement only during a download delay time period in which a user is waiting for a content page to be downloaded in response to the query.
6. The system for advertising as set forth in claim 1, further comprising means for calculating a search time estimation for the query, and means for combining a page containing said search time estimation and a retrieved advertisement .
7. The system for advertising as set forth in claim 1, further comprising means for determining a geographic location of a user that entered the query, and means for selecting an advertisement based upon the user's geographic location.
8. A method for advertising on a computer network, comprising the steps of: placing a plurality of advertisements on a server; placing the server m electronic communication w th a computer network; selecting an advertisement on said server in response to a query entered on said network; and retrieving the selected advertisement from said server for display to a user.
9. The method for advertising as set forth in claim 24, further comprising the step of combining the retrieved advertisement with a content page returned by the computer network m response to the query.
10. The method for advertising as set forth in claim 24, further comprising the step of controlling when the advertisements on the server are selected based upon respective advertiser contracts associated with each of the advertisements .
11. The method for advertising as set forth in claim 24, further comprising the step of displaying the retrieved advertisement only during a download delay time period in which a user is waiting for a content page to be downloaded in response to the query.
- 5i
PCT/US1996/019509 1995-12-08 1996-12-06 Method and system for placing advertisements in a computer network WO1997021183A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP52147697A JP2001525951A (en) 1995-12-08 1996-12-06 Method and system for placing advertisements in a computer network
KR1019980704366A KR19990072063A (en) 1995-12-08 1996-12-06 Method and system for showing ads on computer networks
EP96943640A EP0954797A1 (en) 1995-12-08 1996-12-06 Method and system for placing advertisements in a computer network

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US56963995A 1995-12-08 1995-12-08
US08/569,639 1995-12-08

Publications (1)

Publication Number Publication Date
WO1997021183A1 true WO1997021183A1 (en) 1997-06-12

Family

ID=24276240

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1996/019509 WO1997021183A1 (en) 1995-12-08 1996-12-06 Method and system for placing advertisements in a computer network

Country Status (6)

Country Link
EP (1) EP0954797A1 (en)
JP (1) JP2001525951A (en)
KR (1) KR19990072063A (en)
CA (1) CA2240009A1 (en)
TW (1) TW340283B (en)
WO (1) WO1997021183A1 (en)

Cited By (230)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0869446A1 (en) * 1997-04-02 1998-10-07 Lucent Technologies Inc. System and method for scheduling and controlling delivery of advertising in a communications network
WO1998058334A1 (en) * 1997-06-16 1998-12-23 Doubleclick Inc. Method and apparatus for automatic placement of advertising
EP0891062A2 (en) * 1997-06-16 1999-01-13 International Business Machines Corporation System and method of multiparty billing for web access
JPH1125176A (en) * 1997-07-03 1999-01-29 Fujitsu Ltd Device for preparing and transmitting notice information
WO1999014693A1 (en) * 1997-09-15 1999-03-25 The Pangea Project, Llc Systems and methods for organizing and analyzing information stored on a computer network
US5948061A (en) * 1996-10-29 1999-09-07 Double Click, Inc. Method of delivery, targeting, and measuring advertising over networks
EP0953924A2 (en) * 1998-04-29 1999-11-03 Ncr International Inc. Method and apparatus for forming subject (context) map and presenting internet data according to the subject map
WO1999060504A1 (en) * 1998-05-15 1999-11-25 Unicast Communications Corporation A technique for implementing browser-initiated network-distributed advertising and for interstitially displaying an advertisement
EP0971298A1 (en) * 1998-07-08 2000-01-12 BRITISH TELECOMMUNICATIONS public limited company Requirements matching
WO2000002112A2 (en) * 1998-07-07 2000-01-13 Transilluminant Corporation Tic: customization of electronic content based on user side interpretation of online reports, with hierarchical models of consumer attributes for targeting content in a privacy-preserving manner
GB2339313A (en) * 1996-05-10 2000-01-19 Aim Corp Advertisement display system
WO2000003342A1 (en) * 1998-07-08 2000-01-20 British Telecommunications Public Limited Company Requirements matching
WO2000008802A2 (en) * 1998-08-03 2000-02-17 Doubleclick Inc. Network for distribution of re-targeted advertising
US6044376A (en) * 1997-04-24 2000-03-28 Imgis, Inc. Content stream analysis
EP0994430A2 (en) * 1998-10-12 2000-04-19 Hitachi, Ltd. Contents management method
US6055513A (en) * 1998-03-11 2000-04-25 Telebuyer, Llc Methods and apparatus for intelligent selection of goods and services in telephonic and electronic commerce
US6128651A (en) * 1999-04-14 2000-10-03 Americom Usa Internet advertising with controlled and timed display of ad content from centralized system controller
US6144944A (en) * 1997-04-24 2000-11-07 Imgis, Inc. Computer system for efficiently selecting and providing information
US6161127A (en) * 1999-06-17 2000-12-12 Americomusa Internet advertising with controlled and timed display of ad content from browser
EP1061465A2 (en) * 1999-06-17 2000-12-20 International Business Machines Corporation Method and apparatus for providing reduced cost online service and adaptive targeting of advertisements
WO2000079512A1 (en) * 1999-06-24 2000-12-28 Wildseed, Ltd. Exclusive use display surface areas and persistently visible display of content with different display mode
WO2001001387A1 (en) * 1999-06-24 2001-01-04 Wildseed, Ltd. Exclusive use display surface areas and persistently visible display of contents including advertisements received via internet
EP1082717A1 (en) * 1998-05-04 2001-03-14 V3 Software Development Corporation Method of delivering information over a communication network
EP1093070A2 (en) * 1999-09-30 2001-04-18 International Business Machines Corporation Method and apparatus for dynamic targeting of streaming media using statistical data
EP1126392A2 (en) * 1998-07-07 2001-08-22 Encirq Corporation Customization of electronic content based on consumer attributes
WO2001061556A2 (en) * 2000-02-15 2001-08-23 Webtop.Com Limited Communicating information over an internet
WO2001071564A2 (en) * 2000-03-21 2001-09-27 Lumapath, Inc. System for providing information to an interested viewer, and method of use thereof
KR20010106044A (en) * 2000-05-20 2001-11-29 이연정 Method for advertising on internet and the system
WO2001093070A2 (en) * 2000-05-30 2001-12-06 Nokia Corporation Location aware product placement and advertising
WO2001095584A2 (en) * 2000-06-02 2001-12-13 Oriental Sangyo Co., Ltd. Device for content publishing and advertising in a computer network
WO2002007030A1 (en) * 2000-07-14 2002-01-24 Cowen Internet advertising system and method
JP2002032685A (en) * 2000-05-11 2002-01-31 Nec Corp Contents rental system
EP1180739A1 (en) * 2000-08-16 2002-02-20 Gavoa Ltd Page content delivery
US6351745B1 (en) 1996-02-28 2002-02-26 Netzero, Inc. Communication system for distributing such message as advertisement to user of terminal equipment
US6356893B1 (en) 1996-05-10 2002-03-12 Yuichiro Itakura Message searching system and terminal
US6366298B1 (en) 1999-06-03 2002-04-02 Netzero, Inc. Monitoring of individual internet usage
WO2002029542A1 (en) * 2000-10-04 2002-04-11 Public Forums Internet (Pfi) Limited Display of images depending on the size of the available screen area
WO2002044842A2 (en) * 2000-12-01 2002-06-06 Perkes Ronald M Cross technology monitoring, profiling and predictive caching method and system
US6426762B1 (en) 1998-07-17 2002-07-30 Xsides Corporation Secondary user interface
US6433799B1 (en) 1997-11-21 2002-08-13 Xsides Corporation Method and system for displaying data in a second display area
US6437809B1 (en) 1998-06-05 2002-08-20 Xsides Corporation Secondary user interface
JP2002245332A (en) * 2001-02-16 2002-08-30 Isola Barrier Free Co Ltd Method and system for advertisement
US6463468B1 (en) 1999-06-01 2002-10-08 Netzero, Inc. Targeted network video download interface
EP1271365A1 (en) * 2000-03-30 2003-01-02 Gavoa Ltd Customised content delivery
EP0964348A3 (en) * 1998-06-12 2003-01-02 Frank Schulze Bank statement
GB2377781A (en) * 2001-07-20 2003-01-22 Hewlett Packard Co Content item management
EP1293084A1 (en) * 2000-04-24 2003-03-19 Motorola, Inc. Method for informing a user to obtain a product and communication system employing same
KR100379770B1 (en) * 2000-03-18 2003-04-10 주식회사 두산 Method Of A Target Network Announcements Being Provide Contents Service
US6590592B1 (en) 1999-04-23 2003-07-08 Xsides Corporation Parallel interface
US6593945B1 (en) 1999-05-21 2003-07-15 Xsides Corporation Parallel graphical user interface
US6622174B1 (en) * 1997-08-15 2003-09-16 Sony Corporation System for sending, converting, and adding advertisements to electronic messages sent across a network
US6630943B1 (en) 1999-09-21 2003-10-07 Xsides Corporation Method and system for controlling a complementary user interface on a display surface
US6639613B1 (en) 1997-11-21 2003-10-28 Xsides Corporation Alternate display content controller
US6639608B1 (en) 1996-01-23 2003-10-28 Yuichiro Itakura System for displaying two independent images received from network
JP2003534599A (en) * 2000-05-24 2003-11-18 エスポッティング・(ユーケイ)・リミテッド Search device and search method
US6661435B2 (en) 1997-11-21 2003-12-09 Xsides Corporation Secondary user interface
US6677964B1 (en) 2000-02-18 2004-01-13 Xsides Corporation Method and system for controlling a complementary user interface on a display surface
US6678007B2 (en) 1997-11-21 2004-01-13 Xsides Corporation Alternate display content controller
US6686936B1 (en) 1997-11-21 2004-02-03 Xsides Corporation Alternate display content controller
US6697824B1 (en) 1999-08-31 2004-02-24 Accenture Llp Relationship management in an E-commerce application framework
US6711551B1 (en) 1996-06-05 2004-03-23 Netzero, Inc. Information provider, terminal and system and recording medium for the terminal
WO2004027669A1 (en) * 2002-09-18 2004-04-01 Nexcode System Co. Ltd. Characteristic-of-place based advertisement system using wide area network and operating method thereof
KR100432315B1 (en) * 2000-04-08 2004-05-20 이춘희 A method for advertising through communication network
US6757661B1 (en) 2000-04-07 2004-06-29 Netzero High volume targeting of advertisements to user of online service
US6876974B1 (en) 1996-04-19 2005-04-05 Juno Onhhe Services, Inc. Scheduling the presentation of messages to users
US6928615B1 (en) 1999-07-07 2005-08-09 Netzero, Inc. Independent internet client object with ad display capabilities
WO2006007575A2 (en) * 2004-07-01 2006-01-19 Aol Llc Analyzing a query log for use in managing category-specific electronic content
WO2006039004A1 (en) * 2004-09-30 2006-04-13 Google, Inc. Method and system for processing queries initiated by users of mobile devices
EP1652029A2 (en) * 2003-07-02 2006-05-03 Vibrant Media Limited Method and system for augmenting web content
US7057591B1 (en) 2001-07-11 2006-06-06 Nokia Corporation Advertising using an eBook with a bistable display
US7110962B2 (en) * 1997-08-11 2006-09-19 Amon Thomas C Apparatus and method for providing a provider-selected message in response to a user request for user-selected information
WO2007023321A1 (en) * 2005-08-25 2007-03-01 Tero Ltd Method and system for location based distribution of content on the internet
US7260783B1 (en) 2003-07-08 2007-08-21 Falk Esolutions Gmbh System and method for delivering targeted content
JP2007287170A (en) * 2007-06-18 2007-11-01 Sharp Corp Advertising device, advertising method, and recording medium recording information processing program
US7299195B1 (en) 2003-09-02 2007-11-20 Revenue Science, Inc. Accepting bids to advertise to users performing a specific activity
WO2007133371A1 (en) * 2006-05-10 2007-11-22 Microsoft Corporation Agent for discovering relevant content
WO2008002335A1 (en) * 2006-06-28 2008-01-03 Microsoft Corporation Online keyword buying, advertisement and marketing
US7353267B1 (en) 2000-04-07 2008-04-01 Netzero, Inc. Targeted network video download interface
US7386485B1 (en) * 2004-06-25 2008-06-10 West Corporation Method and system for providing offers in real time to prospective customers
WO2009018182A2 (en) * 2007-08-01 2009-02-05 Microsoft Corporation Server based control of ad placement in client software
JP2009181575A (en) * 1998-04-08 2009-08-13 Access Co Ltd Wireless communication equipment for displaying advertisement page
US7603619B2 (en) 2005-11-29 2009-10-13 Google Inc. Formatting a user network site based on user preferences and format performance data
US20090271254A1 (en) * 2008-04-24 2009-10-29 Microsoft Corporation Advertisements driven by user
AU2003254136B2 (en) * 2002-07-25 2009-12-03 Google Llc Method/system providing filtered/masked internet advertisements
US7644315B2 (en) 2006-10-30 2010-01-05 Google Inc. Diagnostics and error reporting for common tagging issues
US7647299B2 (en) 2003-06-30 2010-01-12 Google, Inc. Serving advertisements using a search of advertiser web information
US7657514B2 (en) 2007-01-30 2010-02-02 Google Inc. Content identification expansion
US7698266B1 (en) 1999-11-01 2010-04-13 Google Inc. Meaning-based advertising and document relevance determination
US7716161B2 (en) 2002-09-24 2010-05-11 Google, Inc, Methods and apparatus for serving relevant advertisements
US7725502B1 (en) 2005-06-15 2010-05-25 Google Inc. Time-multiplexing documents based on preferences or relatedness
US7730017B2 (en) 2007-03-30 2010-06-01 Google Inc. Open profile content identification
US7734624B2 (en) 2002-09-24 2010-06-08 Google, Inc. Serving advertisements based on content
US7752074B2 (en) 2002-04-05 2010-07-06 Sponster Llc Method of enhancing electronic communications with contextually relevant content
US7751804B2 (en) 2004-07-23 2010-07-06 Wideorbit, Inc. Dynamic creation, selection, and scheduling of radio frequency communications
US7801899B1 (en) 2004-10-01 2010-09-21 Google Inc. Mixing items, such as ad targeting keyword suggestions, from heterogeneous sources
US7840644B2 (en) 2000-03-17 2010-11-23 Sony Corporation Information distribution system, information receiving apparatus, information list forming method, information deleting method, and information storing method
US7853558B2 (en) 2007-11-09 2010-12-14 Vibrant Media, Inc. Intelligent augmentation of media content
US7853488B1 (en) 1998-03-11 2010-12-14 West Corporation Method, program storage device, and apparatus for offering a user a plurality of scenarios under which to conduct a primary transaction
US7853622B1 (en) 2007-11-01 2010-12-14 Google Inc. Video-related recommendations using link structure
EP1385310A3 (en) * 2002-06-28 2011-01-05 Microsoft Corporation System and method for providing content-oriented services to content providers and content consumers
US7895077B2 (en) * 2004-03-11 2011-02-22 Yahoo! Inc. Predicting inventory availability and prioritizing the serving of competing advertisements based on contract value
US7899801B1 (en) 2003-12-10 2011-03-01 Google, Inc. Determining content to be provided by an entity for rendering via a resource in a target document or notifying an alternative entity of the availability of the resource
US7933893B2 (en) 2000-05-08 2011-04-26 Walker Digital, Llc Method and system for providing a link in an electronic file being presented to a user
US7945474B1 (en) 2007-10-19 2011-05-17 Google Inc. Unified automated billing
US7949714B1 (en) 2005-12-05 2011-05-24 Google Inc. System and method for targeting advertisements or other information using user geographical information
US7961986B1 (en) 2008-06-30 2011-06-14 Google Inc. Ranking of images and image labels
US7970891B1 (en) 2007-01-17 2011-06-28 Google Inc. Tracking links in web browsers
US7996777B2 (en) 2006-04-20 2011-08-09 Google Inc. Syndicated trackable ad content
US8010407B1 (en) 2006-11-14 2011-08-30 Google Inc. Business finder for locating local businesses to contact
US8015170B2 (en) 2003-12-03 2011-09-06 Google Inc. Personalized network searching
US8024316B2 (en) * 2008-01-30 2011-09-20 Google Inc. Providing content using stored query information
US8024323B1 (en) 2003-11-13 2011-09-20 AudienceScience Inc. Natural language search for audience
US8041082B1 (en) 2007-11-02 2011-10-18 Google Inc. Inferring the gender of a face in an image
US8055664B2 (en) 2007-05-01 2011-11-08 Google Inc. Inferring user interests
US8064736B2 (en) 2004-05-10 2011-11-22 Google Inc. Method and system for providing targeted documents based on concepts automatically identified therein
US20110288928A1 (en) * 2010-05-21 2011-11-24 Microsoft Corporation Online platform for web advertisement competition
US8082178B2 (en) 2004-07-15 2011-12-20 Google Inc. System and method for managing advertising campaign data
US8086624B1 (en) 2007-04-17 2011-12-27 Google Inc. Determining proximity to topics of advertisements
US8086559B2 (en) 2002-09-24 2011-12-27 Google, Inc. Serving content-relevant advertisements with client-side device support
US8086725B1 (en) 2007-08-20 2011-12-27 Google Inc. Identifying associated systems such as advertising networks
US8090706B2 (en) 2003-06-30 2012-01-03 Google, Inc. Rendering advertisements with documents having one or more topics using user topic interest information
US8117067B2 (en) 2008-06-13 2012-02-14 Google Inc. Achieving advertising campaign goals
US8122018B2 (en) 2006-08-09 2012-02-21 Google Inc. System and method for generating creatives
US8122014B2 (en) 2003-07-02 2012-02-21 Vibrant Media, Inc. Layered augmentation for web content
US8135613B2 (en) 2008-01-15 2012-03-13 Google Inc. Ringback advertising
US8135737B2 (en) 2004-12-29 2012-03-13 Aol Inc. Query routing
US8140965B2 (en) 2003-02-28 2012-03-20 Google, Inc. Identifying related information given content and/or presenting related information in association with content-related advertisements
US8165915B1 (en) 2008-07-23 2012-04-24 Google Inc. Advertisement customization
US8166046B1 (en) 2007-09-11 2012-04-24 Google Inc. Link filter
US8180760B1 (en) 2007-12-20 2012-05-15 Google Inc. Organization system for ad campaigns
US8189231B1 (en) 2007-09-17 2012-05-29 Google Inc. Automated mechanical approval of advertisement copy
US8219638B2 (en) 2008-12-15 2012-07-10 Google Inc. Editing information configured for use in selecting content regarding at least one content provider
US8218741B2 (en) 2007-11-26 2012-07-10 Google Inc. Telephone number-based advertising
US8229957B2 (en) 2005-04-22 2012-07-24 Google, Inc. Categorizing objects, such as documents and/or clusters, with respect to a taxonomy and data structures derived from such categorization
US8229942B1 (en) 2007-04-17 2012-07-24 Google Inc. Identifying negative keywords associated with advertisements
US8230324B1 (en) 2007-09-17 2012-07-24 Google Inc. Ad size capture tool for publications
US8239263B2 (en) 2003-09-05 2012-08-07 Google Inc. Identifying and/or blocking ads such as document-specific competitive ads
US8249908B2 (en) 2006-11-30 2012-08-21 Google Inc. Targeted content request
US8255948B1 (en) 2008-04-23 2012-08-28 Google Inc. Demographic classifiers from media content
US8275662B2 (en) 2007-01-19 2012-09-25 Francap Corporation Method and apparatus for generating geo-targeted message with search results
US8275771B1 (en) 2010-02-26 2012-09-25 Google Inc. Non-text content item search
US8285781B1 (en) 2003-09-10 2012-10-09 Google Inc. Reduction of perceived DNS lookup latency
US8306908B1 (en) 2002-12-31 2012-11-06 West Corporation Methods and apparatus for intelligent selection of goods and services in telephonic and electronic commerce
US8306856B2 (en) 1999-11-17 2012-11-06 Heavy Hammer, Inc. Method, system, and software for geographically focused network advertising
US8311875B1 (en) 2007-10-30 2012-11-13 Google Inc. Content item location arrangement
US8315949B2 (en) 1999-09-21 2012-11-20 I/P Engine, Inc. Content distribution system and method
US8321462B2 (en) 2007-03-30 2012-11-27 Google Inc. Custodian based content identification
US8326806B1 (en) 2007-05-11 2012-12-04 Google Inc. Content item parameter filter
US8326686B2 (en) 2006-03-30 2012-12-04 Google Inc. Automatically generating ads and ad-serving index
US8335712B1 (en) 2009-04-06 2012-12-18 Google Inc. Minimizing ad production costs for print advertisers
US8341662B1 (en) 1999-09-30 2012-12-25 International Business Machine Corporation User-controlled selective overlay in a streaming media
US8352499B2 (en) 2003-06-02 2013-01-08 Google Inc. Serving advertisements using user request information and user information
US20130041765A1 (en) * 1999-04-02 2013-02-14 Yahoo! Inc. Method and system for optimum placement of advertisements on a webpage
US8380572B2 (en) 2003-08-25 2013-02-19 Yahoo! Inc. Selecting among advertisements competing for a slot associated with electronic content delivered over a network
US8380691B1 (en) 2008-01-04 2013-02-19 Google Inc. Social network user data advertising
US8386311B2 (en) 2007-04-13 2013-02-26 Google Inc. Estimating off-line advertising impressions
US8392249B2 (en) 2003-12-31 2013-03-05 Google Inc. Suggesting and/or providing targeting criteria for advertisements
US8392241B2 (en) 2007-08-30 2013-03-05 Google Inc. Publisher ad review
US8392246B2 (en) 2007-08-30 2013-03-05 Google Inc. Advertiser ad review
US8401902B1 (en) 2000-01-10 2013-03-19 Lucinda Stone Method for using computers to facilitate and control the creating of a plurality of functions
US8407094B1 (en) 2004-03-31 2013-03-26 Google Inc. Providing links to related advertisements
US8407665B1 (en) 2005-11-16 2013-03-26 Google Inc. Rendering contextual related content with a document, such as on a web page for example
US8423413B2 (en) 2004-12-30 2013-04-16 Google Inc. Advertisement approval
US8438062B2 (en) 2006-12-29 2013-05-07 Google Inc. Network node ad targeting
US8463830B2 (en) 2007-01-05 2013-06-11 Google Inc. Keyword-based content suggestions
US8464151B2 (en) 2005-08-09 2013-06-11 Canon Kabushiki Kaisha Layout of field area where merchandise and advertising information are inserted or determining position and size of area where merchandise and advertising information flow
US8468048B2 (en) 2005-04-22 2013-06-18 Google Inc. Suggesting targeting information for ads, such as websites and/or categories of websites for example
USRE44323E1 (en) 1996-01-19 2013-06-25 Beneficial Innovations, Inc. Method and system for playing games on a network
US8504416B2 (en) 2002-06-27 2013-08-06 The New York Times Company Method for online session advertising
USRE44566E1 (en) 1996-01-19 2013-10-29 Beneficial Innovations, Inc. Advertising system for the internet and local area networks
US8577181B1 (en) 2007-05-31 2013-11-05 Google Inc. Determining content to be displayed
US8583484B1 (en) 2010-01-29 2013-11-12 Google Inc. Frequency optimization of advertisement insertion in media streams
US8583488B2 (en) 2007-09-17 2013-11-12 Google Inc. Generating advertisements using user assets
US8595071B2 (en) 2003-06-30 2013-11-26 Google Inc. Using enhanced ad features to increase competition in online advertising
US8600802B1 (en) 2007-10-16 2013-12-03 Google Inc. Advertisement marketplace
US8626575B1 (en) 2008-03-20 2014-01-07 Google Inc. Targeted advertising using temporal analysis of user specific data
US8666816B1 (en) 2004-09-14 2014-03-04 Google Inc. Method and system for access point customization
US8666820B2 (en) 2004-12-30 2014-03-04 Google Inc. Ad rendering parameters, such as size, style, and/or layout, of online ads
US8700734B2 (en) 1997-08-11 2014-04-15 Foley and Lardner LLP Apparatus and method for providing a provider-selected message in response to a user request for user-selected information
US8712857B1 (en) 2003-03-31 2014-04-29 Tuxis Technologies Llc Methods and apparatus for intelligent selection of goods and services in mobile commerce
US8745226B2 (en) 2006-05-02 2014-06-03 Google Inc. Customization of content and advertisements in publications
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
US8769567B1 (en) 2004-09-30 2014-07-01 Tuxis Technologies Llc Methods, media, and apparatus for intelligent selection of items encoded onto portable machine-readable entertainment media
US8924465B1 (en) 2007-11-06 2014-12-30 Google Inc. Content sharing based on social graphing
US8942993B2 (en) 2006-06-30 2015-01-27 Google Inc. Profile advertisements
US8977614B2 (en) 1997-02-13 2015-03-10 Rockstar Consortium Us Lp Associative search engine
US9002725B1 (en) 2005-04-20 2015-04-07 Google Inc. System and method for targeting information based on message content
US9047621B1 (en) 2007-06-14 2015-06-02 Google Inc. Content selection filter
US9058608B2 (en) 2007-09-12 2015-06-16 Google Inc. Placement attribute targeting
US9058395B2 (en) 2003-05-30 2015-06-16 Microsoft Technology Licensing, Llc Resolving queries based on automatic determination of requestor geographic location
US9064024B2 (en) 2007-08-21 2015-06-23 Google Inc. Bundle generation
US9131273B1 (en) 2008-10-16 2015-09-08 Google Inc. Synchronized programming
US9141964B1 (en) 2004-05-10 2015-09-22 Google Inc. Method and system for automatically creating an image advertisement
US9152708B1 (en) 2009-12-14 2015-10-06 Google Inc. Target-video specific co-watched video clusters
US9165368B2 (en) 2005-02-08 2015-10-20 Microsoft Technology Licensing, Llc Method and system to segment depth images and to detect shapes in three-dimensionally acquired data
US9201950B2 (en) 1999-09-03 2015-12-01 Arendi S.A.R.L. Method, system and computer readable medium for addressing handling from an operating system
US9235850B1 (en) 2007-08-13 2016-01-12 Google Inc. Adaptation of web-based text ads to mobile devices
US9235849B2 (en) 2003-12-31 2016-01-12 Google Inc. Generating user information for use in targeted advertising
US9251520B2 (en) 2006-02-22 2016-02-02 Google Inc. Distributing mobile advertisements
US9338047B1 (en) 2009-10-01 2016-05-10 Google Inc. Detecting content on a social network using browsing patterns
US9430779B1 (en) 2012-07-26 2016-08-30 Google Inc. Determining visual attributes of content items
US9451310B2 (en) 1999-09-21 2016-09-20 Quantum Stream Inc. Content distribution system and method
US9530150B2 (en) 1996-01-19 2016-12-27 Adcension, Llc Compensation model for network services
US9563646B1 (en) 2004-05-10 2017-02-07 Google Inc. Method and system for mining image searches to associate images with concepts
US9659309B2 (en) 2002-09-24 2017-05-23 Google Inc. Suggesting and/or providing ad serving constraint information
US9813778B2 (en) 2007-04-17 2017-11-07 Intent IQ, LLC Targeted television advertisements based on online behavior
US9824372B1 (en) 2008-02-11 2017-11-21 Google Llc Associating advertisements with videos
US9830615B2 (en) 2006-06-16 2017-11-28 Almondnet, Inc. Electronic ad direction through a computer system controlling ad space on multiple media properties based on a viewer's previous website visit
US9852225B2 (en) 2004-12-30 2017-12-26 Google Inc. Associating features with entities, such as categories of web page documents, and/or weighting such features
US9922334B1 (en) 2012-04-06 2018-03-20 Google Llc Providing an advertisement based on a minimum number of exposures
US9953338B1 (en) 2007-03-29 2018-04-24 Google Inc. Structured content views of web page content
US9959463B2 (en) 2002-02-15 2018-05-01 Microsoft Technology Licensing, Llc Gesture recognition system using depth perceptive sensors
US10026100B2 (en) 2000-11-28 2018-07-17 Almondnet, Inc. Methods and apparatus for facilitated off-site targeted internet advertising
US10032452B1 (en) 2016-12-30 2018-07-24 Google Llc Multimodal transmission of packetized data
US10152723B2 (en) 2012-05-23 2018-12-11 Google Llc Methods and systems for identifying new computers and providing matching services
US10198744B2 (en) 2008-02-04 2019-02-05 Google Llc User-targeted advertising
US10242255B2 (en) 2002-02-15 2019-03-26 Microsoft Technology Licensing, Llc Gesture recognition system using depth perceptive sensors
US10311860B2 (en) 2017-02-14 2019-06-04 Google Llc Language model biasing system
US10321202B2 (en) 2010-02-09 2019-06-11 Google Llc Customized variable television advertising generated from a television advertising template
US10410242B1 (en) 2007-10-09 2019-09-10 Google Llc Keyword helper
US10497009B2 (en) 2007-07-17 2019-12-03 Mavenir Systems Oy Delivery of advertisements in mobile advertising system
US10593329B2 (en) 2016-12-30 2020-03-17 Google Llc Multimodal transmission of packetized data
US10650066B2 (en) 2013-01-31 2020-05-12 Google Llc Enhancing sitelinks with creative content
US10708313B2 (en) 2016-12-30 2020-07-07 Google Llc Multimodal transmission of packetized data
US10735552B2 (en) 2013-01-31 2020-08-04 Google Llc Secondary transmissions of packetized data
US10776830B2 (en) 2012-05-23 2020-09-15 Google Llc Methods and systems for identifying new computers and providing matching services
US10984445B2 (en) 2006-06-19 2021-04-20 Datonics, Llc Providing collected profiles to media properties having specified interests
US11386466B2 (en) 2013-10-22 2022-07-12 Google Llc Content item selection criteria generation
US11409812B1 (en) 2004-05-10 2022-08-09 Google Llc Method and system for mining image searches to associate images with concepts
US11436643B2 (en) 2008-01-18 2022-09-06 Google Llc Universal creative system and method for generating multiple different creatives using a same set of input data

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3347100B2 (en) * 1999-07-30 2002-11-20 インターナショナル・ビジネス・マシーンズ・コーポレーション Display information determination method and apparatus, storage medium storing software product for display information determination
KR20000018115A (en) * 2000-01-12 2000-04-06 김동성 multi search engine providing customized commercial advertisement
KR100374532B1 (en) * 2000-04-19 2003-03-04 정의신 Internet Advertisement Method
KR100426434B1 (en) * 2000-06-29 2004-04-13 (주)모바일타운 A target marketing method using customer relationship management and message tag and a system thereof
JP2002041606A (en) * 2000-07-21 2002-02-08 Sharp Corp Electronic publishing system
JP2002083207A (en) * 2000-09-05 2002-03-22 Alps Electric Co Ltd Information-providing system
US20030220866A1 (en) * 2001-12-28 2003-11-27 Findwhat.Com System and method for pay for performand advertising in general media
JP4843208B2 (en) 2004-09-30 2011-12-21 株式会社東芝 Digital content editing apparatus, digital content editing method, digital content editing program, and recording medium recording digital content editing program
JP4564464B2 (en) 2006-01-05 2010-10-20 株式会社東芝 Digital content playback apparatus, method and program
US9430772B2 (en) * 2007-06-14 2016-08-30 Yahoo! Inc. Mobile contextual SMS advertising
WO2011016677A2 (en) * 2009-08-04 2011-02-10 엔에이치엔비지니스플랫폼 주식회사 Marketing message providing system and method
JP5475617B2 (en) * 2010-11-04 2014-04-16 ヤフー株式会社 Advertisement providing system and advertisement providing management device
CN108197047B (en) * 2017-08-18 2020-12-29 Tcl空调器(中山)有限公司 Intelligent interface circuit

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5283731A (en) * 1992-01-19 1994-02-01 Ec Corporation Computer-based classified ad system and method
US5412416A (en) * 1992-08-07 1995-05-02 Nbl Communications, Inc. Video media distribution network apparatus and method
US5448625A (en) * 1993-04-13 1995-09-05 Msi Electronics Inc. Telephone advertising method and apparatus

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5283731A (en) * 1992-01-19 1994-02-01 Ec Corporation Computer-based classified ad system and method
US5412416A (en) * 1992-08-07 1995-05-02 Nbl Communications, Inc. Video media distribution network apparatus and method
US5448625A (en) * 1993-04-13 1995-09-05 Msi Electronics Inc. Telephone advertising method and apparatus

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
APTEX ANNOUNCES SELECTCAST..., M2 Presswire, M2 Communications, 5 December 1996. *
ONLINE INTERNATIONAL COMMAND CHART, U.S. Systems, 1985-1986 Edition, page 6. *

Cited By (421)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USRE44566E1 (en) 1996-01-19 2013-10-29 Beneficial Innovations, Inc. Advertising system for the internet and local area networks
US9530150B2 (en) 1996-01-19 2016-12-27 Adcension, Llc Compensation model for network services
USRE44323E1 (en) 1996-01-19 2013-06-25 Beneficial Innovations, Inc. Method and system for playing games on a network
US6639608B1 (en) 1996-01-23 2003-10-28 Yuichiro Itakura System for displaying two independent images received from network
US6351745B1 (en) 1996-02-28 2002-02-26 Netzero, Inc. Communication system for distributing such message as advertisement to user of terminal equipment
US6876974B1 (en) 1996-04-19 2005-04-05 Juno Onhhe Services, Inc. Scheduling the presentation of messages to users
GB2339313A (en) * 1996-05-10 2000-01-19 Aim Corp Advertisement display system
GB2339313B (en) * 1996-05-10 2000-08-09 Aim Corp Terminal
US6356893B1 (en) 1996-05-10 2002-03-12 Yuichiro Itakura Message searching system and terminal
US6711551B1 (en) 1996-06-05 2004-03-23 Netzero, Inc. Information provider, terminal and system and recording medium for the terminal
US7930207B2 (en) 1996-10-29 2011-04-19 Google Inc. Method of delivery, targeting, and measuring advertising over networks
US8676644B2 (en) 1996-10-29 2014-03-18 Google Inc. Method of delivery, targeting, and measuring advertising over networks
US5948061A (en) * 1996-10-29 1999-09-07 Double Click, Inc. Method of delivery, targeting, and measuring advertising over networks
US7844488B2 (en) 1996-10-29 2010-11-30 Doubleclick Inc. Method of delivery, targeting, and measuring advertising over networks
USRE44899E1 (en) 1996-10-29 2014-05-13 Google Inc. Method of delivery, targeting, and measuring advertising over networks
US7827062B2 (en) 1996-10-29 2010-11-02 Google Inc. Method of delivery, targeting, and measuring advertising over networks
US8977614B2 (en) 1997-02-13 2015-03-10 Rockstar Consortium Us Lp Associative search engine
US9009150B2 (en) 1997-02-13 2015-04-14 RPX Clearinghouse LLP Associative search engine
US9110991B2 (en) 1997-02-13 2015-08-18 Rpx Clearinghouse Llc Associative search engine
US9129019B2 (en) 1997-02-13 2015-09-08 Rpx Clearinghouse Llc Associative search engine
EP0869446A1 (en) * 1997-04-02 1998-10-07 Lucent Technologies Inc. System and method for scheduling and controlling delivery of advertising in a communications network
US6144944A (en) * 1997-04-24 2000-11-07 Imgis, Inc. Computer system for efficiently selecting and providing information
US6044376A (en) * 1997-04-24 2000-03-28 Imgis, Inc. Content stream analysis
EP0891062A3 (en) * 1997-06-16 2003-04-16 International Business Machines Corporation System and method of multiparty billing for web access
EP0891062A2 (en) * 1997-06-16 1999-01-13 International Business Machines Corporation System and method of multiparty billing for web access
US8566154B2 (en) 1997-06-16 2013-10-22 Google Inc. Network for distribution of re-targeted advertising
WO1998058334A1 (en) * 1997-06-16 1998-12-23 Doubleclick Inc. Method and apparatus for automatic placement of advertising
JPH1125176A (en) * 1997-07-03 1999-01-29 Fujitsu Ltd Device for preparing and transmitting notice information
US7933969B2 (en) 1997-08-11 2011-04-26 Vucast, Llc Apparatus and method for providing a provider-selected message in response to a user request for user-selected information
US7110962B2 (en) * 1997-08-11 2006-09-19 Amon Thomas C Apparatus and method for providing a provider-selected message in response to a user request for user-selected information
US8131820B2 (en) 1997-08-11 2012-03-06 Vucast, Llc Apparatus and method for providing a provider-selected message in response to a user request for user-selected information
US8700734B2 (en) 1997-08-11 2014-04-15 Foley and Lardner LLP Apparatus and method for providing a provider-selected message in response to a user request for user-selected information
US8954537B2 (en) 1997-08-11 2015-02-10 Google Inc. Apparatus and method for providing a provider-selected message in response to a user request for user-selected information
US6622174B1 (en) * 1997-08-15 2003-09-16 Sony Corporation System for sending, converting, and adding advertisements to electronic messages sent across a network
US6112212A (en) * 1997-09-15 2000-08-29 The Pangea Project Llc Systems and methods for organizing and analyzing information stored on a computer network
WO1999014693A1 (en) * 1997-09-15 1999-03-25 The Pangea Project, Llc Systems and methods for organizing and analyzing information stored on a computer network
US6639613B1 (en) 1997-11-21 2003-10-28 Xsides Corporation Alternate display content controller
US6678007B2 (en) 1997-11-21 2004-01-13 Xsides Corporation Alternate display content controller
US6686936B1 (en) 1997-11-21 2004-02-03 Xsides Corporation Alternate display content controller
US6433799B1 (en) 1997-11-21 2002-08-13 Xsides Corporation Method and system for displaying data in a second display area
US6661435B2 (en) 1997-11-21 2003-12-09 Xsides Corporation Secondary user interface
US7853488B1 (en) 1998-03-11 2010-12-14 West Corporation Method, program storage device, and apparatus for offering a user a plurality of scenarios under which to conduct a primary transaction
US8793165B1 (en) 1998-03-11 2014-07-29 Tuxis Technologies Llc Method, program storage device, and apparatus for offering a user a plurality of scenarios under which to conduct a primary transaction
US8655746B1 (en) 1998-03-11 2014-02-18 Tuxis Technologies Llc Methods and system for providing real time offers to a user based on obsolescence of possessed items
US6055513A (en) * 1998-03-11 2000-04-25 Telebuyer, Llc Methods and apparatus for intelligent selection of goods and services in telephonic and electronic commerce
JP2009181575A (en) * 1998-04-08 2009-08-13 Access Co Ltd Wireless communication equipment for displaying advertisement page
EP0953924A3 (en) * 1998-04-29 2007-08-15 Ncr International Inc. Method and apparatus for forming subject (context) map and presenting internet data according to the subject map
EP0953924A2 (en) * 1998-04-29 1999-11-03 Ncr International Inc. Method and apparatus for forming subject (context) map and presenting internet data according to the subject map
NO338719B1 (en) * 1998-05-04 2016-10-10 V3 Software Dev Corporation Procedure for delivering information over a communication network
EP1082717A1 (en) * 1998-05-04 2001-03-14 V3 Software Development Corporation Method of delivering information over a communication network
EP1082717A4 (en) * 1998-05-04 2009-04-01 Frank J Montero Method of delivering information over a communication network
AU749314B2 (en) * 1998-05-15 2002-06-20 Unicast Communications Corporation A technique for implementing browser-initiated network-distributed advertising and for interstitially displaying an advertisement
WO1999060504A1 (en) * 1998-05-15 1999-11-25 Unicast Communications Corporation A technique for implementing browser-initiated network-distributed advertising and for interstitially displaying an advertisement
US6437809B1 (en) 1998-06-05 2002-08-20 Xsides Corporation Secondary user interface
EP0964348A3 (en) * 1998-06-12 2003-01-02 Frank Schulze Bank statement
EP1126392A3 (en) * 1998-07-07 2001-10-17 Encirq Corporation Customization of electronic content based on consumer attributes
EP1126392A2 (en) * 1998-07-07 2001-08-22 Encirq Corporation Customization of electronic content based on consumer attributes
WO2000002112A2 (en) * 1998-07-07 2000-01-13 Transilluminant Corporation Tic: customization of electronic content based on user side interpretation of online reports, with hierarchical models of consumer attributes for targeting content in a privacy-preserving manner
WO2000002112A3 (en) * 1998-07-07 2000-11-16 Transilluminant Corp Tic: customization of electronic content based on user side interpretation of online reports, with hierarchical models of consumer attributes for targeting content in a privacy-preserving manner
US6327574B1 (en) 1998-07-07 2001-12-04 Encirq Corporation Hierarchical models of consumer attributes for targeting content in a privacy-preserving manner
JP2002520717A (en) * 1998-07-08 2002-07-09 ブリティッシュ・テレコミュニケーションズ・パブリック・リミテッド・カンパニー Request consistency
WO2000003342A1 (en) * 1998-07-08 2000-01-20 British Telecommunications Public Limited Company Requirements matching
EP0971298A1 (en) * 1998-07-08 2000-01-12 BRITISH TELECOMMUNICATIONS public limited company Requirements matching
US6886044B1 (en) 1998-07-08 2005-04-26 British Telecommunications Public Limited Company Method and system having requirements matching servers for processing user messages
US6426762B1 (en) 1998-07-17 2002-07-30 Xsides Corporation Secondary user interface
WO2000008802A3 (en) * 1998-08-03 2000-05-11 Doubleclick Inc Network for distribution of re-targeted advertising
WO2000008802A2 (en) * 1998-08-03 2000-02-17 Doubleclick Inc. Network for distribution of re-targeted advertising
EP0994430A3 (en) * 1998-10-12 2003-08-27 Hitachi, Ltd. Contents management method
EP0994430A2 (en) * 1998-10-12 2000-04-19 Hitachi, Ltd. Contents management method
US20130047062A1 (en) * 1999-04-02 2013-02-21 Yahoo! Inc. Method and system for optimum placement of advertisements on a webpage
US9779414B2 (en) * 1999-04-02 2017-10-03 Excalibur Ip, Llc Method and system for optimum placement of advertisements on a webpage
US9779413B2 (en) * 1999-04-02 2017-10-03 Excalibur Ip, Llc Method and system for optimum placement of advertisements on a webpage
US20130041765A1 (en) * 1999-04-02 2013-02-14 Yahoo! Inc. Method and system for optimum placement of advertisements on a webpage
US9779412B2 (en) * 1999-04-02 2017-10-03 Excalibur Ip, Llc Method and system for optimum placement of advertisements on a webpage
US20130047063A1 (en) * 1999-04-02 2013-02-21 Yahoo! Inc. Method and system for optimum placement of advertisements on a webpage
US6128651A (en) * 1999-04-14 2000-10-03 Americom Usa Internet advertising with controlled and timed display of ad content from centralized system controller
US6590592B1 (en) 1999-04-23 2003-07-08 Xsides Corporation Parallel interface
US6593945B1 (en) 1999-05-21 2003-07-15 Xsides Corporation Parallel graphical user interface
US6463468B1 (en) 1999-06-01 2002-10-08 Netzero, Inc. Targeted network video download interface
US6366298B1 (en) 1999-06-03 2002-04-02 Netzero, Inc. Monitoring of individual internet usage
US6505201B1 (en) 1999-06-03 2003-01-07 Net Zero, Inc. Apparatus for monitoring individual internet usage
EP1061465A3 (en) * 1999-06-17 2003-01-02 International Business Machines Corporation Method and apparatus for providing reduced cost online service and adaptive targeting of advertisements
US6161127A (en) * 1999-06-17 2000-12-12 Americomusa Internet advertising with controlled and timed display of ad content from browser
EP1061465A2 (en) * 1999-06-17 2000-12-20 International Business Machines Corporation Method and apparatus for providing reduced cost online service and adaptive targeting of advertisements
WO2001001387A1 (en) * 1999-06-24 2001-01-04 Wildseed, Ltd. Exclusive use display surface areas and persistently visible display of contents including advertisements received via internet
WO2000079512A1 (en) * 1999-06-24 2000-12-28 Wildseed, Ltd. Exclusive use display surface areas and persistently visible display of content with different display mode
US7890884B2 (en) 1999-06-24 2011-02-15 Porter Swain W Exclusive use display surface areas and persistently visible display of contents including advertisements
US6928615B1 (en) 1999-07-07 2005-08-09 Netzero, Inc. Independent internet client object with ad display capabilities
US6697824B1 (en) 1999-08-31 2004-02-24 Accenture Llp Relationship management in an E-commerce application framework
US9201950B2 (en) 1999-09-03 2015-12-01 Arendi S.A.R.L. Method, system and computer readable medium for addressing handling from an operating system
US9047626B2 (en) 1999-09-21 2015-06-02 I/P Engine, Inc. Content distribution system and method
US9635408B2 (en) 1999-09-21 2017-04-25 Quantum Stream Inc. Content distribution system and method
US8650125B2 (en) 1999-09-21 2014-02-11 I/P Engine, Inc. Content distribution system and method
US9117228B1 (en) 1999-09-21 2015-08-25 I/P Engine, Inc. Content distribution system and method
US9451310B2 (en) 1999-09-21 2016-09-20 Quantum Stream Inc. Content distribution system and method
US8315949B2 (en) 1999-09-21 2012-11-20 I/P Engine, Inc. Content distribution system and method
US6630943B1 (en) 1999-09-21 2003-10-07 Xsides Corporation Method and system for controlling a complementary user interface on a display surface
US8682794B2 (en) 1999-09-21 2014-03-25 I/P Engine, Inc. Content distribution system and method
US9349136B2 (en) 1999-09-21 2016-05-24 Quantum Stream Inc. Content distribution system and method
US8688582B2 (en) 1999-09-21 2014-04-01 I/P Engine, Inc. Content distribution system and method
US9710825B1 (en) 1999-09-22 2017-07-18 Google Inc. Meaning-based advertising and document relevance determination
EP1093070A2 (en) * 1999-09-30 2001-04-18 International Business Machines Corporation Method and apparatus for dynamic targeting of streaming media using statistical data
US8341662B1 (en) 1999-09-30 2012-12-25 International Business Machine Corporation User-controlled selective overlay in a streaming media
EP1093070A3 (en) * 1999-09-30 2003-03-19 International Business Machines Corporation Method and apparatus for dynamic targeting of streaming media using statistical data
US9135239B1 (en) 1999-11-01 2015-09-15 Google Inc. Meaning-based advertising and document relevance determination
US7698266B1 (en) 1999-11-01 2010-04-13 Google Inc. Meaning-based advertising and document relevance determination
US8412576B2 (en) 1999-11-17 2013-04-02 Heavy Hammer, Inc. Method, system, and software for geographically focused network advertising
US8825527B2 (en) 1999-11-17 2014-09-02 Heavy Hammer, Inc. Method, system, and software for geographically focused network advertising
US8306856B2 (en) 1999-11-17 2012-11-06 Heavy Hammer, Inc. Method, system, and software for geographically focused network advertising
US8510165B2 (en) 1999-11-17 2013-08-13 Heavy Hammer, Inc. Method, system, and software for geographically focused network advertising
US8401902B1 (en) 2000-01-10 2013-03-19 Lucinda Stone Method for using computers to facilitate and control the creating of a plurality of functions
WO2001061556A2 (en) * 2000-02-15 2001-08-23 Webtop.Com Limited Communicating information over an internet
WO2001061556A3 (en) * 2000-02-15 2003-12-24 Webtop Com Ltd Communicating information over an internet
US6717596B1 (en) 2000-02-18 2004-04-06 Xsides Corporation Method and system for controlling a complementary user interface on a display surface
US6677964B1 (en) 2000-02-18 2004-01-13 Xsides Corporation Method and system for controlling a complementary user interface on a display surface
US7840644B2 (en) 2000-03-17 2010-11-23 Sony Corporation Information distribution system, information receiving apparatus, information list forming method, information deleting method, and information storing method
KR100379770B1 (en) * 2000-03-18 2003-04-10 주식회사 두산 Method Of A Target Network Announcements Being Provide Contents Service
WO2001071564A3 (en) * 2000-03-21 2004-02-05 Lumapath Inc System for providing information to an interested viewer, and method of use thereof
WO2001071564A2 (en) * 2000-03-21 2001-09-27 Lumapath, Inc. System for providing information to an interested viewer, and method of use thereof
EP1271365A1 (en) * 2000-03-30 2003-01-02 Gavoa Ltd Customised content delivery
US6757661B1 (en) 2000-04-07 2004-06-29 Netzero High volume targeting of advertisements to user of online service
US7353267B1 (en) 2000-04-07 2008-04-01 Netzero, Inc. Targeted network video download interface
US7516213B2 (en) 2000-04-07 2009-04-07 Netzero, Inc. Automatic video display on a computer
US7181415B2 (en) 2000-04-07 2007-02-20 Netzero, Inc. Targeting of advertisements to users of an online service
KR100432315B1 (en) * 2000-04-08 2004-05-20 이춘희 A method for advertising through communication network
EP1293084A1 (en) * 2000-04-24 2003-03-19 Motorola, Inc. Method for informing a user to obtain a product and communication system employing same
EP1293084A4 (en) * 2000-04-24 2004-08-25 Motorola Inc Method for informing a user to obtain a product and communication system employing same
US7933893B2 (en) 2000-05-08 2011-04-26 Walker Digital, Llc Method and system for providing a link in an electronic file being presented to a user
US9396476B2 (en) 2000-05-08 2016-07-19 Inventor Holdings, Llc Method and system for providing a link in an electronic file being presented to a user
JP2002032685A (en) * 2000-05-11 2002-01-31 Nec Corp Contents rental system
KR20010106044A (en) * 2000-05-20 2001-11-29 이연정 Method for advertising on internet and the system
JP2003534599A (en) * 2000-05-24 2003-11-18 エスポッティング・(ユーケイ)・リミテッド Search device and search method
US8032418B2 (en) 2000-05-24 2011-10-04 Daniel Ishag Searching apparatus and a method of searching
US8219455B2 (en) 2000-05-24 2012-07-10 Adknowledge, Inc. Searching apparatus
US8175921B1 (en) 2000-05-30 2012-05-08 Nokia Corporation Location aware product placement and advertising
WO2001093070A3 (en) * 2000-05-30 2003-10-02 Nokia Corp Location aware product placement and advertising
WO2001093070A2 (en) * 2000-05-30 2001-12-06 Nokia Corporation Location aware product placement and advertising
WO2001095584A3 (en) * 2000-06-02 2002-08-22 Oriental Sangyo Co Ltd Device for content publishing and advertising in a computer network
WO2001095584A2 (en) * 2000-06-02 2001-12-13 Oriental Sangyo Co., Ltd. Device for content publishing and advertising in a computer network
JP2006171796A (en) * 2000-06-02 2006-06-29 Bld Oriental Kk Content distribution system and competition implementation system using network
WO2002007030A1 (en) * 2000-07-14 2002-01-24 Cowen Internet advertising system and method
EP1180739A1 (en) * 2000-08-16 2002-02-20 Gavoa Ltd Page content delivery
WO2002029542A1 (en) * 2000-10-04 2002-04-11 Public Forums Internet (Pfi) Limited Display of images depending on the size of the available screen area
US10628857B2 (en) 2000-11-28 2020-04-21 Almondnet, Inc. Methods and apparatus for facilitated off-site targeted internet advertising
US10026100B2 (en) 2000-11-28 2018-07-17 Almondnet, Inc. Methods and apparatus for facilitated off-site targeted internet advertising
WO2002044842A3 (en) * 2000-12-01 2002-11-21 Ronald M Perkes Cross technology monitoring, profiling and predictive caching method and system
WO2002044842A2 (en) * 2000-12-01 2002-06-06 Perkes Ronald M Cross technology monitoring, profiling and predictive caching method and system
JP2002245332A (en) * 2001-02-16 2002-08-30 Isola Barrier Free Co Ltd Method and system for advertisement
US7057591B1 (en) 2001-07-11 2006-06-06 Nokia Corporation Advertising using an eBook with a bistable display
GB2377781A (en) * 2001-07-20 2003-01-22 Hewlett Packard Co Content item management
US10242255B2 (en) 2002-02-15 2019-03-26 Microsoft Technology Licensing, Llc Gesture recognition system using depth perceptive sensors
US9959463B2 (en) 2002-02-15 2018-05-01 Microsoft Technology Licensing, Llc Gesture recognition system using depth perceptive sensors
US10007931B2 (en) 2002-04-05 2018-06-26 Tamiras Per Pte. Ltd., Llc Method of enhancing emails with targeted ads
US8346608B2 (en) 2002-04-05 2013-01-01 Consallus Group L.L.C. Method of compensating for enhancing emails with targeted ads
US8655731B2 (en) 2002-04-05 2014-02-18 Consallus Group L.L.C. Method of enhancing emails with targeted ads
US7752074B2 (en) 2002-04-05 2010-07-06 Sponster Llc Method of enhancing electronic communications with contextually relevant content
US7974874B2 (en) 2002-04-05 2011-07-05 Consallus Group L.L.C. Method of enhancing email text with hyperlinked word pointing to targeted ad
US8504416B2 (en) 2002-06-27 2013-08-06 The New York Times Company Method for online session advertising
EP1385310A3 (en) * 2002-06-28 2011-01-05 Microsoft Corporation System and method for providing content-oriented services to content providers and content consumers
US8799072B2 (en) * 2002-07-25 2014-08-05 Google Inc. Method and system for providing filtered and/or masked advertisements over the internet
US20120016744A1 (en) * 2002-07-25 2012-01-19 Google Inc. Method and System for Providing Filtered and/or Masked Advertisements Over the Internet
AU2003254136B2 (en) * 2002-07-25 2009-12-03 Google Llc Method/system providing filtered/masked internet advertisements
US8050970B2 (en) 2002-07-25 2011-11-01 Google Inc. Method and system for providing filtered and/or masked advertisements over the internet
WO2004027669A1 (en) * 2002-09-18 2004-04-01 Nexcode System Co. Ltd. Characteristic-of-place based advertisement system using wide area network and operating method thereof
US10991005B2 (en) 2002-09-24 2021-04-27 Google Llc Methods and apparatus for serving relevant advertisements
US8086559B2 (en) 2002-09-24 2011-12-27 Google, Inc. Serving content-relevant advertisements with client-side device support
US9659309B2 (en) 2002-09-24 2017-05-23 Google Inc. Suggesting and/or providing ad serving constraint information
US7716161B2 (en) 2002-09-24 2010-05-11 Google, Inc, Methods and apparatus for serving relevant advertisements
US9799052B2 (en) 2002-09-24 2017-10-24 Google Inc. Methods and apparatus for serving relevant advertisements
US10198746B2 (en) 2002-09-24 2019-02-05 Google Llc Methods and apparatus for serving relevant advertisements
US7734624B2 (en) 2002-09-24 2010-06-08 Google, Inc. Serving advertisements based on content
US9152718B2 (en) 2002-09-24 2015-10-06 Google Inc. Serving advertisements based on content
US10482503B2 (en) 2002-09-24 2019-11-19 Google Llc Suggesting and/or providing ad serving constraint information
US10949881B2 (en) 2002-09-24 2021-03-16 Google Llc Suggesting and/or providing ad serving constraint information
US8306908B1 (en) 2002-12-31 2012-11-06 West Corporation Methods and apparatus for intelligent selection of goods and services in telephonic and electronic commerce
US10332160B2 (en) 2003-02-28 2019-06-25 Google Llc Identifying related information given content and/or presenting related information in association with content-related advertisements
US9672525B2 (en) 2003-02-28 2017-06-06 Google Inc. Identifying related information given content and/or presenting related information in association with content-related advertisements
US8140965B2 (en) 2003-02-28 2012-03-20 Google, Inc. Identifying related information given content and/or presenting related information in association with content-related advertisements
US10572911B2 (en) 2003-02-28 2020-02-25 Google Llc Identifying related information given content and/or presenting related information in association with content-related advertisements
US11367112B2 (en) 2003-02-28 2022-06-21 Google Llc Identifying related information given content and/or presenting related information in association with content-related advertisements
US8712857B1 (en) 2003-03-31 2014-04-29 Tuxis Technologies Llc Methods and apparatus for intelligent selection of goods and services in mobile commerce
US9058395B2 (en) 2003-05-30 2015-06-16 Microsoft Technology Licensing, Llc Resolving queries based on automatic determination of requestor geographic location
US8352499B2 (en) 2003-06-02 2013-01-08 Google Inc. Serving advertisements using user request information and user information
US8090706B2 (en) 2003-06-30 2012-01-03 Google, Inc. Rendering advertisements with documents having one or more topics using user topic interest information
US8595071B2 (en) 2003-06-30 2013-11-26 Google Inc. Using enhanced ad features to increase competition in online advertising
US7647299B2 (en) 2003-06-30 2010-01-12 Google, Inc. Serving advertisements using a search of advertiser web information
US7257585B2 (en) 2003-07-02 2007-08-14 Vibrant Media Limited Method and system for augmenting web content
EP2315140A1 (en) * 2003-07-02 2011-04-27 Vibrant Media Limited Method and system for hyperlinking web content
US8122014B2 (en) 2003-07-02 2012-02-21 Vibrant Media, Inc. Layered augmentation for web content
EP1652029A4 (en) * 2003-07-02 2006-09-13 Vibrant Media Ltd Method and system for augmenting web content
EP1652029A2 (en) * 2003-07-02 2006-05-03 Vibrant Media Limited Method and system for augmenting web content
US7260783B1 (en) 2003-07-08 2007-08-21 Falk Esolutions Gmbh System and method for delivering targeted content
US8380572B2 (en) 2003-08-25 2013-02-19 Yahoo! Inc. Selecting among advertisements competing for a slot associated with electronic content delivered over a network
US7299195B1 (en) 2003-09-02 2007-11-20 Revenue Science, Inc. Accepting bids to advertise to users performing a specific activity
US8239263B2 (en) 2003-09-05 2012-08-07 Google Inc. Identifying and/or blocking ads such as document-specific competitive ads
US8412574B2 (en) 2003-09-05 2013-04-02 Google Inc. Identifying and/or blocking ads such as document-specific competitive ads
US8903899B1 (en) 2003-09-10 2014-12-02 Google Inc. Reduction of perceived DNS lookup latency
US8285781B1 (en) 2003-09-10 2012-10-09 Google Inc. Reduction of perceived DNS lookup latency
US8504613B1 (en) 2003-09-10 2013-08-06 Google Inc. Reduction of perceived DNS lookup latency
US8533260B1 (en) 2003-09-10 2013-09-10 Google Inc. Reduction of perceived DNS lookup latency
US8380745B1 (en) 2003-11-13 2013-02-19 AudienceScience Inc. Natural language search for audience
US8024323B1 (en) 2003-11-13 2011-09-20 AudienceScience Inc. Natural language search for audience
US11135426B2 (en) 2003-12-03 2021-10-05 Google Llc Personalized network searching
US11147970B2 (en) 2003-12-03 2021-10-19 Google Llc Personalized network searching
US11420059B1 (en) 2003-12-03 2022-08-23 Google Llc Personalized network searching
US11369792B2 (en) 2003-12-03 2022-06-28 Google Llc Personalized network searching
US8166017B2 (en) 2003-12-03 2012-04-24 Google Inc. Personalized network searching
US10398898B2 (en) 2003-12-03 2019-09-03 Google Llc Personalized network searching
US9679067B2 (en) 2003-12-03 2017-06-13 Google Inc. Personalized network searching
US10140375B2 (en) 2003-12-03 2018-11-27 Google Llc Personalized network searching
US8015170B2 (en) 2003-12-03 2011-09-06 Google Inc. Personalized network searching
US8150830B2 (en) 2003-12-03 2012-04-03 Google Inc. Personalized network searching
US11547853B2 (en) 2003-12-03 2023-01-10 Google Llc Personalized network searching
US8612415B2 (en) 2003-12-03 2013-12-17 Google Inc. Personalized network searching
US8886626B2 (en) 2003-12-03 2014-11-11 Google Inc. Personalized network searching
US7899801B1 (en) 2003-12-10 2011-03-01 Google, Inc. Determining content to be provided by an entity for rendering via a resource in a target document or notifying an alternative entity of the availability of the resource
US10580033B2 (en) 2003-12-31 2020-03-03 Google Llc Suggesting and/or providing targeting criteria for advertisements
US8392249B2 (en) 2003-12-31 2013-03-05 Google Inc. Suggesting and/or providing targeting criteria for advertisements
US9235849B2 (en) 2003-12-31 2016-01-12 Google Inc. Generating user information for use in targeted advertising
US7895077B2 (en) * 2004-03-11 2011-02-22 Yahoo! Inc. Predicting inventory availability and prioritizing the serving of competing advertisements based on contract value
US8407094B1 (en) 2004-03-31 2013-03-26 Google Inc. Providing links to related advertisements
US11775595B1 (en) 2004-05-10 2023-10-03 Google Llc Method and system for mining image searches to associate images with concepts
US11681761B1 (en) 2004-05-10 2023-06-20 Google Llc Method and system for mining image searches to associate images with concepts
US11409812B1 (en) 2004-05-10 2022-08-09 Google Llc Method and system for mining image searches to associate images with concepts
US10146776B1 (en) 2004-05-10 2018-12-04 Google Llc Method and system for mining image searches to associate images with concepts
US9141964B1 (en) 2004-05-10 2015-09-22 Google Inc. Method and system for automatically creating an image advertisement
US8849070B2 (en) 2004-05-10 2014-09-30 Google Inc. Method and system for providing targeted documents based on concepts automatically identified therein
US8520982B2 (en) 2004-05-10 2013-08-27 Google Inc. Method and system for providing targeted documents based on concepts automatically identified therein
US9563646B1 (en) 2004-05-10 2017-02-07 Google Inc. Method and system for mining image searches to associate images with concepts
US8064736B2 (en) 2004-05-10 2011-11-22 Google Inc. Method and system for providing targeted documents based on concepts automatically identified therein
US7386485B1 (en) * 2004-06-25 2008-06-10 West Corporation Method and system for providing offers in real time to prospective customers
WO2006007575A2 (en) * 2004-07-01 2006-01-19 Aol Llc Analyzing a query log for use in managing category-specific electronic content
US8768908B2 (en) 2004-07-01 2014-07-01 Facebook, Inc. Query disambiguation
US7379949B2 (en) 2004-07-01 2008-05-27 Aol Llc Analyzing a query log for use in managing category-specific electronic content
WO2006007575A3 (en) * 2004-07-01 2006-05-18 America Online Inc Analyzing a query log for use in managing category-specific electronic content
US8073867B2 (en) 2004-07-01 2011-12-06 Aol Inc. Analyzing a query log for use in managing category-specific electronic content
US9183250B2 (en) 2004-07-01 2015-11-10 Facebook, Inc. Query disambiguation
US8082178B2 (en) 2004-07-15 2011-12-20 Google Inc. System and method for managing advertising campaign data
US7751804B2 (en) 2004-07-23 2010-07-06 Wideorbit, Inc. Dynamic creation, selection, and scheduling of radio frequency communications
US8666816B1 (en) 2004-09-14 2014-03-04 Google Inc. Method and system for access point customization
WO2006039004A1 (en) * 2004-09-30 2006-04-13 Google, Inc. Method and system for processing queries initiated by users of mobile devices
US8769567B1 (en) 2004-09-30 2014-07-01 Tuxis Technologies Llc Methods, media, and apparatus for intelligent selection of items encoded onto portable machine-readable entertainment media
US7643822B2 (en) 2004-09-30 2010-01-05 Google Inc. Method and system for processing queries initiated by users of mobile devices
US9451428B2 (en) 2004-09-30 2016-09-20 Google Inc. Method and system for processing queries initiated by users of mobile devices
US8306511B2 (en) 2004-09-30 2012-11-06 Google Inc. Method and system for processing queries initiated by users of mobile devices
US8805345B2 (en) 2004-09-30 2014-08-12 Google Inc. Method and system for processing queries initiated by users of mobile devices
US7801899B1 (en) 2004-10-01 2010-09-21 Google Inc. Mixing items, such as ad targeting keyword suggestions, from heterogeneous sources
US10257208B1 (en) 2004-12-02 2019-04-09 Google Llc Method and system for using a network analysis system to verify content on a website
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
US8135737B2 (en) 2004-12-29 2012-03-13 Aol Inc. Query routing
US11093973B2 (en) 2004-12-30 2021-08-17 Google Llc Ad rendering parameters, such as size, style, and/or layout, of online ads
US8423413B2 (en) 2004-12-30 2013-04-16 Google Inc. Advertisement approval
US10380640B2 (en) 2004-12-30 2019-08-13 Google Llc Ad rendering parameters, such as size, style, and/or layout, of online ads
US9852225B2 (en) 2004-12-30 2017-12-26 Google Inc. Associating features with entities, such as categories of web page documents, and/or weighting such features
US8666820B2 (en) 2004-12-30 2014-03-04 Google Inc. Ad rendering parameters, such as size, style, and/or layout, of online ads
US9311715B2 (en) 2005-02-08 2016-04-12 Microsoft Technology Licensing, Llc Method and system to segment depth images and to detect shapes in three-dimensionally acquired data
US9165368B2 (en) 2005-02-08 2015-10-20 Microsoft Technology Licensing, Llc Method and system to segment depth images and to detect shapes in three-dimensionally acquired data
US9002725B1 (en) 2005-04-20 2015-04-07 Google Inc. System and method for targeting information based on message content
US10387917B2 (en) 2005-04-22 2019-08-20 Google Llc Suggesting targeting information for ads; such as websites and/or categories of websites for example
US11037198B2 (en) 2005-04-22 2021-06-15 Google Llc Suggesting targeting information for ads, such as websites and/or categories of websites for example
US9971813B2 (en) 2005-04-22 2018-05-15 Google Llc Categorizing objects, such as documents and/or clusters, with respect to a taxonomy and data structures derived from such categorization
US8468048B2 (en) 2005-04-22 2013-06-18 Google Inc. Suggesting targeting information for ads, such as websites and/or categories of websites for example
US8229957B2 (en) 2005-04-22 2012-07-24 Google, Inc. Categorizing objects, such as documents and/or clusters, with respect to a taxonomy and data structures derived from such categorization
US7725502B1 (en) 2005-06-15 2010-05-25 Google Inc. Time-multiplexing documents based on preferences or relatedness
US8862568B2 (en) 2005-06-15 2014-10-14 Google Inc. Time-multiplexing documents based on preferences or relatedness
US8464151B2 (en) 2005-08-09 2013-06-11 Canon Kabushiki Kaisha Layout of field area where merchandise and advertising information are inserted or determining position and size of area where merchandise and advertising information flow
WO2007023321A1 (en) * 2005-08-25 2007-03-01 Tero Ltd Method and system for location based distribution of content on the internet
US8407665B1 (en) 2005-11-16 2013-03-26 Google Inc. Rendering contextual related content with a document, such as on a web page for example
US9703886B2 (en) 2005-11-29 2017-07-11 Google Inc. Formatting a user network site based on user preferences and format performance data
US7603619B2 (en) 2005-11-29 2009-10-13 Google Inc. Formatting a user network site based on user preferences and format performance data
US7949714B1 (en) 2005-12-05 2011-05-24 Google Inc. System and method for targeting advertisements or other information using user geographical information
US9251520B2 (en) 2006-02-22 2016-02-02 Google Inc. Distributing mobile advertisements
US10380651B2 (en) 2006-02-22 2019-08-13 Google Llc Distributing mobile advertisements
US8326686B2 (en) 2006-03-30 2012-12-04 Google Inc. Automatically generating ads and ad-serving index
US7996777B2 (en) 2006-04-20 2011-08-09 Google Inc. Syndicated trackable ad content
US8745226B2 (en) 2006-05-02 2014-06-03 Google Inc. Customization of content and advertisements in publications
WO2007133371A1 (en) * 2006-05-10 2007-11-22 Microsoft Corporation Agent for discovering relevant content
US10475073B2 (en) 2006-06-16 2019-11-12 Almondnet, Inc. Condition-based, privacy-sensitive selection method of directing electronic, profile-based advertisements to selected internet websites
US9830615B2 (en) 2006-06-16 2017-11-28 Almondnet, Inc. Electronic ad direction through a computer system controlling ad space on multiple media properties based on a viewer's previous website visit
US10839423B2 (en) 2006-06-16 2020-11-17 Almondnet, Inc. Condition-based method of directing electronic advertisements for display in ad space within streaming video based on website visits
US10134054B2 (en) 2006-06-16 2018-11-20 Almondnet, Inc. Condition-based, privacy-sensitive media property selection method of directing electronic, profile-based advertisements to other internet media properties
US11301898B2 (en) 2006-06-16 2022-04-12 Almondnet, Inc. Condition-based method of directing electronic profile-based advertisements for display in ad space in internet websites
US11610226B2 (en) 2006-06-16 2023-03-21 Almondnet, Inc. Condition-based method of directing electronic profile-based advertisements for display in ad space in video streams
US11836759B2 (en) 2006-06-16 2023-12-05 Almondnet, Inc. Computer systems programmed to perform condition-based methods of directing electronic profile-based advertisements for display in ad space
US11093970B2 (en) 2006-06-19 2021-08-17 Datonics. LLC Providing collected profiles to ad networks having specified interests
US10984445B2 (en) 2006-06-19 2021-04-20 Datonics, Llc Providing collected profiles to media properties having specified interests
WO2008002335A1 (en) * 2006-06-28 2008-01-03 Microsoft Corporation Online keyword buying, advertisement and marketing
US8942993B2 (en) 2006-06-30 2015-01-27 Google Inc. Profile advertisements
US8122018B2 (en) 2006-08-09 2012-02-21 Google Inc. System and method for generating creatives
US7644315B2 (en) 2006-10-30 2010-01-05 Google Inc. Diagnostics and error reporting for common tagging issues
US8010407B1 (en) 2006-11-14 2011-08-30 Google Inc. Business finder for locating local businesses to contact
US9256892B2 (en) 2006-11-30 2016-02-09 Google Inc. Content selection using performance metrics
US8768740B2 (en) 2006-11-30 2014-07-01 Google Inc. Publisher preference system for content selection
US8249908B2 (en) 2006-11-30 2012-08-21 Google Inc. Targeted content request
US8744911B2 (en) 2006-12-29 2014-06-03 Google Inc. Network node ad targeting
US8438062B2 (en) 2006-12-29 2013-05-07 Google Inc. Network node ad targeting
US9607317B2 (en) 2007-01-05 2017-03-28 Google Inc. Keyword-based content suggestions
US8463830B2 (en) 2007-01-05 2013-06-11 Google Inc. Keyword-based content suggestions
US7970891B1 (en) 2007-01-17 2011-06-28 Google Inc. Tracking links in web browsers
US8275662B2 (en) 2007-01-19 2012-09-25 Francap Corporation Method and apparatus for generating geo-targeted message with search results
US7657514B2 (en) 2007-01-30 2010-02-02 Google Inc. Content identification expansion
US8171011B2 (en) 2007-01-30 2012-05-01 Google Inc. Content identification expansion
US9953338B1 (en) 2007-03-29 2018-04-24 Google Inc. Structured content views of web page content
US7730017B2 (en) 2007-03-30 2010-06-01 Google Inc. Open profile content identification
US8321462B2 (en) 2007-03-30 2012-11-27 Google Inc. Custodian based content identification
US8341169B2 (en) 2007-03-30 2012-12-25 Google Inc. Open profile content identification
US8386311B2 (en) 2007-04-13 2013-02-26 Google Inc. Estimating off-line advertising impressions
US9082133B2 (en) 2007-04-13 2015-07-14 Google Inc. Estimating off-line advertising impressions
US9813778B2 (en) 2007-04-17 2017-11-07 Intent IQ, LLC Targeted television advertisements based on online behavior
US8572114B1 (en) 2007-04-17 2013-10-29 Google Inc. Determining proximity to topics of advertisements
US11303973B2 (en) 2007-04-17 2022-04-12 Intent IQ, LLC Targeted television advertisements based on online behavior
US10178442B2 (en) 2007-04-17 2019-01-08 Intent IQ, LLC Targeted television advertisements based on online behavior
US8572115B2 (en) 2007-04-17 2013-10-29 Google Inc. Identifying negative keywords associated with advertisements
US8086624B1 (en) 2007-04-17 2011-12-27 Google Inc. Determining proximity to topics of advertisements
US8549032B1 (en) 2007-04-17 2013-10-01 Google Inc. Determining proximity to topics of advertisements
US11589136B2 (en) 2007-04-17 2023-02-21 Intent IQ, LLC Targeted television advertisements based on online behavior
US11564015B2 (en) 2007-04-17 2023-01-24 Intent IQ, LLC Targeted television advertisements based on online behavior
US11805300B2 (en) 2007-04-17 2023-10-31 Intent IQ, LLC System for taking action using cross-device profile information
US10715878B2 (en) 2007-04-17 2020-07-14 Intent IQ, LLC Targeted television advertisements based on online behavior
US8229942B1 (en) 2007-04-17 2012-07-24 Google Inc. Identifying negative keywords associated with advertisements
US8055664B2 (en) 2007-05-01 2011-11-08 Google Inc. Inferring user interests
US8326806B1 (en) 2007-05-11 2012-12-04 Google Inc. Content item parameter filter
US8577181B1 (en) 2007-05-31 2013-11-05 Google Inc. Determining content to be displayed
US9047621B1 (en) 2007-06-14 2015-06-02 Google Inc. Content selection filter
JP2007287170A (en) * 2007-06-18 2007-11-01 Sharp Corp Advertising device, advertising method, and recording medium recording information processing program
US10497009B2 (en) 2007-07-17 2019-12-03 Mavenir Systems Oy Delivery of advertisements in mobile advertising system
WO2009018182A3 (en) * 2007-08-01 2009-08-13 Microsoft Corp Server based control of ad placement in client software
WO2009018182A2 (en) * 2007-08-01 2009-02-05 Microsoft Corporation Server based control of ad placement in client software
US9235850B1 (en) 2007-08-13 2016-01-12 Google Inc. Adaptation of web-based text ads to mobile devices
US8086725B1 (en) 2007-08-20 2011-12-27 Google Inc. Identifying associated systems such as advertising networks
US8782129B1 (en) 2007-08-20 2014-07-15 Google Inc. Identifying associated systems such as advertising networks
US9064024B2 (en) 2007-08-21 2015-06-23 Google Inc. Bundle generation
US9569523B2 (en) 2007-08-21 2017-02-14 Google Inc. Bundle generation
US8392246B2 (en) 2007-08-30 2013-03-05 Google Inc. Advertiser ad review
US8392241B2 (en) 2007-08-30 2013-03-05 Google Inc. Publisher ad review
US8166046B1 (en) 2007-09-11 2012-04-24 Google Inc. Link filter
US9679309B2 (en) 2007-09-12 2017-06-13 Google Inc. Placement attribute targeting
US9454776B2 (en) 2007-09-12 2016-09-27 Google Inc. Placement attribute targeting
US9058608B2 (en) 2007-09-12 2015-06-16 Google Inc. Placement attribute targeting
US8355174B1 (en) 2007-09-17 2013-01-15 Google Inc. Automated mechanical approval of advertisement copy
US8230324B1 (en) 2007-09-17 2012-07-24 Google Inc. Ad size capture tool for publications
US8583488B2 (en) 2007-09-17 2013-11-12 Google Inc. Generating advertisements using user assets
US8189231B1 (en) 2007-09-17 2012-05-29 Google Inc. Automated mechanical approval of advertisement copy
US10410242B1 (en) 2007-10-09 2019-09-10 Google Llc Keyword helper
US8600802B1 (en) 2007-10-16 2013-12-03 Google Inc. Advertisement marketplace
US7945474B1 (en) 2007-10-19 2011-05-17 Google Inc. Unified automated billing
US8311875B1 (en) 2007-10-30 2012-11-13 Google Inc. Content item location arrangement
US7853622B1 (en) 2007-11-01 2010-12-14 Google Inc. Video-related recommendations using link structure
US9355300B1 (en) 2007-11-02 2016-05-31 Google Inc. Inferring the gender of a face in an image
US8041082B1 (en) 2007-11-02 2011-10-18 Google Inc. Inferring the gender of a face in an image
US10009310B1 (en) 2007-11-06 2018-06-26 Google Llc Content sharing based on social graphing
US9660951B1 (en) 2007-11-06 2017-05-23 Google Inc. Content sharing based on social graphing
US8924465B1 (en) 2007-11-06 2014-12-30 Google Inc. Content sharing based on social graphing
US7853558B2 (en) 2007-11-09 2010-12-14 Vibrant Media, Inc. Intelligent augmentation of media content
US8131767B2 (en) 2007-11-09 2012-03-06 Vibrant Media, Inc. Intelligent augmentation of media content
US9128909B2 (en) 2007-11-09 2015-09-08 Vibrant Media, Inc. Intelligent augmentation of media content
US8831190B2 (en) 2007-11-26 2014-09-09 Google Inc. Telephone number-based advertising
US8218741B2 (en) 2007-11-26 2012-07-10 Google Inc. Telephone number-based advertising
US8793238B1 (en) 2007-12-20 2014-07-29 Google Inc. Organization system for ad campaigns
US8180760B1 (en) 2007-12-20 2012-05-15 Google Inc. Organization system for ad campaigns
US8392396B1 (en) 2007-12-20 2013-03-05 Google Inc. Organization system for ad campaigns
US8712985B1 (en) 2008-01-04 2014-04-29 Google Inc. Social network user data advertising
US8380691B1 (en) 2008-01-04 2013-02-19 Google Inc. Social network user data advertising
US8135613B2 (en) 2008-01-15 2012-03-13 Google Inc. Ringback advertising
US11776018B2 (en) 2008-01-18 2023-10-03 Google Llc Universal ad creative
US11436643B2 (en) 2008-01-18 2022-09-06 Google Llc Universal creative system and method for generating multiple different creatives using a same set of input data
US8024316B2 (en) * 2008-01-30 2011-09-20 Google Inc. Providing content using stored query information
US8341138B2 (en) 2008-01-30 2012-12-25 Google Inc. Providing content using stored query information
US10198744B2 (en) 2008-02-04 2019-02-05 Google Llc User-targeted advertising
US9824372B1 (en) 2008-02-11 2017-11-21 Google Llc Associating advertisements with videos
US10885549B1 (en) 2008-03-20 2021-01-05 Google Llc Targeted advertising using temporal analysis of user specific data
US11816699B1 (en) 2008-03-20 2023-11-14 Google Llc Targeted advertising using temporal analysis of user specific data
US8626575B1 (en) 2008-03-20 2014-01-07 Google Inc. Targeted advertising using temporal analysis of user specific data
US9691084B1 (en) 2008-03-20 2017-06-27 Google Inc. Targeted advertising using temporal analysis of user specific data
US8255948B1 (en) 2008-04-23 2012-08-28 Google Inc. Demographic classifiers from media content
US8739207B1 (en) 2008-04-23 2014-05-27 Google Inc. Demographic classifiers from media content
US20090271254A1 (en) * 2008-04-24 2009-10-29 Microsoft Corporation Advertisements driven by user
US8571923B2 (en) * 2008-04-24 2013-10-29 Microsoft Corporation Advertisements driven by user
US8117067B2 (en) 2008-06-13 2012-02-14 Google Inc. Achieving advertising campaign goals
US7961986B1 (en) 2008-06-30 2011-06-14 Google Inc. Ranking of images and image labels
US8650107B1 (en) 2008-07-23 2014-02-11 Google Inc. Advertisement customization
US8165915B1 (en) 2008-07-23 2012-04-24 Google Inc. Advertisement customization
US8374935B1 (en) 2008-07-23 2013-02-12 Google Inc. Advertisement customization
US9131273B1 (en) 2008-10-16 2015-09-08 Google Inc. Synchronized programming
US8219638B2 (en) 2008-12-15 2012-07-10 Google Inc. Editing information configured for use in selecting content regarding at least one content provider
US10817904B2 (en) 2008-12-15 2020-10-27 Google Llc Controlling content distribution
US11228663B2 (en) 2008-12-15 2022-01-18 Google Llc Controlling content distribution
US9396458B2 (en) 2008-12-15 2016-07-19 Google Inc. Controlling content distribution
US11201952B2 (en) 2008-12-15 2021-12-14 Google Llc Controlling content distribution
US9799050B2 (en) 2008-12-15 2017-10-24 Google Inc. Controlling content distribution
US10559006B2 (en) 2008-12-15 2020-02-11 Google Llc Controlling content distribution
US8335712B1 (en) 2009-04-06 2012-12-18 Google Inc. Minimizing ad production costs for print advertisers
US9338047B1 (en) 2009-10-01 2016-05-10 Google Inc. Detecting content on a social network using browsing patterns
US9152708B1 (en) 2009-12-14 2015-10-06 Google Inc. Target-video specific co-watched video clusters
US8583484B1 (en) 2010-01-29 2013-11-12 Google Inc. Frequency optimization of advertisement insertion in media streams
US10748174B1 (en) 2010-01-29 2020-08-18 Google Llc Frequency optimization of advertisement insertion in media streams
US10321202B2 (en) 2010-02-09 2019-06-11 Google Llc Customized variable television advertising generated from a television advertising template
US10499117B2 (en) 2010-02-09 2019-12-03 Google Llc Customized variable television advertising generated from a television advertising template
US8856125B1 (en) 2010-02-26 2014-10-07 Google Inc. Non-text content item search
US8275771B1 (en) 2010-02-26 2012-09-25 Google Inc. Non-text content item search
US8583483B2 (en) * 2010-05-21 2013-11-12 Microsoft Corporation Online platform for web advertisement competition
US20110288928A1 (en) * 2010-05-21 2011-11-24 Microsoft Corporation Online platform for web advertisement competition
US9922334B1 (en) 2012-04-06 2018-03-20 Google Llc Providing an advertisement based on a minimum number of exposures
US10152723B2 (en) 2012-05-23 2018-12-11 Google Llc Methods and systems for identifying new computers and providing matching services
US10776830B2 (en) 2012-05-23 2020-09-15 Google Llc Methods and systems for identifying new computers and providing matching services
US9430779B1 (en) 2012-07-26 2016-08-30 Google Inc. Determining visual attributes of content items
US10650066B2 (en) 2013-01-31 2020-05-12 Google Llc Enhancing sitelinks with creative content
US10776435B2 (en) 2013-01-31 2020-09-15 Google Llc Canonicalized online document sitelink generation
US10735552B2 (en) 2013-01-31 2020-08-04 Google Llc Secondary transmissions of packetized data
US11386466B2 (en) 2013-10-22 2022-07-12 Google Llc Content item selection criteria generation
US11381609B2 (en) 2016-12-30 2022-07-05 Google Llc Multimodal transmission of packetized data
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
US10748541B2 (en) 2016-12-30 2020-08-18 Google Llc Multimodal transmission of packetized data
US11705121B2 (en) 2016-12-30 2023-07-18 Google Llc Multimodal transmission of packetized data
US10535348B2 (en) 2016-12-30 2020-01-14 Google Llc Multimodal transmission of packetized data
US11087760B2 (en) 2016-12-30 2021-08-10 Google, Llc Multimodal transmission of packetized data
US10032452B1 (en) 2016-12-30 2018-07-24 Google Llc Multimodal transmission of packetized data
US11682383B2 (en) 2017-02-14 2023-06-20 Google Llc Language model biasing system
US10311860B2 (en) 2017-02-14 2019-06-04 Google Llc Language model biasing system
US11037551B2 (en) 2017-02-14 2021-06-15 Google Llc Language model biasing system

Also Published As

Publication number Publication date
TW340283B (en) 1998-09-11
JP2001525951A (en) 2001-12-11
KR19990072063A (en) 1999-09-27
CA2240009A1 (en) 1997-06-12
EP0954797A1 (en) 1999-11-10

Similar Documents

Publication Publication Date Title
WO1997021183A1 (en) Method and system for placing advertisements in a computer network
AU769955C (en) System and method for influencing a position on a search result list generated by a computer network search engine
US7835943B2 (en) System and method for providing place and price protection in a search result list generated by a computer network search engine
US7110993B2 (en) System and method for influencing a position on a search result list generated by a computer network search engine
US5918014A (en) Automated collaborative filtering in world wide web advertising
US6251016B1 (en) Information offering system for providing a lottery on a network
US7065500B2 (en) Automatic advertiser notification for a system for providing place and price protection in a search result list generated by a computer network search engine
US7536385B1 (en) System and method for communicating information relating to a network resource
US20040133469A1 (en) System and method of promote website using Cycle Hits and Hits History
US20070143296A1 (en) Taxonomy-based method and system for targeted advertising
MXPA97005718A (en) Advertising of interactive multimedia and electronic commerce in a hyperte network
AU2003204104A1 (en) Use of Extensible Markup Language in a System and Method for Influencing a Position on a Search Result List Generated by a Computer Network Search Engine
WO2003102738A2 (en) Method and system for targeted internet search engine
JP2007504556A (en) How to determine and / or use location information in an advertising system
US20100153177A1 (en) System for determining the intrinsic value provided to internet users by selected web sites
US20100153178A1 (en) System for determining the intrinsic value provided to internet users by selected web sites
KR20040025007A (en) Characteristic-of-place based advertisement system using wide area network and operating method thereof
US20020052757A1 (en) Network data sharing system
JP2002049790A (en) System and method for auction transaction
WO2002035421A1 (en) Method and apparatus for recognizing electronic commerce web pages and sites
US20020026352A1 (en) Method and apparatus for adjusting a condition for using a collective site
JP2002032398A (en) Advertisement system
KR20040092239A (en) Method and system for generating a search result based on keyword sale
US20030023480A1 (en) Advertising system on the internet
Srisung Comparative evaluation between traditional advertising and internet advertising

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): CA JP KR

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH DE DK ES FI FR GB GR IE IT LU MC NL PT SE

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
121 Ep: the epo has been informed by wipo that ep was designated in this application
ENP Entry into the national phase

Ref document number: 2240009

Country of ref document: CA

Ref country code: CA

Ref document number: 2240009

Kind code of ref document: A

Format of ref document f/p: F

WWE Wipo information: entry into national phase

Ref document number: 1019980704366

Country of ref document: KR

WWE Wipo information: entry into national phase

Ref document number: 1996943640

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 1019980704366

Country of ref document: KR

WWP Wipo information: published in national office

Ref document number: 1996943640

Country of ref document: EP

WWR Wipo information: refused in national office

Ref document number: 1019980704366

Country of ref document: KR

WWW Wipo information: withdrawn in national office

Ref document number: 1996943640

Country of ref document: EP