The present invention relates generally to software tools for accessing content, and more particularly to software tools for enhancing web-based content.
Millions of web pages are available as a source of content for users of the Internet. These web pages take many forms, including, for example, articles, blurbs, and web logs (“blogs”), among others. To facilitate dissemination of information, “feeds” have been developed as a way to publish content in a structured format that facilitates identification and analysis. A feed (also known as a “news feed” or “blog feed”) can contain items (e.g., news items), metadata (e.g., tags) about the articles (e.g., title, date, and author), and/or metadata about the feed itself (e.g., title, URL, and last-updated timestamp). Some feeds are described by Resource Description Framework (RDF) statements and/or encoded using eXtended Markup Language (XML) (such as, e.g., the XML syntax RDF/XML, RSS, Atom). These features of feeds make it easier for applications to automatically collect and evaluate content for presentation to the user.
The term “syndication XML” refers to XML that has been developed for feeds, such as Atom and RSS (“Really Simple Syndication,” “Rich Site Summary,” or “RDF Site Summary”). Since the general structure of a feed is known, it is possible to identify the news content within it. Software applications have been developed that work with content published using syndication XML.
Although feeds have made it easier to access content, the content presented in the feed is often aesthetically one-dimensional because feed providers may not have the resources and/or desire to incorporate additional content into their feeds. In addition, many feed providers are unable to track usage of links in their feeds, and as a consequence, are unable to determine how effective or popular the content distributed by their feed is. Moreover, many feed providers do not have a viable avenue for obtaining revenue (e.g., from advertisers) in connection with making content available with their feeds. In short, present systems are functional, but they are not sufficiently efficient or otherwise satisfactory. Accordingly, a system and method are needed to address the shortfalls of present technology and to provide other new and innovative features.
Exemplary embodiments of the present invention that are shown in the drawings are summarized below. These and other embodiments are more fully described in the Detailed Description section. It is to be understood, however, that there is no intention to limit the invention to the forms described in this Summary of the Invention or in the Detailed Description. One skilled in the art can recognize that there are numerous modifications, equivalents and alternative constructions that fall within the spirit and scope of the invention as expressed in the claims.
The present invention can provide a system and method for enhancing content feeds. One embodiment includes receiving a request for a content feed that is made available from a feed provider and retrieving the content feed from the feed provider. In addition, one or more enhanced-content files that are related to the content feed are located from among a plurality of enhanced-content files. Content from one or more of the enhanced-content files is then merged with the content feed so as to create an enhanced-content feed, and the enhanced content feed is provided to a consumer.
As previously stated, the above-described embodiments and implementations are for illustration purposes only. Numerous other embodiments, implementations, and details of the invention are easily recognized by those of skill in the art from the following descriptions and claims.
Various objects and advantages and a more complete understanding of the present invention are apparent and more readily appreciated by reference to the following Detailed Description and to the appended claims when taken in conjunction with the accompanying Drawings wherein:
Referring now to the drawings, where like or similar elements are designated with identical reference numerals throughout the several views, and referring in particular to
As shown, a feed enhancement server 104 is coupled to a datastore 110 and a network 102 couples the feed enhancement server 104 to N content sources 106, N feed providers 108, and N consumers 109. The feed enhancement server 104 in several embodiments is realized by a combination of software and hardware. In many embodiments, for example, the feed enhancement server 104 is implemented by software executed by a general purpose computer to effectuate functions described further herein.
In general, the feed enhancement server 104 combines content from one or more of the content sources 106 with feeds from the feed publishers 108 in order to provide enhanced-content feeds to consumers 109. Although the feed enhancement server 104 in this embodiment is depicted as being separately located from the content sources 106 and feed providers 108, in other embodiments the feed enhancement server 104 may be implemented at any one of the locations of the content sources 106, feed publishers 108 or a consumer location. In yet other embodiments a feed provider, content source and the feed enhancement server 104 may be collocated and operated, for example, by a single business entity. The consumers may be individual users that use either a web-based feed viewer or a client-side reader, or in some embodiments may be content aggregators.
The network 102 in several embodiments includes the Internet and may also include wide area networks and local area networks as well. The content sources 106 in the exemplary embodiment are sources of content, which may include images, video, audio, and textual content. In some embodiments for example, the content sources 106 may provide advertising content, but this is certainly not required.
The feed publishers 108 in this embodiment are web sites that make content (e.g., text, audio and/or video content) available via feeds, which may be XML, RSS, RDF, Atom, HTML, Word, PDF or any other type of feed that may be parsed. Each of the consumers 109 may be users coupled to the network 102 by any one of a variety of Internet enabled devices including desktop and laptop computers, personal digital assistants (PDAs) and cellular handsets. In the exemplary embodiment, the consumers 109 receive enhanced-content feeds from the feed enhancement server 104, but from the perspective of the consumers 109, it may appear as though the enhanced-content feeds are being received directly from a feed provider.
As described further herein, the feed enhancement server 104 is configured to receive and store content from the content sources 106 in the data store. As depicted in the exemplary embodiment of
Beneficially, the feed publishers 108 may utilize the feed enhancement server 104 to enrich the presentation of their feeds without having to maintain their own collection of content. For example, a feed publisher that provides news feeds may desire to have images that relate to the subject of news stories incorporated into their feeds to improve the appeal of their feeds to consumers.
Moreover, the exemplary embodiment may be used as a means for the feed providers 108 to receive revenue by allowing advertising content from the content sources 106 to be merged with their content feeds. Concomitantly, advertisers may benefit from the exposure of their product or service in connection with related content (e.g., news content) that the consumer is interested in. As discussed further herein, the feed enhancement server 104 may also enhance a content feed by placing one or more tracking mechanisms in the enhanced-content feed. Consequently, the feed enhancement server 104 may also track information about the number of consumers that access particular feeds as well as information about consumers that access advertising content in the enhanced-content feeds.
Referring next to
Although the rules depicted in
As shown, each of the keywords and/or phrases may have a weight associated with them based upon a relevance of the word or phrase. As an example, a content file may include a “Britney Spears” calendar and potential keywords associated with the calendar could be: “Britney,” “Spears,” “Britney Spears,” “calendar”, “Zomba Records,” “teen idols,” “Kevin Federline,” “Not to Innocent,” “pop diva,” etc. The weighting may be automated or it may be manually performed. As discussed further herein, proper nouns such as names, places and events may be given a greater weight that other words that may be less suggestive of the subject matter of the content file. The content files may be input manually or through an automated process using a crawler or Screen Scraper or a file transfer from the content sources 106.
The cache 214 in this embodiment enables both content feeds and enhanced content feeds to be stored so as to be quickly retrievable in the event a content feed or enhanced content feed is requested more than once. The original content feed (e.g., un-enhanced) may be stored so that the feed enhancement server 104 retains flexibility as to the particular content from the content datastore 112 that will be merged with the original content feed. For example, if a rule precludes using content that was merged into a cached enhanced-content feed (e.g., because a geographic restriction) the original content feed is available to be merged with content from another content file.
The feed-provider data 216 may include data relating to use of enhanced-content feeds. In some embodiments, the feed-provider data 216 includes data relating to each of the enhanced-content feeds for each feed provider that uses the feed enhancement server 104. For example, the feed-provider data 216 may include, without limitation, data about the number of consumers that subscribe to a feed (e.g., both active and inactive subscribers); the number of times a URL or click-through reference in an enhanced-content portion (e.g., advertisement portion) of the enhanced-content feed is used; the number of times each story is viewed; the number of times each page is viewed; and the number of clicks on a complete story.
Referring next to
While referring to
The content parser 308 in this embodiment is configured to parse through content and provide a list of keywords (e.g., tags), which are weighted by the content weighting module 310 based upon predefined rules. For example, less relevant words such as prepositions are given less weight while proper nouns and selected phrases are given more weight. The content parser 308 is certainly not required, however, and keywords and phrases may be provide by the content sources or established by personnel managing the feed enhancement server 304. As depicted in
In many instances, the enhanced content from content sources may be deliberately parsed through by personnel for keywords and phrases before it is added to the datastore 212. In contrast, content feeds from feed providers may change more frequently than the content from content sources and there is little or no time for a manual parsing of content feeds. As a consequence, in some variations, key phrases are identified in the stored content, and then the content feeds are searched to identify any matching phrases.
In addition to the content management interface 306, the feed enhancement server 304 also includes a feed provider interface 328, which is configured to enable feed providers (e.g., the feed providers 108) to interact with the enhancement server 304 and the feed-provider datastore 216. Although not required, the feed provider interface may be realized by a web page server that provides interfaces for the feed provider to interact (e.g., obtain or provide information) with the enhanced server 304.
In some embodiments for example, the feed-provider datastore 216 may include data relating to each of the feed providers. As described further herein, the feed-provider datastore 216 may include information about usage of each feed provider's content feeds. In addition, in some variations, the enhanced server 304 may be adapted to enable each feed provider to enter into an agreement (e.g., a subscription agreement) with an operator of the enhancement server 304 and account information for each feed provider may be stored and made accessible to each corresponding feed provider.
The reporting engine 330 in this embodiment is configured to retrieve the various types of information (e.g., account and feed-usage information) from the feed-provider datastore 216 and may be configured to enable feed providers to generate specific queries for data in the feed-provider datastore 216.
In several implementations, when a feed provider desires to enhance their content feeds using the enhanced content server 304, the feed provider either includes a reference to the enhanced content server 304 when creating a new feed, or alternatively, the feed provider may continue to use an existing URL (e.g., that consumers are familiar with) and redirect consumers to the enhanced content server 304.
As an example, assuming the enhanced content server 304 is accessible via “run.Modya.com/injexion/process.php?name=your company_name&URL=,” the feed provider may create a new URL, which includes the feed provider's URL concatenated with the enhanced content server's URL. For example, a feed provider at www.feedprovider.com creating a new feed named my_feed may create a new URL as: run.Modya.com/injexion/process.php?name=your_company_name&url=www.feedprovider/my_feed.xml. This method is best for new feeds, because it requires the consumers to enter a new feed URL into their readers.
A second, slightly more complicated method, is appropriate for popular pre-existing feeds, because it does not introduce a new URL to the clients. The below explanation assumes that a feed provider's existing feed URL is: http://www.feedprovider.com/my_feed.xml. In this case, the feed provider moves the existing feed location (file or path name) to a new one. For example, if the feed's file name was my_feed.xml, it may be renamed to feed_injexion.xml, and redirection on the feed provider's web server may be activated by forwarding users coming to the old URL to the new one. The new URL will be: run.modya.com/injexion/process.php?name=your_company_name&url=http://www.feedprovider.com/my_feed_injexion.xml.
The exact details of activating redirection differ for various web server environments, but are well known to those of ordinary skill in the art. For example, for Apache servers, the following line may be added to the configuration file (usually httpd.conf): Redirect /my_feed.xml run.modya.com/injexion/process.php?name=your_company_name&url=http://www.feedprovider.com/feed_injexion.xml.
Referring to
As shown in
Once the keywords and/or phrases are weighted, the comparator 322 accesses the content datastore 212 and searches, relative to the weighted keywords and/or phrases from the content feed, the weighted keywords and phrases in the datastore 212 to identify and create a list one or more potential enhanced-content files that are related to the content item (Block 412). Based upon the weights of the keywords/phrases that match, the list of potential enhanced-content files may be sorted in terms of the strength of the match. In addition, although not required, in many embodiments the list of potential enhanced-content items is filtered by one or more rules that may be associated with each content item (Block 414).
For example, if a rule associated with a particular enhanced-content file requires that the enhanced-content file not be utilized after a certain date that has already passed, that particular enhanced-content file is filtered out of the list of potential enhanced-content files. As another example, if a rule restricts the particular enhanced-content file to use only in certain geographic locations (e.g., identified by zip code) and the request from the consumer is not coming from one of those geographic locations, the particular enhanced-content file is filtered out of the list of potential enhanced-content files.
After filtering, the merge engine 416 selects at least one enhanced-content file from among the list of remaining enhanced-content files (Block 416), and enhanced content, including content from the selected enhanced-content file, is merged with the content feed to create an enhanced-content feed (Block 418), which is then sent to the consumer (Block 420). In many embodiments, before the enhanced-content is merged with the content feed, the content feed is broken down into its constituent elements and the enhanced-content is recombined with elements of the content feed to create a unitary and integral enhanced-content feed (e.g., a single XML feed). As a consequence, when viewed by a reader, the enhanced-content feed appears as a single piece of content, which may include text, video or images.
In many embodiments, once merged, the enhanced-content is substantially inseparable from the enhanced-content feed. In particular, as opposed to prior art techniques for merely embedding a link to remotely located content within a feed, in accordance with many embodiments, the enhanced-content is itself within the enhanced-content feed. As a consequence, after the enhanced-content feed is presented to a consumer, the enhanced-content portion of enhanced-content feed is still available even when the consumer is completely uncoupled from a network (e.g., the network 102).
Beneficially, by combining the enhanced-content and content feed into a new enhanced-content feed, the enhanced content will appear to automated-processing systems to be indistinguishable from the original content feed; thus much less likely to be parsed from the enhanced-content feed and more likely to persist regardless of the type of device (e.g., mobile handset, reader, portal etc.) the consumer is using.
In addition to merging enhanced-content into the content feed, tracking content may also be merged with the content feed. Or in alternative embodiments, only tracking content may be merged with the content feed. In one implementation, the tracking content may include a reference back to feed tracking engine 326 within one or more links in the enhanced content feed so that when a consumer follows a link in the enhanced-content feed, the consumer is linked to the feed tracking engine before being routed to the ultimate destination identified by the link. The tracking engine 326 may then store the information about the use of the enhanced-content feed in the feed-provider datastore 216.
In addition to, or instead of, enhancing a link of the content feed, tracking content in the form of a substantially invisible picture (e.g., a single pixel) that is hosted by the feed tracking engine 326 may be inserted into one or more portions of the content feed. In this way, when a consumer views a page that includes the substantially invisible picture, the feed tracking engine 326 is accessed to retrieve the picture and the feed tracking engine 326 may then make an entry in the feed-provider data 216 that indicates the page was viewed.
In conclusion, the present invention provides, among other things, a system and method for enhancing content feeds. Those skilled in the art can readily recognize that numerous variations and substitutions may be made in the invention, its use and its configuration to achieve substantially the same results as achieved by the embodiments described herein. Accordingly, there is no intention to limit the invention to the disclosed exemplary forms. Many variations, modifications and alternative constructions fall within the scope and spirit of the disclosed invention as expressed in the claims.
The present application claims priority from to commonly owned and assigned application No. 60/691,030, filed Jun. 16, 2005, Attorney Docket No. MODY-002/00US, entitled CONTENT INSERTION BASED ON CONTEXTUAL DATA WITHIN AN XML FEED, which is incorporated herein by reference.
Number | Date | Country | |
---|---|---|---|
60691030 | Jun 2005 | US |