Abstract:
Systems, methods, and apparatus, including computer program products, for configuring online properties, such as content pages of a website, through an online user interface. A system generates the online user interface and receives, over a network and through the online user interface presented by a client device, a request to insert a restricted third party file into a user&#39;s online property. The online user interface is updated to inform the user that inclusion of the third party file in the user&#39;s online property is restricted and to provide the user with options for satisfying requirements for including the third party file in the user&#39;s online property. In response to detecting a user selection of at least one of the options, the restricted third party file is received from a content repository, and is inserted into the user&#39;s online property.

Description:
BACKGROUND 
       [0001]    The subject matter of this specification is generally related to online advertising. 
         [0002]    Online communities allow users to share photos, journals, interests, and other user-generated content with a network of mutual friends on a communications network, e.g., using for example the World Wide Web (“the Web”). Users can sign-up or join the community and create a profile. A profile can be a space in the community (e.g., on the Web) where a user can describe themselves, hobbies and interests. Profiles can include mechanisms for uploading content, such as pictures, videos and other content. Users can create a personal network and invite others to join the network. Some online communities provide a place on the Web where people can share personal videos. 
         [0003]    Participants in the online communities or in the companies that administer the online communities can use ads to generate revenue. Advertisers can target advertising to users based on the user&#39;s profile or content posted on the user&#39;s space. Successfully targeting ads to users of online communities can be challenging. 
       SUMMARY 
       [0004]    In general, one aspect of the subject matter described in this specification can be embodied in methods that include the actions of receiving input from a user specifying one or more content items for inclusion in a property; determining whether the user satisfies one or more user criteria and whether the specified content items satisfy one or more content criteria; and if the user satisfies the user criteria and the specified content items satisfy the content criteria, then receiving input identifying one or more sponsors, and presenting the specified content items and content provided by the identified sponsors in the property. Other embodiments of this aspect include corresponding systems, apparatus, computer program products, and computer readable media. 
         [0005]    Particular embodiments of the subject matter described in this specification can be implemented to realize one or more of the following advantages. Users can obtain content for sharing in a social network without fear of liability for copyright infringement. Content providers are compensated for distribution of their content in social networks. Content providers can expand audiences and generate publicity for their content. Advertisers can expand audiences for their advertisements. 
         [0006]    The details of one or more embodiments of the subject matter described in this specification are set forth in the accompanying drawings and the description below. Other features, aspects, and advantages of the subject matter will become apparent from the description, the drawings, and the claims. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0007]      FIG. 1  is a block diagram of an example user-specified online advertising system. 
           [0008]      FIG. 2  illustrates an example user interface for an online property that allows a user to select and post content. 
           [0009]      FIG. 3  illustrates an example user interface for allowing a user to add or change media content. 
           [0010]      FIG. 4  illustrates an example user interface for allowing a user to select an advertiser associated with video content. 
           [0011]      FIG. 5  illustrates an example user interface for allowing a user to select an ad associated with video content and an advertiser. 
           [0012]      FIG. 6  illustrates an example user interface for an online property that allows a user to select and post content to their profile after the user has added sponsored content to their profile. 
           [0013]      FIG. 7  is a flow diagram of an example user-specified online advertising process. 
           [0014]      FIG. 8  is a block diagram of an example ad targeting system architecture. 
           [0015]    Like reference numbers and designations in the various drawings indicate like elements. 
       
    
    
     DETAILED DESCRIPTION 
     Advertising System Overview 
       [0016]      FIG. 1  is a block diagram of an example user-specified online advertising system  100 . 
         [0017]    The system  100  includes advertisers  102 , ad targeting system  104 , content providers  106 , users  108  and online properties  112 . Each of these entities can be coupled to a network  110  (e.g., the Internet) using one or more communication channels (e.g., wireless, optical, Ethernet). 
         [0018]    In some implementations, the ad targeting system  104  is an ad serving program run by an ad network service provider. Website owners can enroll in a program to enable text, image and video advertisements on their sites. These ads can be administered by the ad targeting system  104  and generate revenue on a per-click, per-thousand-impressions, cost-per-action or other basis. In some implementations, the ad targeting system  104  utilizes search technology to serve ads based on website content, the user&#39;s geographical location and other factors. The ad targeting system  104  can provide an online environment with user interfaces for facilitating interaction between advertisers  102 , content providers  106  and users  108 . The ad targeting system  104  is operatively coupled to a storage device  114  for storing information associated with ad targeting. 
         [0019]    The online properties  112  can be, for example, an online service that provides users with a personal space for sharing interests, hobbies, information and content with other users. Some examples of online properties  112  include but are not limited to social networking sites and audio (e.g., music) or video sharing sites. 
         [0020]    In some implementations, users  108  select content from an inventory of content, published by content providers  106 , that is available for posting on online properties  112 , and advertisers  102  sponsor (e.g., at least partially compensate the content providers  106  for the right of) the users  108  to post the content on the online properties  112 . In some implementations, the content is restricted and licensed for posting with sponsorship. In exchange, the user authorizes one or more of the advertisers  102  to run ads in association with the user&#39;s content, e.g., in association with the user&#39;s profile or other content. Thus, the users  108  can receive access to premium content, which is at least partially paid for, provided or otherwise sponsored by the advertisers  102  that have been selected by the user. A user  108 , by posting content that is of interest to themselves and/or their personal network, can become a part of the ad targeting process. In some implementations, the user  108  has to meet one or more criteria (e.g., demographics, popularity ratings) specified by the advertisers  104 , content providers  106  and/or ad targeting system  104  before the user is allowed to post the content. 
       Exemplary User Interface for Online Property 
       [0021]      FIG. 2  illustrates an example user interface  200  for an online property that allows a user to select and post content. In the example shown, the online property provides a “personal” space in which a user can share interests, hobbies, content and other information. Other configurations for user interfaces are possible. 
         [0022]    The user interface  200  includes a management space  202 , which includes various links and/or other user interface elements for allowing the user to manage their personal space. For example, the user can edit their profile, change account settings, add/edit photos, add/change videos, manage a calendar, manage a weblog (also “blog”), manage an address book, etc. 
         [0023]    The user interface  200  can include one or more spaces for displaying information and content, such as an “Announcement” space for posting announcements, a “Bulletin” space for posting bulletins, a “Search Your Address Book” space for searching an address book, a “New Message” space for displaying new emails or Instant Messages, a “Friend” space for listing members of the user&#39;s personal network, a “New People” space for introducing new people recently added to the user&#39;s personal network, etc. 
         [0024]    In some implementations, a user can add videos and other content to their personal space. Video content can be displayed in video display  204 . In some implementations, the video display  204  displays a particular video that was added by the user to their personal space, as well as controls for controlling the playback of the displayed video. In some other implementations, the video display  204  displays a list of videos added by the user to their personal space, including information associated with the videos such as video titles, lengths, and sample frames. In some further implementations, a video is displayed in the video display  204  and a list of videos added by the user to their personal space is displayed in another area on the user interface  200 . An ad display  206  for displaying targeted advertisements that are relevant to the video content can be presented proximate to the video display  204 . For example, in  FIG. 2 , Video A is displayed in the video display  204  and Ad A is displayed in the ad display  206 . Alternatively, ads can be embedded in (e.g., prepended or appended to) or overlaid on the video content. Ads can include images, text information and/or links (e.g., a Universal Resource Locator (URL)) to resources operated by or on behalf of advertisers or other content. A system for targeting ads to video clips is described in U.S. patent application Ser. No. 11/550,388, for “Using Viewing Signals in Targeting Video Advertisements,” filed Oct. 17, 2006, which patent application is incorporated by reference herein in its entirety. 
         [0025]    In some implementations, a user can enter into a bidding process by, for example, clicking the link  210 . Some “super” users (e.g., celebrities/influencers) may have popular online properties that advertisers can bid on. In such cases, the user can enter into a revenue sharing scheme with the ad targeting service provider. For example, the “super” user can receive some portion of the advertising revenue and the ad targeting service provider can receive some portion. In some implementations, the user is compensated with a “pass” that provides the user with access to other premium content. Other compensation and revenue sharing schemes are possible. 
         [0026]    If the user wants to add or change content, e.g., a video or music, listed on (and accessible via) their personal space, the user can click on the link  208  to invoke an interface for selecting content and advertisers, as described in reference to  FIGS. 3-6 . 
       User Interfaces for Content, Advertiser, Ad Selection 
       [0027]      FIG. 3  illustrates an example user interface  300  for allowing a user to add or change media content. In the example shown, the user is adding or changing video content. The disclosed implementations are also applicable to other types of content (e.g., audio content, images, etc.). 
         [0028]    In some implementations, the user interface  300  displays thumbnail images  304  of video clips that are available for posting. The thumbnail images  304  can show sample frames from the available video clips. The user can also search for video clips by entering a query in search box  302 . In some implementations, the user selects a video by clicking on, or otherwise interacting with, the thumbnail image for the video. In some other implementations, the user selects one or more videos by checking the checkbox(es) corresponding to the desired video(s) and pressing a button, such as a “Select Video(s)” button. In the example shown, the user has selected Video A by checking the corresponding checkbox. In some implementations, when one or more videos are selected the user is presented with a user interface  400  as shown in  FIG. 4 . 
         [0029]      FIG. 4  illustrates an example user interface  400  for allowing a user to select an advertiser associated with video content. In some implementations, a video clip selected by a user is tied to one or more advertisers who have licensed the content for the targeting of ads. For example, the advertisers may have entered into a bidding process (e.g., an auction) to obtain the right for users to post content on one or more of the user&#39;s online properties. In the example shown, the user interface  400  includes a list of advertisers  402  who have one or more ads associated with the Video A. In some implementations, the advertisers selected by the user are stored in a database (e.g., database  114 ), which allows the user to post the same pre-approved content to multiple online properties associated with the user. 
         [0030]    In some implementations, the user selects one or more advertisers by checking the checkboxes corresponding to the desired advertiser(s) and then pressing a button to continue on. In the example shown, the user has selected Advertiser N by selecting the corresponding checkbox. The user can opt to simply select the advertiser(s) and not select specific ads from the advertiser(s) for placement. On the other hand, the user can opt to select specific ads for placement. If the user opts to simply select the advertiser(s) and to not select specific advertisements, they can press a button such as the “Add selected videos . . . ” button shown in  FIG. 4  to complete the selection process. On the other hand, if the user wishes to select specific advertisements, the user can press another button such as the “select ads from selected advertiser(s)” button shown in  FIG. 4  to continue through the process. In some implementations, when the user selects at least one advertiser and selects the “select ads from selected advertiser(s)” button, the user interface  500  is presented, as shown in  FIG. 5 . 
         [0031]      FIG. 5  illustrates an example user interface  500  for allowing a user to select an ad associated with video content and an advertiser. In the example shown, the user can select from various banner and graphical ads. In some implementations, when the user clicks on the desired ad, the video content and the ad can be automatically uploaded to the user&#39;s personal space and displayed in the video display  204  and ad display  206 , respectively. In some other implementations, the user selects one or more ads by checking the checkboxes corresponding to the desired ads and then pressing a button (e.g., the “Add selected video(s) and selected ad(s) to my content” button shown in  FIG. 5 ). In the example shown, the user has selected Banner Ad B by checking the corresponding checkbox. In some implementations, the user can be provided with a link or other mechanism for entering into a revenue sharing arrangement with the ad targeting service provider. While reference is made to adding ads to a user&#39;s personal space, the ads may be served from a remote location and not included as part of the personal space content. 
         [0032]      FIG. 6  illustrates an example user interface for an online property that allows a user to select and post content to their profile after the user has added sponsored content to their profile. After the user has added one or more video(s) and one or more ad(s), the added video(s) and ad(s) may be shown in the user interface  200 . In the example shown, Video B is displayed or listed in the video display  204 , and Ad B is displayed in the ad display  206 . 
       User-Specified Online Advertising Process 
       [0033]      FIG. 7  is a flow diagram of an example user-specified online advertising process  700 . 
         [0034]    The process  700  begins when input is received from a user specifying one or more content items (e.g., restricted content) for posting on one or more online properties of the user ( 702 ). For example, the user can select one or more videos in user interface  300  for posting in the user&#39;s personal space (e.g., user interface  200 ). 
         [0035]    A determination is made as to whether the user and/or the content items meets certain criteria specified by one or more advertisers, to determine the set of advertisers willing to sponsor the content items and/or the user&#39;s content/profile ( 704 ). For example, user criteria can include a requirement that the user have certain demographics (e.g., age, gender, postal code, income), or have achieved a certain popularity ranking on the online property, if applicable. In some implementations, the popularity of the user can be measured by the popularity of the user&#39;s personal space on the online property. For example, a user can be considered “popular” if the user&#39;s personal space in a social network has a number of page views or unique visitors that is above some threshold. Content criteria may include a requirement that the content matches targeting criteria of the advertisers. If the user satisfies the user criteria and the content satisfies the content criteria of at least one advertiser, the advertiser(s) whose criteria are satisfied are presented to the user. 
         [0036]    The targeting criteria of an advertiser specify the subject matter of content for which the advertiser is interested in placing ads. For example, a company advertising cars may target content that is related to cars but not content related to dining. In some implementations, an advertiser&#39;s targeting criteria can be specified by one or more keywords provided by the advertiser. The targeting keywords can be compared to words extracted from the content and/or content metadata to determine if the content satisfies the targeting criteria. 
         [0037]    Input is received from the user specifying one or more advertisers from the set of advertisers willing to sponsor the selected content ( 706 ). For example, the user, in user interface  400 , selects one or more advertisers which agreed to sponsor a video that was selected by the user for posting in his personal space. As described above, the user can simply select the advertisers or also select specific advertisements from the selected advertisers. 
         [0038]    If the user meets the criteria, then the user is provided with the content and corresponding advertising for posting on the user&#39;s one or more online properties ( 708 ). The selected content and advertisements from the selected sponsors are posted in the personal space of the user and other users who access the personal space can view the selected content and advertisements. 
         [0039]    If the user does not meet the user criteria of any advertiser or if the user-selected content does not meet the content criteria of any of the advertisers, the user is not permitted to post the selected content in his online property. 
         [0040]    In some implementations, an advertiser can refuse to sponsor a content item if particular criteria are satisfied. For example, if the user satisfies one or more user exclusion criteria (e.g., matching one or more blacklist demographics, such as an age that is below or above some range, etc.), if the online property of the user satisfies one or more property exclusion criteria (e.g., the online property of the user includes objectionable content), or if the content item selected by the user satisfies one or more content exclusion criteria (e.g., the content item includes objectionable content or other blacklisted content), the advertiser can refuse to sponsor the user, the online property, or the content item, the effect being that advertisements by the advertiser is excluded from presentation in the online property of the user and/or along with the content item. 
       Ad Targeting System Architecture 
       [0041]      FIG. 8  is a block diagram of an example ad targeting system architecture  800 . In some implementations, the architecture  800  includes one or more processors  802  (e.g., dual-core Intel® Xeon® Processors), an ad repository  804 , one or more network interfaces  806 , a content repository  809 , an optional administrative computer  808  and one or more computer-readable mediums  810  (e.g., RAM, ROM, SDRAM, hard disk, optical disk, flash memory, SAN, etc.). These components can exchange communications and data over one or more communication channels  812  (e.g., Ethernet, Enterprise Service Bus, PCI, PCI-Express, etc.), which can include various known network devices (e.g., routers, hubs, gateways, buses) and utilize software (e.g., middleware) for facilitating the transfer of data and control signals between devices. 
         [0042]    The term “computer-readable medium” refers to any medium that participates in providing instructions to a processor  802  for execution, including without limitation, non-volatile media (e.g., optical or magnetic disks), volatile media (e.g., memory) and transmission media. Transmission media includes, without limitation, coaxial cables, copper wire and fiber optics. Transmission media can also take the form of acoustic, light or radio frequency waves. 
         [0043]    The computer-readable medium  810  further includes an operating system  814  (e.g., Mac OS® server, Windows® NT server), a network communication module  816  and an ad targeting application  818 . The operating system  814  can be multi-user, multiprocessing, multitasking, multithreading, real time, etc. The operating system  814  performs basic tasks, including but not limited to: recognizing input from and providing output to the administrator computer  808 ; keeping track and managing files and directories on computer-readable mediums  810  (e.g., memory or a storage device); controlling peripheral devices (e.g., repositories  804 ,  809 ); and managing traffic on the one or more communication channels  812 . The network communications module  816  includes various components for establishing and maintaining network connections (e.g., software for implementing communication protocols, such as TCP/IP, HTTP, etc.). 
         [0044]    The computer-readable medium  810  includes an ad targeting system  818 , which is responsible for providing the features and functions described in reference to  FIGS. 2-7 . For example, the ad targeting system  818  lets advertisers specify the content they are willing to sponsor and the criteria for sponsorship. A web page server  802  is provided for generating the user interfaces described in reference to  FIGS. 2-6 . An accounting system  822  is provided for handling the accounting of payment schemes described herein (e.g., revenue sharing). 
         [0045]    The architecture  800  is one example of a suitable architecture for hosting an ad targeting application. Other architectures are possible, which include more or fewer components. For example, the ad repository  804  and content repository  809  can be the same storage device or separate storage devices. The components of architecture  800  can be located in the same facility or distributed among several facilities. The architecture  800  can be implemented in a parallel processing or peer-to-peer infrastructure or on a single device with one or more processors. The ad targeting system  818  can include multiple software components or it can be a single body of code. Some or all of the functionality of the ad targeting system  818  can be provided as a service to content providers, advertisers and users over a network. In such a case, these entities may need to install client applications. Some or all of the functionality of the ad targeting system  818  can be provided as part of a search engine and can use information gathered by the search engine to target ads. 
         [0046]    It should be appreciated that while the implementations described above describe sponsorship of content in an online environment, the above-described implementations can be adapted for other media, such as audio and print. For example, audio content can be sponsored by advertisers for inclusion into a radio broadcast or an audio podcast in exchange for insertion of advertisements provided by the advertisers into the radio broadcast or audio podcast. 
         [0047]    The disclosed and other embodiments and the functional operations described in this specification can be implemented in digital electronic circuitry, or in computer software, firmware, or hardware, including the structures disclosed in this specification and their structural equivalents, or in combinations of one or more of them. The disclosed and other embodiments can be implemented as one or more computer program products, i.e., one or more modules of computer program instructions encoded on a computer-readable medium for execution by, or to control the operation of, data processing apparatus. The computer-readable medium can be a machine-readable storage device, a machine-readable storage substrate, a memory device, a composition of matter effecting a machine-readable propagated signal, or a combination of one or more them. The term “data processing apparatus” encompasses all apparatus, devices, and machines for processing data, including by way of example a programmable processor, a computer, or multiple processors or computers. The apparatus can include, in addition to hardware, code that creates an execution environment for the computer program in question, e.g., code that constitutes processor firmware, a protocol stack, a database management system, an operating system, or a combination of one or more of them. A propagated signal is an artificially generated signal, e.g., a machine-generated electrical, optical, or electromagnetic signal, that is generated to encode information for transmission to suitable receiver apparatus. 
         [0048]    A computer program (also known as a program, software, software application, script, or code) can be written in any form of programming language, including compiled or interpreted languages, and it can be deployed in any form, including as a stand-alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment. A computer program does not necessarily correspond to a file in a file system. A program can be stored in a portion of a file that holds other programs or data (e.g., one or more scripts stored in a markup language document), in a single file dedicated to the program in question, or in multiple coordinated files (e.g., files that store one or more modules, sub-programs, or portions of code). A computer program can be deployed to be executed on one computer or on multiple computers that are located at one site or distributed across multiple sites and interconnected by a communication network. 
         [0049]    The processes and logic flows described in this specification can be performed by one or more programmable processors executing one or more computer programs to perform functions by operating on input data and generating output. The processes and logic flows can also be performed by, and apparatus can also be implemented as, special purpose logic circuitry, e.g., an FPGA (field programmable gate array) or an ASIC (application-specific integrated circuit). 
         [0050]    Processors suitable for the execution of a computer program include, by way of example, both general and special purpose microprocessors, and any one or more processors of any kind of digital computer. Generally, a processor will receive instructions and data from a read-only memory or a random access memory or both. The essential elements of a computer are a processor for performing instructions and one or more memory devices for storing instructions and data. Generally, a computer will also include, or be operatively coupled to receive data from or transfer data to, or both, one or more mass storage devices for storing data, e.g., magnetic, magneto-optical disks, or optical disks. However, a computer need not have such devices. Computer-readable media suitable for storing computer program instructions and data include all forms of non-volatile memory, media and memory devices, including by way of example semiconductor memory devices, e.g., EPROM, EEPROM, and flash memory devices; magnetic disks, e.g., internal hard disks or removable disks; magneto-optical disks; and CD-ROM and DVD-ROM disks. The processor and the memory can be supplemented by, or incorporated in, special purpose logic circuitry. 
         [0051]    To provide for interaction with a user, the disclosed embodiments can be implemented on a computer having a display device, e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor, for displaying information to the user and a keyboard and a pointing device, e.g., a mouse or a trackball, by which the user can provide input to the computer. Other kinds of devices can be used to provide for interaction with a user as well; for example, feedback provided to the user can be any form of sensory feedback, e.g., visual feedback, auditory feedback, or tactile feedback; and input from the user can be received in any form, including acoustic, speech, or tactile input. 
         [0052]    The disclosed embodiments can be implemented in a computing system that includes a back-end component, e.g., as a data server, or that includes a middleware component, e.g., an application server, or that includes a front-end component, e.g., a client computer having a graphical user interface or a Web browser through which a user can interact with an implementation of what is disclosed here, or any combination of one or more such back-end, middleware, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication, e.g., a communication network. Examples of communication networks include a local area network (“LAN”) and a wide area network (“WAN”), e.g., the Internet. 
         [0053]    The computing system can include clients and servers. A client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other. 
         [0054]    While this specification contains many specifics, these should not be construed as limitations on the scope of what being claims or of what may be claimed, but rather as descriptions of features specific to particular embodiments. Certain features that are described in this specification in the context of separate embodiments can also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment can also be implemented in multiple embodiments separately or in any suitable subcombination. Moreover, although features may be described above as acting in certain combinations and even initially claimed as such, one or more features from a claimed combination can in some cases be excised from the combination, and the claimed combination may be directed to a subcombination or variation of a subcombination. 
         [0055]    Similarly, while operations are depicted in the drawings in a particular order, this should not be understand as requiring that such operations be performed in the particular order shown or in sequential order, or that all illustrated operations be performed, to achieve desirable results. In certain circumstances, multitasking and parallel processing may be advantageous. Moreover, the separation of various system components in the embodiments described above should not be understood as requiring such separation in all embodiments, and it should be understood that the described program components and systems can generally be integrated together in a single software product or packaged into multiple software products. 
         [0056]    Thus, particular embodiments have been described. Other embodiments are within the scope of the following claims.