TITLE OF THE INVENTION: Method And System For Adding And Updating Web Site Content
FIELD OF THE INVENTION
The present invention relates to document processing, and more particularly, to the distribution of online documents, e.g., in hyper-text markup language (HTML) format.
BACKGROUND OF THE INVENTION
In order to attract more online visitors and to retain such visitors for longer periods of time, many web site operators endeavor to keep fresh media content on their site and update the same periodically. The media content may generally reflect the type of goods or services provided by the web site or a theme of the site. For example, a financial web site may wish to keep up-to-date financial news articles available to its visitors.
Many web site operators, such as YAHOO, obtain their media content (e.g., news articles, streaming video, audio clips, and the like) from third party sources, such as the NEW YORK TIMES SYNDICATE, KNIGHT RIDDER, and RED HERRING. Typically, the content is licensed and transferred for storage on a server owned by the web site operator. The web site operator may then select any portion of the media
content to display to visitors. This may be accomplished, for example, by providing hypertext links to the media content stored on the server. Alternatively, the media content may be stored at an alternate location, such as the third party server, in which case the links on the web site may point to locations on the third party server. These methods are problematic in that either (1) where the media is stored and archived on the web site, it may consume a large amount of electronic memory or (2) where the content is stored at an alternate location, the visitors must be diverted to that location to view the content, thereby decreasing the time the visitor is in contact with the web site. The latter, in turn, may result in decreased advertising revenues where advertising fees are based on, for example, the average length of time visitors stay in communication with the web site.
Another feature of current online media distribution systems is that the web pages on which links to the media content are provided are typically dynamically generated. That is, as new media content is provided, the links on the page are changed to point to the location of the new media. In such a system, the web site operator is required to periodically delete old links and insert new links rather than maintain a static web page. This can result in significant expenditures in labor for continuously re-writing the web page and for monitoring the functionality of the web page after changes have been made. Other current systems employ proprietary software, such as Site Ware to accomplish distribution of media content. However, such proprietary systems may not be operable on certain computer platforms.
It would therefore be advantageous to introduce a system and method of adding and updating web site content which addresses certain problems found in existing
technologies.
SUMMARY OF THE INVENTION
According to a first embodiment of the present invention, a method and apparatus for delivering electronic media content to a customer having a web site includes a server receiving a first location of an article template from the customer. The server then generates and transmits a code to the customer for incorporation into the web site. The code establishes a link corresponding to an article stored by the server. The link also includes a first variable corresponding to the location of the article template on the customer web site and a second variable corresponding to the location of the article on the server. In this manner, a link is generated on the web site which is selectable by a visitor. Upon selection of the link, the article is transmitted from the server to the customer for display to the visitor within the article template.
According to a second embodiment of the present invention, a method for receiving electronic media content from a server includes generating an article template having a first location on a customer computer associated with a web site. The customer then transmits an identification of the first location to the server. In response, the server transmits a code to the customer for incorporation into the web site. The code establishes a link corresponding to an article stored by the server. The link includes a first variable corresponding to the location of the article template on the customer computer and a
02/15053 variable corresponding to the location of the article on the server. In this manner, a link is generated on the web site which is selectable by a visitor. Upon selection of the link, the article is transmitted from the server to the customer for display to the visitor within the article template. According to a third embodiment of the present invention, a method and apparatus for providing electronic media content to a user includes the transmission of a display of a link to the user. The link includes a first variable corresponding to an article template stored on a customer server and a second variable corresponding to an item of media content stored on a media content delivery server. A user may then transmit a selection of the link to the customer server. In response, the customer server transmits a second display to the user which includes the item of media content presented in the article template.
BRIEF DESCRIPTION OF THE DRAWINGS
Further aspects of the instant invention will be more readily appreciated upon review of the detailed description of the preferred embodiments included below when taken in conjunction with the accompanying drawings, of which:
FIG. 1 is a block diagram of an exemplary network according to one embodiment of the present invention;
FIG. 2 is a block diagram of exemplary components of the content delivery server of FIG. 1;
FIG. 3 is a block diagram of an exemplary article database stored by the content delivery server of FIG. 2;
FIG. 4 is a block diagram of an exemplary customer preference database stored by the content delivery server of FIG. 2
FIG. 5 is an exemplary screen display of media content presented by the client server of FIG. 1; and
FIG. 6 depicts an exemplary process for delivering and receiving media content according to one embodiment of the present invention.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
Referring now to FIGS. 1-6, wherein similar components of the present invention are referenced in like manner, preferred embodiments of a method and system for adding and updating web site content are disclosed.
Turning now to FIG. 1, there is depicted an exemplary computer network 1 through which a plurality of users operating terminals 2, 4, 6 may communicate with one or more customer servers 14, 16 over network connection 8 to view media content on
web sites maintained by the customer servers 14, 16. The media content may be presented in any suitable text, video and/or audio format. Text content, for example, may be provided in HTML or XML format. Audio content may be provided in .WAV, MP3 or other suitable formats. Video content may be provided in JPEG or MPEG formats. The customer servers 14, 16 may electronically receive some or all of such content from one or more media content delivery servers 12 via network connection 8.
The media content delivery server 12, in turn, preferably receives some or all of the media content from one or more media content licensor servers 10. In a particular embodiment, the operator of the media content delivery server 12 licenses media content from the operator of media content licensor server 10. The customer servers 14, 16 then register with the media content delivery server 12 and preferably pay fees for delivery of media content posted to their respective web sites.
Although computer network 1 is preferably an Internet-based network such as the World Wide Web, it may be any one or more of a local area network (LAN), a wide-area network (WAN), an intranet environment, an extranet environment, a wireless network or any other type of computer network, such as those enabled over public switched telephone networks.
User terminals 2, 4, 6 may each be any type of computing device, such as a personal computer, a workstation, a network terminal, a hand-held remote access device, a personal digital assistant (PDA) or any other device that can accomplish two-way electronic communication over the network connection 8. Specific functions and operations of user terminals 2, 4, 6, media content licensor server 10, media content delivery server 12, and customer servers 14, 16 are discussed further below.
Turning now to FIG. 2, displayed therein are exemplary components of a computing device, such as media content delivery server 12. It should be understood that any of user terminals 2, 4, 6, media content licensor server 10 and client servers 14, 16 may share similar configurations. However, for sake of brevity, the discussion immediately below will refer to the media content delivery server 12 only.
The primary component of the media content delivery server 12 is a processor 20, which may be any commonly available microprocessor, such as the PENTIUM III manufactured by INTEL CORP. The processor 20 may be operatively connected to further exemplary components, such as RAM/ROM 22, a clock 24, input/output devices 26, and a memory 28 which, in turn, stores one or more computer programs 30, a media content database 32, and a customer database 46.
The processor 20 operates in conjunction with random access memory and readonly memory in a manner well known in the art. The random-access memory (RAM) portion of RAM/ROM 22 may be a suitable number of Single In-line Memory Module (SIMM) chips having a storage capacity (typically measured in kilobytes or megabytes) sufficient to store and transfer, inter alia, processing instructions utilized by the processor 20 which may be received from the application programs 30. The read-only memory (ROM) portion of RAM/ROM 22 may be any permanent, non-rewritable memory medium capable of storing and transferring, inter alia, processing instructions performed by the processor 20 during a start-up routine of the server 12.
The clock 24 may be an on-board component of the processor 20 which dictates a clock speed (typically measured in MHz) at which the processor 20 performs and
synchronizes, inter alia, communication between the internal components of the media content delivery server 12.
The input/output device(s) 26 may be one or more commonly known devices used for receiving operator inputs, network data, and the like and transmitting outputs resulting therefrom. Accordingly, exemplary input devices may include a keyboard, a mouse, a voice recognition unit and the like for receiving operator inputs. Output devices may include any commonly known devices used to present data to an operator of the media content delivery server 12 or to transmit data over the computer network 1 to a remote user 2, 4, 6 or customer server 14. Accordingly, suitable output devices may include a display, a printer and a voice synthesizer connected to a speaker.
Other input/output devices 30 may include a telephonic or network connection device, such as a telephone modem, a cable modem, a T-l connection, a digital subscriber line or a network card, for communicating data to and from other computer devices over the computer network 1, such as customer servers 14, 16. In an embodiment involving a network server, it is preferred that the communications devices used as input/output devices 30 have capacity to handle high bandwidth traffic in order to accommodate communications with a large number of customer servers 14, 16.
The memory 28 may be an internal or external large capacity device for storing computer processing instructions, computer-readable data, and the like. The storage capacity of the memory 28 is typically measured in megabytes or gigabytes.
Accordingly, the memory 28 may be one or more of the following: a floppy disk in conjunction with a floppy disk drive, a hard disk drive, a CD-ROM disk and reader/writer, a DVD disk and reader/writer, a ZIP disk and a ZIP drive of the type
manufactured by IOMEGA CORP., and/or any other computer readable medium that may be encoded with processing instructions in a read-only or read-write format. Further functions of and available devices for memory 28 will be apparent.
The memory 28 preferably stores, inter alia, a plurality of programs 30 which may be any one or more of an operating system such as WINDOWS 2000 by MICROSOFT CORP, and one or more application programs, such as a web hosting program and a database management program of the type manufactured by ORACLE, each of which may be necessary to implement the embodiments of the present invention. The programs 30 preferably include processing instructions for accomplishing media content delivery to customer servers 14, 16 as described herein.
The memory 28 preferably also stores a media content database 32 and a customer data base 46, examples of which are depicted in FIGS. 3 and 4. In referring to the databases depicted therein, it is important to note that the first row of the databases includes a field header for each field of the database and the remaining rows each correspond to one record of the database. Fields of data, are represented by each column. Further or fewer fields and records of data may be used. The databases presented herein may be configured into any number of relational databases. In addition, configurations other than database formats may be used to store the data maintained in exemplary databases 32 and 46. Referring now to FIG. 3, an exemplary media content database 32 may be provided to maintain a listing of articles received by the content delivery server 12 which are to be made available to one or more customer servers 14, 16. Accordingly, the media content database 32 may contain the following exemplary fields: a media content
identification field 34, a media category field 36, a content type field 38, a headline field
40, a byline field 42 and a content provider field 44.
Media content identification field 34 preferably contains an identification of each article or other media content stored by the media content delivery server 1. The identification may include a file name and or directory from which the media content may be retrieved.
Media category field 36 preferably contains an indication of the category to which the media content belongs. Categories may be defined by the media content licensor, but are preferably determined by the operator of the media content delivery server 12. Each customer may choose one or more categories of such content which is to be transmitted to their server. Thus, the articles that are transmitted to the customer will be determined based on the category to which the articles are assigned. In a preferred embodiment, the category selected for each received article is done manually by an editor who reviews the article and assigns the category based on the article content. Categories may be assigned based on the source from which the article is received. Other methods for selecting categories may likewise be used.
Content type field 38 preferably contains an indication of the file type of the stored content. Types may include text files, video files, audio files, and any combination of the same. Headline field 40 preferably contains a headline that is to be presented in the link to the particular content. The headline helps a user determine the subject matter of the content prior to the user selecting the link to the content.
Byline field 42 preferably contains reference information such as the author or the source of the content.
Content provider field 44 preferably contains an indication of the source of the content, e.g. the third party who provided the article to the media content delivery server. This field may be used, in conjunction with date field 45 below, to determine licensing fees to be paid to third party content licensors by tracking the amount of content that the third party has provided within a predetermined time. Licensing fees may be paid on the basis of the number of items of content received or may be based on a period of time in which items of content are provided. Date field 45 preferably contains an indication of the date that a particular item of content was received and/or created. This field may be used to determine the length of time that an article is to be stored on the media content delivery server 12 and the length of time which the article may be accessible from a link on a customer server 14.
Referring to FIG. 4, customer database 46 may be provided to track the number of customers who receive media content from the media content server 12, and to further track their preferences for content delivery and the like. Accordingly, customer database 46 may contain the following exemplary fields: a customer field 48, a customer identification field 50, an article template location field 52, a headline preferences field 54, a byline preferences 56, and a categories field 58. Customer field 48 preferably contains an identification of a customer operating a customer server 14 who receives media content from media content delivery server 12. Customer web site identification field 50 preferably contains an identification, such as a uniform resource locator (URL) of a web site operated by the customer.
Article template location field 52 preferably contains a location of an article template stored by the customer server 14. The article template is used by the customer server 14 to format media content received from the media content delivery server 12 prior to display of the content to the user 2, 4, 6. Headline preferences field 54 preferably contains an indication of the customer's preferences for headline presentation. The preferences may include font color, font type, and font size.
Byline preferences field 56 preferably contains an indication of the customer's preferences for headline presentation. The preferences may include font color, font type, and font size.
Categories field 58 preferably contains an indication of the categories of media content that the customer would like to receive.
FIG. 5 depicts an exemplary customer web site 60 having a plurality of links 62 to media content. The plurality of links 62 is preferably displayed on the web site 60 through use of a script file which is inserted by the customer at a location where the plurality of links 62 are to be presented. The plurality of links 62 are generated by the media content delivery server 12 in accordance with a process 70 described immediately below with respect to FIG. 6.
Referring now to FIG. 6, an exemplary process 70 for delivering media content to a customer server 14 is presented. The process 70 is preferably implemented on a computer system, such as media content delivery server 12, in conjunction with media content licensor server 10, customer servers 14, 16 and user terminals 2, 4, 6.
The process 70 preferably begins when the media content delivery server 12 receives media content and stores the same in the memory 28 or RAM 22 for access and retrieval by one or more customers (step 72). The name and location of the article may be stored in content identification field 34, and the content type may be determined and stored in content type field 38 of the media content database 32. New media content may be provided to the media content delivery server 12 on a periodic basis or as it becomes available.
In one embodiment, the media content may be received from a third party, such as media content licensor server 10, over the computer network 1. The provider of the media content may be stored in content provider field 44 of the media content database 32. The operator of the media content delivery server 12 may then pay licensing fees or the like to the operator of the media content licensor server 10 for the media content.
Upon receipt of the content, it is preferably reviewed and converted to a format, such as JAVASCRIPT, prior to storage on the server. The format in which the content is saved preferably allows the content to be re-formatted upon transfer of the content to an article template designated by the client, as described further below.
The media content may be stored in a location on the media content delivery server 12 which is accessible from a customer link for a predetermined time (e.g. 1 day). After the predetermined time, the article may then be archived for a further time (e.g. 14 days), after which the content may be removed from memory.
Upon receipt of media content by the media content delivery server 12, one or more editors preferably review the media content and assign the same to one or more predetermined categories (step 74) based on the subject matter of the content. The
category for each article may then be stored in category field 36 of the media content database 32.
Index pages containing links to the content are then generated (step 76). In one embodiment, each index page corresponds to one category. So, for example, all articles relating to national news are preferably listed on a single index page. The index page is preferably generated in a format which is readable by a PERL script that, in turn, executes periodically on the media content delivery server 12 to parse the locations for the media content and transmit the same to customer server 14. The index pages are preferably updated as new media content is received and reviewed. The index pages may be parsed and links may be distributed at predetermined intervals of time, e.g. every 15 minutes.
Headlines and bylines may likewise be received or generated for each item of media content (step 78). The text for the headlines and bylines may be displayed to a user on a customer's web site 60 as part of a link to a particular item of media content. The headlines and bylines are subject to formatting preferences that are preferably defined by each customer, as may be stored in headline preferences field 54 and byline preferences field 56 of customer database 46.
Next, one or more customers operating customer server 14 may register to receive media content from the media content delivery server 12 (step 80). The requirements to register may include a fee that is to be paid to the operator of the media content delivery server 12 for delivery of the media content. The fee may be charged on a per-item basis or may be based on a period of time in which the customer desires to receive the content.
In order to register, a customer must preferably includes a submission of content
preferences, e.g. the categories of articles that the customer would like to receive and present on their web site. The customer may further specify attributes for the content and link presentation, such as font size, font type and font color. This information may be stored in headline preferences field 54, byline preferences field 56 and categories field 58 of the customer database 46. Finally, the customer submits a location on the customer server 14 where an article template is or will be stored. The location for the template may then be stored in article template location field 52 of customer database 46.
The article template preferable contains a table, a table cell or a frame that is initially empty and may receive media content for insertion therein. After the template has been generated and identified, the media content delivery server 12 may transmit programming code to the customer server 14 for insertion into the template. The template programming code preferably facilitates the retrieval of media content from media content delivery server 12. An example of such programming code is provided below:
<SCRIPT LANG="JavaScript" SRC=http://www.208.178.130.156/philp/DotNews/url processor.js> </SCRIPT>
The programming code inserted into the template calls a script file stored on the media content delivery server 12, the location of which may be defined by a variable, such as SRC in the code provided above. The script file may be provided in JAVASCRIPT format. Once the template is activated by the selection of a link on the client web site 60, the template programming code calls a file (e.g., url_processor.js as provided in the example above) from the media content server 12. The file, in turn,
facilitates the retrieval of the article file from its location on the media content delivery server 12 for insertion into the template.
After completion of the registration, programming code is generated by media content delivery server 12 and transmitted to the customer server 14 for insertion into the customer's web site 60 (step 82). The code may be written in JAVASCRIPT or any other suitable format. An example of such code is provided below:
<SCRIPT LANGUAGE="JavaScript">
<!-HIDE var NEWSSTAND_CELEBRITY=new Object ();
NEWSSTAND CELEBRITY.template url="http://208.178.130.156/philp/clients/dotnews/article.html":
NEWSSTAND_CELEBRITY.link_format='<font face="Impact" size="2" color="red">;
NEWSSTAND_CELEBRITY.byIine_format='<font face="Arial" size="l" color = "black">';
//STOP HIDING --> </SCRIPT>
<SCRIPT SRC="http://208.178.130.156/philp/dotnews buckets/NEWSSTAND_CELEBRITY/linkfile.js">
</SCRIPT>
The code exemplified above is received by the customer server 12 and placed in a location on the web site 60 where the links to media content are to appear. The code preferably includes a variable describing a location for the customer's article template (e.g. NEWSSTAND_CELEBRITY.template_url as provided above). The code also preferably includes another variable describing a location for a script file (e.g., SRC as provided above), which is preferably written in JAVASCRIPT, and stored on the media content delivery server 12. This script file, when called by the customer server 14, may
transmit links, headlines and bylines for each stored item of media content (step 84). The links, headlines and bylines may then be displayed on the client's web site in the format selected by the customer. The format for the links, headlines and bylines may be defined by variables in the script provided above (e.g., NEWSSTAND_CELEBRlTY.link_format and NEWSSTAND_CELEBRITY.byline_format as depicted above). The preferences defined by the variables may correspond to the preferences defined by the customer upon registration with the media content delivery server 12.
As a result of the code being loaded into the customer's web site 60, a plurality of links, such as links 62 of FIG. 5, are transmitted from the media content delivery server 12 and displayed on the web site 60 for selection by the customer. Each link is preferably of the following format: http://article.template?jsfile_url where "article.template" provides the location of an article template on the customer server 14 and "?jsfile_url" is a query string used by the article template programming code to locate the media content on media content delivery server 12 that corresponds to the link.
A user 2, 4, 6 who is viewing the customer web site may then select one or more of the links displayed (step 88). The query string portion of the link described above is ignored by common web browsers and parsed out by the article template programming code upon selection of the link by a user. In response to the selection of the link, the customer server 14 calls the article template stored on the server, which in turn, retrieves the media content from the media content delivery server 12. The article is formatted in accordance with the variables describing customer preferences and then is displayed to
the user 2, 4, 6 (step 90), preferably in an HTML or other browser-compatible format. The user may bookmark the retrieved item of media content for accessing the article at a later time. The location of the article on the media content delivery server 12 will preferably not be changed until the content is deleted from the media content delivery server 12, so as to facilitate such bookmarking and later retrieval.
As new content is received, or after a predetermined time, new index pages may be created which contain links to new media content and from which links to older content are deleted or overwritten (step 92). This step then repeats after each predetermined period of time, for as long as the customer is registered with the media content delivery server 12.
In this manner, a customer server 14 which presents links 62 to media content to a plurality of users 2, 4, 6 visiting the customer web site 60 need only implement the programming code for generating links one time, after which the media content delivery server 12 may update the links on the web site content periodically or at any desired time. Although the invention has been described in detail in the foregoing embodiments, it is to be understood that the descriptions have been provided for purposes of illustration only and that other variations both in form and detail can be made thereupon by those skilled in the art without departing from the spirit and scope of the invention, which is defined solely by the appended claims.