# Patent

## Title
Systems and methods for dynamically creating hyperlinks associated with relevant multimedia content

## Abstract

The present disclosure relates to systems and methods for dynamically creating hyperlinks associated with relevant multimedia content in a computer network. A hyperlink generation module receives an electronic text file from a server. The module searches the text file to identify keywords present in the file. Once the keywords have been identified, a database is queried to identify multimedia content that is related to the keywords. Generally, multimedia content is associated with metadata to enable efficient searching of the multimedia content. Typically, the multimedia content is contextually relevant to both the identified keywords and text file. One or more hyperlinks corresponding to the keywords are then generated and inserted into the text file. The hyperlinks provide pointers to the identified multimedia content. After insertion into the text file, the hyperlinks may be clicked by a user or viewer of the file to retrieve and display the identified multimedia content.

## Background
CROSS REFERENCE TO RELATED APPLICATION
This application claims the benefit under 35 U.S.C. §119(e) of U.S. Provisional Patent Application No. 61/037,068, filed Mar. 17, 2008, and entitled “Systems and Methods for Dynamically Creating Hyperlinks Associated with Relevant Multimedia Content,” which is incorporated herein by reference as if set forth herein in its entirety.


TECHNICAL FIELD
The present systems and methods relate generally to electronic text files, Internet websites, and multimedia content, and particularly to systems and methods for automatically generating hyperlinks associated with multimedia content within electronic text files.
BACKGROUND
The Internet has made various forms of content available to users across the world. For example, Internet users access websites to view articles, research particular topics of interest, watch videos, etc. Content providers and publishers (e.g. website providers) use the Internet to display articles or news stories, describe offered services, present advertising, and perform a host of other activities. Often, websites include one or more “hyperlinks” that, when clicked via a mouse or cursor, direct an Internet user to additional content or information. As used herein, a “hyperlink” refers to a directly followable reference (i.e. a relation between objects in which one object designates by linking to another object) for use within an electronic text file or hypertext document. As is customary and understood in the art, hyperlinks are typically highlighted or presented in a color different from their surrounding text to indicate to an Internet user that the hyperlink may be accessed for additional content.
Often, hyperlinks are used for linking to and/or displaying videos, images, other websites, articles, advertisements, etc. In some circumstances, content providers use hyperlinks and their associated content to retain Internet users at the providers' sites for longer periods of time. It is generally assumed that the longer a user remains at a website, the more advertising he or she will be exposed to, or the more interested he or she may become in the website content (and thus become a repeat viewer, subscribe to a membership, etc.), and the more popular and profitable the website will become. Accordingly, content publishers often create hyperlinks to videos, images, related articles, etc., in the hopes of keeping users at the publishers' sites for longer periods of time. For example, many content publishers assume that if an Internet user is reading an article on a website, the user would most likely be interested in a video or additional article related to the content of the initial article. Thus, it is highly beneficial to the publisher to present hyperlinks to videos or other content that are contextually relevant to the initial website content in the hopes that the user will interact with the hyperlinked content, and will thereby continue viewing the particular website (and its associated content and advertisements) instead of navigating to another site.
Traditionally, website developers or programmers manually create each hyperlink in an electronic text file by hard-coding the link into the text file. With the advent of electronic news media and the virtually real-time availability of Internet content, it is extremely difficult for programmers to keep up. For example, assuming a particular Internet publisher of new stories desires to link to relevant videos within each of its published news stories, website developers must continue to manually create hyperlinks to related videos each time an additional story is published on the associated website. In a situation in which the content provider publishes new content rapidly and continuously, it can become virtually impossible for programmers to generate hyperlinks for each new content item, much less create links to content that is contextually relevant to the original content item. Also, this manual hyperlink creation can be cumbersome, tedious, inefficient, and time-consuming, as well as a drain on monetary resources that could be used for other business needs within a network environment.
In addition to being time-consuming and inefficient, because hyperlinks are manually created to point to videos or other content chosen by a programmer or website operator, the selected videos are often not relevant or germane to the article of interest. For example, as time passes, videos may become stale or forgotten, and thus highly relevant videos are not associated with a particular article, either because they are old and a programmer has forgotten them, or because the programmer is simply unaware of their existence. Considering the vast amount of content available today over the web, it is infeasible for a programmer to be able to make intelligent decisions regarding linking of content to each new published content item, especially considering the time constraints placed on the programmer. Thus, an Internet user clicking a hyperlink may be limited to viewing content, such as a video or list of videos, that is only marginally related, or not related at all, to the original website content.
Additionally, many hyperlinks are programmed to return a further list of hyperlinks, wherein the hyperlinks in the list are each associated with additional content, videos, websites, etc. Typically, such a list is unranked and unorganized, and is often presented with no discernable structure or organization. For example, the list may simply comprise a catalog of a given website's most current videos, regardless of content. Or, a list may include any and all videos stored on a website's database, with no selection or organization. In these circumstances, a user must tediously search through the plurality of videos or other content to find the content that is most relevant to the article or electronic text file the user is viewing on the web page. This tedious searching is not only annoying, but time-consuming, and there is no assurance that the user will discover videos that are relevant to the original article, or with which the user would have an interest.
For these and many other reasons, there is a continuing need for a system or method that dynamically generates or creates hyperlinks within an electronic text file, and associates those hyperlinks with content that is contextually relevant to the electronic text file. There is a further need for a system or method that ranks lists of hyperlinks associated with an electronic text file according to the relevance of the linked content to the text file.
BRIEF SUMMARY OF THE DISCLOSURE
Briefly described, and according to one embodiment, the present disclosure is directed to a system for creating hyperlinks within electronic text files that link to multimedia content, wherein the multimedia content is contextually related to the electronic text files. The system comprises a server for hosting and displaying electronic text files to users, a database for storing the electronic text files and multimedia content, and a hyperlink generation module that performs the steps of generating and inserting hyperlinks into an electronic text file. Specifically, the described embodiment of the hyperlink generation module receives an electronic text file from the server, scans the electronic text file to identify one or more keywords in the electronic text file, queries the database as a function of the one or more identified keywords to identify multimedia content related to the identified keywords based on metadata associated with the multimedia content, generates a hyperlink for each of the one or more identified keywords, wherein each generated hyperlink includes a pointer to the identified multimedia content related to the respective keyword, and inserts the one or more generated hyperlinks into the electronic text file for subsequent use.
According to one aspect, the step performed by the hyperlink generation module of querying the database further comprises the steps of retrieving the multimedia content, extracting the metadata associated with the multimedia content, and comparing the extracted metadata to the one or more identified keywords to identify specific multimedia content related to the one or more identified keywords.
According to another aspect, the one or more keywords are selected from a predefined list, dynamically generated, or identified via some combination of both.
According to a further aspect, the electronic text files comprise file types selected from the group comprising: HyperText Markup Language (HTML) files, Extensible HyperText Markup Language (XHTML) files, and Extensible Markup Language (XML) files.
According to an additional aspect, the multimedia content comprises one or more video files or audio files.
According to yet another aspect, the pointer to the identified multimedia content includes a storage address in the database for the identified multimedia content.
According to another embodiment, the present disclosure is directed to a method, in a computer network, for dynamically creating one or more hyperlinks within an electronic text file. The method comprises the steps of receiving an electronic text file, searching the electronic text file to identify one or more keywords in the electronic text file, querying a multimedia content database index based on the one or more identified keywords to identify multimedia content related to the identified keywords as a function of metadata associated with the multimedia content, generating a hyperlink for each of the one or more identified keywords, wherein each generated hyperlink includes a pointer to the identified multimedia content related to the respective keyword for subsequent retrieval of the multimedia content, and inserting the one or more generated hyperlinks into the electronic text file for display to a viewer of the electronic text file. When activated or “clicked” by a viewer, the one or more inserted hyperlinks are used to retrieve and display the identified multimedia content to the viewer of the electronic text file within the computer network.
According to one aspect, the step of querying the multimedia content database index further comprises the steps of retrieving the multimedia content, extracting the metadata associated with the multimedia content, and comparing the extracted metadata to the one or more identified keywords to identify specific multimedia content related to the one or more identified keywords.
According to another aspect, the identified multimedia content is contextually related to the electronic text file.
According to a further aspect, the one or more keywords are selected from a predefined list, dynamically generated, or identified via some combination of both.
According to an additional aspect, the electronic text file comprises a file type selected from the group comprising: a HyperText Markup Language (HTML) file, an Extensible HyperText Markup Language (XHTML) file, and an Extensible Markup Language (XML) file.
According to yet another aspect, the multimedia content comprises one or more video files or audio files.
According to still another aspect, the pointer to the identified multimedia content includes a storage address within the computer network for the identified multimedia content.
According to a further embodiment, the present disclosure is directed to a method, in a computer network, for automatically creating one or more hyperlinks within an electronic text file for subsequent display to one or more viewers, wherein each of the one or more hyperlinks is linked to one or more videos that are contextually relevant to content of the electronic text file. The method comprises the steps of receiving the electronic text file from a web server, scanning the electronic text file to identify one or more keywords in the electronic text file, retrieving a plurality of videos from a video database index, wherein each video in the plurality of videos is associated with one or more metadata identifiers, and extracting the one or more metadata identifiers from each video in the plurality of videos. Once extracted, the metadata identifiers are compared with the one or more identified keywords to identify one or more matches between the identifiers and keywords. For each identified keyword, the method further comprises the steps of retrieving a storage address in a video database for each video associated with the one or more extracted metadata identifiers matched to the respective keyword, associating the storage address for each video with the keyword to generate a hyperlink code for the keyword, and inserting the generated hyperlink code into the electronic text file. After all hyperlink codes have been inserted, the electronic text file is displayed to one or more viewers, and the inserted hyperlink codes are utilized to retrieve and display the one or more matched videos to the one or more viewers of the text file.
According to one aspect, the one or more keywords are selected from a predefined list, dynamically generated, or identified via some combination of both methods.
According to another aspect, the electronic text file comprises a file type selected from the group comprising: a HyperText Markup Language (HTML) file, an Extensible HyperText Markup Language (XHTML) file, and an Extensible Markup Language (XML) file.



BRIEF DESCRIPTION OF THE DRAWINGS
The accompanying drawings illustrate one or more embodiments of the disclosure and, together with the written description, serve to explain the principles of the disclosure. Wherever possible, the same reference numbers are used throughout the drawings to refer to the same or like elements of an embodiment, and wherein:
FIG. 1 is a diagrammatic representation of an embodiment of a dynamic hyperlink generation system that automatically generates and inserts hyperlinks into electronic text files to associate multimedia content with the text files.
FIG. 2 shows a flow chart demonstrating the steps performed by an embodiment of the hyperlink generation module to dynamically create hyperlinks associated with relevant videos.
FIG. 3 is a flowchart illustrating the steps associated with one embodiment of the hyperlink creation process.
FIG. 4 shows an exemplary terminal display illustrating an exemplary electronic text file displayed via an Internet website according to one embodiment of the present system.
FIG. 5 shows an exemplary terminal display of an exemplary electronic text file with hyperlinks displayed via an Internet website according to one embodiment of the present system.
FIG. 6 illustrates an exemplary terminal display of an electronic text file displaying a pop-up video in response to user interaction with a hyperlink in the text file according to one embodiment of the present system.
FIG. 7 illustrates a terminal display of an exemplary hyperlink listing according to one embodiment of the present system.



DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS
For the purpose of promoting an understanding of the principles of the present disclosure, reference will now be made to the embodiments illustrated in the drawings and specific language will be used to describe the same. It will, nevertheless, be understood that no limitation of the scope of the disclosure is thereby intended; any alterations and further modifications of the described or illustrated embodiments, and any further applications of the principles of the disclosure as illustrated therein are contemplated as would normally occur to one skilled in the art to which the disclosure relates.
Aspects of the present disclosure generally relate to systems and methods for automatically generating and inserting hyperlinks associated with multimedia content into electronic text files based on the content of the text files. Generally, an electronic text file is analyzed to identify keywords within the file. The identified keywords are used to search for and retrieve multimedia content related to the keywords. Typically, the multimedia content is associated with metadata that enables the searching and retrieval of specific types of content. Once retrieved, the multimedia content is associated with one or more keywords to generate a hyperlink between the content and keywords. After it is generated, the hyperlink is inserted into the electronic text file at the appropriate keyword location to create a link to the retrieved multimedia content. Preferably, the generated hyperlinks create links to multimedia content that is contextually relevant to the content of the electronic text files. This process of dynamically generating and inserting hyperlinks into text files enables efficient creation of hyperlinks for vast amounts of content on a recurring basis and/or on the fly as new multimedia content and/or electronic text files become available.
Referring now to the drawings, FIG. 1 is a diagrammatic representation of an embodiment of a dynamic hyperlink generation system 10 that automatically generates and inserts hyperlinks into electronic text files to associate multimedia content with the text files. For exemplary purposes and for ease of reference, the embodiment shown in FIG. 1 (and referenced in other parts of this disclosure) represents a system 10 for linking video files with electronic text files. As will be understood and appreciated by one of ordinary skill in the art, however, other types of multimedia content (e.g. audio files, websites, digital images, etc.) are also linked to electronic text files according to various other embodiments of the present system, and the present system is in no way limited to creation of hyperlinks that link to videos. In the embodiment shown, the system 10 includes a web server 20, a hyperlink generation module 40, a video database 60, a content database 70, and a video database index 80. The system 10 also includes a connection to one or more viewers or users 95 via a network 90 (e.g. the Internet). As will be understood, although the embodiment of the system 10 shown in FIG. 1 includes only one of each of a web server, video database, content database, video database index, and hyperlink generation module, other embodiments of the present system include a plurality of each of these components. As will also be understood, according to one embodiment, the content database 70, video database 60, and video database index 80 are merged into a single database.
According to one embodiment, the web server 20 hosts data content, such as web pages including electronic text files 30. Although the server shown in FIG. 1 represents a web server for hosting Internet activity, embodiments of the present system are not limited to such servers, and other servers (e.g. general-purpose servers within a networked environment) are used according to various embodiments of the present system. Examples of electronic text files 30 include, but are not limited to, electronic documents, news and other content-related articles, blog postings, message board postings, threaded discussions, emails, or any other text-based, computer-readable file. Generally, each electronic text file 30 within the system 10 comprises a HyperText Markup Language (HTML) file, an Extensible HyperText Markup Language (XHTML) file, an Extensible Markup Language (XML) file, or some other similar file type as will occur to one of ordinary skill in the art. In a preferred embodiment, the electronic text files comprise HTML files that are hosted and displayed on a website to Internet users 95 via the web server 20 and network 90.
In the embodiment shown in FIG. 1, electronic text files 30 are stored in the content database 70 for subsequent use. To initiate the dynamic hyperlink creation and insertion process as described herein, a given electronic text file 30 is retrieved from the content database 70 by the web server 20 and provided to the hyperlink generation module 40. At this stage, the text file generally does not include any hyperlinks, although some text files may include manually-coded hyperlinks, or hyperlinks generated during previous iterations via the hyperlink generation module process 200 (described below). The hyperlink generation module 40 analyzes the electronic text file to identify keywords contained within the file. The keywords are identified and located within the electronic text file via one or more predetermined algorithms, as described in greater detail below. According to one embodiment, the hyperlink generation module 40 comprises a third party component external to the web server system and operated independently and separately from the web server network. According to another embodiment, the hyperlink generation module comprises a component internal to the web server's network.
Once identified, the keywords are used to query the video database index 80 to identify and locate videos that are relevant or germane to the keywords (and, typically, to the overall content of the electronic text file 30). According to one embodiment of the present system 10, the video database index 80 stores indexed video files that have been pre-associated with metadata related to content in the videos, such as the subjects of the videos, people or actors in the videos, video titles, video creation or publish dates, places described in the videos, or any other desired video content (described in greater detail below). Thus, the hyperlink generation module 40 queries the video database index 80 as a function of the identified keywords to locate videos with metadata identifiers that match or are somehow related to the keywords.
Once the relevant videos have been identified based on the keywords and related metadata, the hyperlink generation module 40 dynamically generates a hyperlink for one or more of the identified keywords in the electronic text file 30, thus providing a link for each keyword to the identified video or videos (described in greater detail below). According to one embodiment, the video database index 80 includes indexed versions of video files (associated with metadata identifiers) that mirror the videos stored in video database 60. Generally, the video database 60 stores the multimedia content associated with a given web server 20. According to one embodiment, as videos are added or removed from video database 60, corresponding updates are made to the video database index 80 via communication link 15. The hyperlink generation module 40 is able to access addresses and locations of videos stored in video database 60 via communication link 15, and thus create pointers to those videos for the generated hyperlink. Once generated, the hyperlinks are inserted into the electronic text file 30 by the hyperlink generation module to transform the text file into an electronic text file with hyperlinks 50.
Still referring to FIG. 1, after the hyperlinks have been inserted, the text file with hyperlinks 50 is returned to the web server 20 where it is made available to users 95, or stored in the content database 70 for subsequent use, or otherwise processed. As mentioned, in one embodiment, the hyperlinks associated with the keywords include pointers that point to videos in the particular web server's 20 video database 60 based on the addresses (i.e. storage locations or identifiers) of those videos in the database. According to one embodiment, when an electronic text file with hyperlinks 50 is made available for viewing by users 95, the identified videos are retrieved from the video database 60 and stored in memory. Thus, if a user clicks on a hyperlink in the text file 50, the system is able to quickly display the associated video (or list of videos) to the user. In another embodiment, rather than storing the videos in memory, an access call is made to the video database 60 to retrieve the associated video(s) each time a user 95 interacts with a hyperlink. Regardless of how identified videos are stored within each embodiment, the present system 10 enables dynamic creation of hyperlinks within electronic text files and display of relevant multimedia content to users based on the content in the text files.
Referring now to FIG. 2, a flow chart is shown demonstrating the steps performed by a hyperlink generation module 40 to dynamically create hyperlinks associated with relevant videos according to one embodiment of the present system. Again, as mentioned previously, while exemplary embodiments of the present system are described in relation to hyperlinks associated with video content, hyperlinks are created with other content types according to various other embodiments. Initially, as described above, an electronic text file 30 is received by the hyperlink generation module 40 from a web server 20 (step 205). As will be understood and appreciated, the hyperlink generation process 200 is performed on a looping and continual basis as new electronic text files and/or video content is received by the system 10. Thus, one embodiment of the system repeats process 200 for a new electronic text file each time such a file is created within or received by the system. According to another embodiment, process 200 is repeated for each electronic text file in the system as new video content is received by or created within the system to ensure that the most relevant and up-to-date video content is linked to the text files. Accordingly, in some embodiments, process 200 is performed not only on electronic text files 30, but also on electronic text files with hyperlinks 50 to ensure that hyperlinked video content is relevant and current. As will be understood and appreciated, the hyperlink generation module process 200 may be performed in a variety of ways as desired by a system operator and as will occur to one of ordinary skill in the art.
At step 210 in FIG. 2, the hyperlink generation module 40 identifies one or more keywords within the electronic text file 30. The keywords may relate to virtually any content within the electronic text file, such as names, places, dates, things, action words, acronyms, etc. As will be understood by one having ordinary skill in the art, the keywords may be determined in any number of ways. According to one embodiment of the present system, keywords are predefined by a system operator, and the hyperlink generation module scans the electronic text file via a searching algorithm to determine if any of the keywords in the predefined list of keywords are included in the text file. For example, some system operators may desire only to link particular types of video content to electronic text files, regardless of the subject matter of the text files. Thus, the system operator may define a set of keywords that link to that particular type of video content.
A particularly relevant application of use of predefined keywords is in the marketing or advertising context. For example, an automobile manufacturer may want to display videos (e.g. commercials) related to its products to users 95 based on relevant keywords such as “car”, “automobile”, “hybrid”, “gasoline”, etc. Thus, the automobile manufacturer is able to contract with a content provider to generate hyperlinks related to the manufacturer's products each time a predefined keyword appears in the content provider's hosted content (i.e. electronic text files). As will be understood, predefined keywords may be used for other applications not herein described, as will occur to one having ordinary skill in the art.
In another embodiment, keywords are defined and identified through the use of Natural Language Processing (NLP) of the text. In general, NLP systems convert samples of human language into more formal representations that are easier for computer programs to manipulate. According to one embodiment, the NLP system comprises a form of “computational linguistics,” which includes the statistical and/or rule-based modeling of natural language from a computational perspective. For example, one embodiment of the present system uses a tf-idf (term frequency-inverse document frequency) weighting to evaluate how important or relevant a term or word is to an electronic text file or collection of text files. The number of times a term occurs in an electronic text file or document is called its “term frequency”. However, because many words are common (e.g. “the”, “for”, etc.), simply using words with the highest term frequency as the keywords will incorrectly emphasize common words. Hence, an “inverse document frequency” factor is incorporated that diminishes the weight of terms that occur very frequently in the text file or collection of files and increases the weight of terms that occur less frequently. Accordingly, one embodiment of the present system utilizes a searching algorithm (e.g. a contextualizer screen) to analyze all words in an electronic text file 30 and determine the tf-idf weighting for each word. Words that have tf-idf weightings above a predetermined threshold are defined as the keywords for the particular text file. Further examples and explanations of tf-idf processes are described in Salton, G. and Buckley, C., Term-Weighting Approaches in Automatic Text Retrieval, Information Processing and Management 24 (5), pp. 513-23 (1988), which is incorporated herein by reference as if set forth herein in its entirety. As will be understood and appreciated, various forms of NLP and tf-idf weighting are used according to various embodiments of the present system 10.
According to a preferred embodiment, NLP is used in combination with lists of predefined terms to determine keywords based on relevant or recent topics, news stories, etc. The keywords are determined by a keyword generation algorithm that spiders the Internet and collects a sampling of news articles and other related content, and then extracts popular names and/or topics from the collected set. The extracted names and topics are used to define a predetermined list of keywords for keyword identification in electronic text files 30 and subsequent hyperlink generation. According to one embodiment, popular names are extracted based on heuristics (e.g. Mr. President, Mrs. President, etc.) (for further explanation of heuristics, see Pearl, Judea, Heuristics, Addison-Wesley Publishers (1984), which is incorporated herein by reference as if set forth herein in its entirety), predefined lists of first and/or last names (e.g. famous names associated with celebrities, political leaders, etc.), and the term frequency of recognized names. Thus, based on these heuristics, predefined lists, and term frequencies, the keyword generation algorithm is able to determine names that are mentioned frequently or are in the news over a predefined time period (e.g. the past few days), and define those names as keywords.
In the preferred embodiment, popular topics are extracted based on N-grams and the term frequency of extracted/recognized N-grams. As will be understood by one of ordinary skill in the art, an N-gram comprises a sub-sequence of N items from a given sequence. Generally, N-gram models are a type of probabilistic model used for predicting the next item in a sequence. For example, the items in the sequence may be phonemes, syllables, letters, words, base pairs, etc. Preferably, bigrams (sequences of two words) and trigrams (sequences of three words) are used for scanning a content collection. Thus, based on the frequency of phrases in the collection, the keyword generation algorithm identifies popular phrases (i.e. topics) and defines those phrases as keywords (specifically, sequences of terms comprising a keyword set). As will be understood and appreciated, various sizes of N-grams are used according to various embodiments, and the present system is not limited specifically to the use of bigrams and trigrams.
Still referring to FIG. 2, regardless of the method used to define keywords, a searching algorithm is used to scan the electronic text file 30 to identify any keywords that match the defined keywords. After the keywords have been identified, the hyperlink generation module 40 queries the video database index 80 to identify one or more videos associated with those keywords (step 215). According to one embodiment, if many keywords are identified within a given electronic text file, then the system only retrieves videos and creates hyperlinks for a subset of the identified terms (e.g. the ten terms with the highest tf-idf weights) as defined by a system operator. As described previously, in one embodiment, the stored videos are tagged and indexed via metadata identifiers according to content within the videos to enable efficient and scalable searching of all indexed videos based upon the metadata identifiers. The metadata identifiers or attributes are associated with a variety of content elements within the videos, such as people or actors in the videos, objects in the videos, places shown or described in the videos, video scenes, subject matter, etc. Various methods are known for analyzing and associating metadata with videos to enable indexing and searching of the videos, such as those described in U.S. Patent Publication No. 2002/0108112 to Wallace et al., and U.S. Patent Publication No. 2004/0237101 to Davis et al., both of which are incorporated herein by reference as if set forth herein in their entireties. Alternatively, some videos are tagged with metadata when they are created (e.g. commercials). Thus, in one embodiment, all videos are associated with metadata based on each video's content before the videos can be searched and subsequently linked to electronic text files.
As mentioned, the hyperlink generation module 40 queries the video database index 80 using the identified keywords to identify video files with metadata corresponding to the keywords. Generally, videos are searched for and retrieved separately for each identified keyword (or set of keywords, such as with an N-gram, a first and last name combination, etc.), such that each keyword or keyword set is linked to its respective identified video content. According to one embodiment of the present system, the hyperlink generation module searches for and retrieves videos as a function of predefined system settings as defined by a system operator. For example, one aspect of the system simply retrieves all videos that have one or more of the identified keywords in the title of each video. Alternatively, another aspect only retrieves videos with actor- or person-related metadata that matches keyword names identified in text files. Still a further aspect retrieves videos associated with metadata identifiers that match all the keywords in a given electronic text file, or some predetermined percentage of the identified keywords. As will be understood by one of skill in the art, the method in which a video or videos are retrieved for inclusion in a hyperlink may be varied as desired by a system operator. Preferably, because keywords are generally related to the overall content of an electronic text file 30, it is assumed that retrieved videos are also so related, and a user 95 viewing the text file will have an interest in the related video content.
Still referring to FIG. 2, once the video files have been identified or selected by the hyperlink generation module 40, a hyperlink is automatically created for each keyword corresponding to the retrieved video or videos for that keyword, as described in greater detail below in conjunction with the hyperlink code creation process 300 shown in FIG. 3. To avoid redundancy, some embodiments of the present system 10 only create a hyperlink for the first instance (or some limited number of instances) of each keyword in an electronic text file (e.g. if 100 instances of the name “Obama” are identified in a text file, the system only creates a hyperlink for the first instance or first few instances). Once generated, each hyperlink (i.e. the program code associated with each hyperlink) is inserted into the electronic text file at its appropriate keyword location (step 220). Generally, hyperlinks are written in the same programming language as is the electronic text file. For example, in a preferred embodiment, because electronic text files comprise HTML format, hyperlinks are also written in such format. After all hyperlinks have been inserted, the electronic text file 30 is thereby transformed into an electronic text file with hyperlinks 50, and is returned to the web server 20 for display to users 95 or for other subsequent use (step 225).
FIG. 3 is a flowchart illustrating the steps associated with one embodiment of the hyperlink code creation process 300. The steps illustrated in process 300 are performed for each keyword and video(s) combination identified via process 200. As will be understood, according to one embodiment, the steps shown in FIG. 3 are carried out automatically by a computer algorithm such that no manual or human coding is required. Initially, the keywords and videos that were identified during the hyperlink generation module process 200 are retrieved for use in hyperlink creation (steps 305, 310). At step 315, the system identifies the addresses or locations of the identified videos within the video database 60. As mentioned previously, in one embodiment of the present system, the video database index 80 stores indexed and metadata-associated file instances of the videos contained in the video database 60, and the content of both databases is updated correspondingly via communication link 15 as videos are added to or removed from either database. Accordingly, as videos are identified in the video database index 80, the storage addresses or filenames of the corresponding videos in the video database 60 can be obtained by the hyperlink generation module 40 via link 15. These storage addresses, filenames, or other location identifiers are used to point to the associated video content for each respective hyperlink.
After the location identifiers or addresses have been obtained for each video associated with a given keyword, the keyword (or keyword set) is associated with the identified video address(es) according to a predefined hyperlink program code to create the hyperlink code for the respective keyword (step 320). An exemplary HTML hyperlink code is represented as follows:
<a href=“video address”>keyword</a>
wherein “video address” represents the identified storage location of the video, and keyword represents the respective identified keyword. Once generated, the hyperlink code is inserted into the electronic text file 30 at the appropriate keyword location (discussed above in reference to step 220 in FIG. 2). As will be understood and appreciated by one of ordinary skill in the art, while an HTML hyperlink code format is shown, the hyperlinks may be configured according to various known methods so long as the hyperlink retrieves and displays the identified and appropriate video content when clicked by a user 95.
Referring now to FIG. 4, an exemplary terminal display 400 is shown illustrating an exemplary electronic text file 30 displayed via an Internet website. As shown, the exemplary electronic text file comprises a news article discussing a presidential address regarding an economic stimulus package. As mentioned previously, electronic text files 30 may comprise articles, blog postings, threaded discussions, emails, and other similar text-based files. As shown, the electronic text file 30 represented in FIG. 4 includes no hyperlinks, thus indicating it has not yet been processed according to an embodiment of the present system.
FIG. 5 shows a terminal display 500 of an exemplary electronic text file with hyperlinks 50 displayed via an Internet website. The text file with hyperlinks shown in FIG. 5 corresponds to the same text file represented in FIG. 4, but at a time subsequent to the file being processed to include dynamically-created hyperlinks associated with identified keywords. As shown, hyperlinks 505, 510, 515, 520 were created and inserted in the text file for the terms “Obama” (and “Barack Obama”), “stimulus package”, “recession”, and “Hillary Clinton”, respectively. These representative hyperlinks were generated and inserted into the text file based on the file's content according to the methods as described previously in connection with FIGS. 2 and 3. As one of ordinary skill in the art will understand, the hyperlinked terms shown in FIG. 5 are presented for illustrative purposes only, and many other terms within the electronic text file could have been selected as keywords and thereby hyperlinked depending upon the predefined attributes of the algorithms or computer programs used to generate the hyperlinks according to a particular embodiment of the present system. Additionally, although the hyperlinked terms are shown in bold and underlined, it will be understood that hyperlinks are represented in a variety of known manners according to various embodiments of the present system.
According to one embodiment and as described previously, when a user 95 clicks on one of the generated hyperlinks, a video 605, videos, or list of further video hyperlinks 705 is returned that is or are relevant to the particular keyword selected and, preferably, the overall content of the electronic text file 50. If a single video is hyperlinked to the keyword, then, depending on the embodiment, when the hyperlink is clicked by a user 95, that video is displayed via a pop-up window 605 on the website (shown in FIG. 6), or the user is directed to a separate webpage where the video is displayed, or the video is presented according to some other known technique.
As shown in FIG. 6, a video of President Obama addressing Congress regarding an economic stimulus package is displayed to a user via a pop-up window 605. The display of this video is in response to the user clicking on one of the hyperlinks in the electronic text file with hyperlinks 50 shown in FIG. 5. As described previously, preferably, the video content is highly-relevant to the text file content. Thus, as shown in FIG. 6, the content of the video (i.e. the President addressing Congress regarding a stimulus package) is contextually related to the content of the text file (i.e. a discussion of the President's address to Congress regarding the stimulus package). As mentioned previously, while videos are preferably contextually related to text file content, embodiments of the present system 10 are able to link multimedia content to keywords based on a variety of desired criteria.
According to another embodiment, rather than displaying a single video, the system displays a list of hyperlinks 705 (i.e. list of links to further videos) in response to user interaction with a keyword hyperlink. FIG. 7 illustrates a terminal display 700 of an exemplary hyperlink listing according to one embodiment of the present system. As will be understood and appreciated, a plurality of videos may apply or be relevant to a single keyword (or keyword phrase/set), and thus a list of those videos is presented to a user in response to the hyperlinked keyword being clicked. Generally, the list 705 includes icons or further clickable links to the videos themselves. Depending on the embodiment, if icons are presented, the icons comprise clickable thumbnail representations of the videos, or short titles of the videos, etc. In one embodiment, each hyperlinked phrase or icon in the list comprises the title of its respective video. As will be understood, the list of hyperlinks 705 may be presented via a pop-up window, or on a separate webpage, etc.
Preferably, if a list of hyperlinks 705 is displayed to a user 95, the hyperlinks are ranked based on their relevance to the content of the electronic text file 50. The exemplary list of hyperlinks shown in FIG. 7 corresponds to the “Obama” or (“Barack Obama”) keywords in the electronic text file with hyperlinks 50. Accordingly, as demonstrated by the hyperlink titles associated with the videos, the videos generally include some reference to Barack Obama. However, videos that are related not only to the keyword (i.e. “Obama”), but also to the general context of the text file (i.e. recession, stimulus package, politics, influential leaders, etc.) are displayed as well. Videos that include high relevance to both the keyword and the overall context of the text file are preferably displayed first, so that a user 95 is more likely to view the videos. Videos are deemed highly-relevant to the text file content based on a variety of methods, including ranking videos first that have high percentages of metadata that match extracted keywords from the text file, or simply ranking the most recent (i.e. newest) videos first, etc. As will be understood, videos may be ranked in a variety of manners based on the parameters of a given embodiment of the system.
The foregoing description of the exemplary embodiments has been presented only for the purposes of illustration and description and is not intended to be exhaustive or to limit the inventions to the precise forms disclosed. Many modifications and variations are possible in light of the above teaching.
The embodiments were chosen and described in order to explain the principles of the inventions and their practical application so as to enable others skilled in the art to utilize the inventions and various embodiments and with various modifications as are suited to the particular use contemplated. Alternative embodiments will become apparent to those skilled in the art to which the present inventions pertain without departing from their spirit and scope. Accordingly, the scope of the present inventions is defined by the appended claims rather than the foregoing description and the exemplary embodiments described therein.

## Claims

1. A system for creating hyperlinks within electronic text files that link to multimedia video content, wherein the multimedia video content is contextually related to the electronic text files, comprising:
a content database storing electronic text files;
a video database storing multimedia video content;
a web server configured to send content to requesting user devices, the content including the electronic text files and the multimedia video content;
a hyperlink generation module in communication with the content database and the video database, configured to execute computer-implemented steps of:
retrieving an electronic text file from the content database;
analyzing the electronic text file by term weighting words in the electronic text file to identify one or more keywords contextually relevant to the electronic text file;
for at least one keyword of the one or more keywords:
querying a video database to identify at least one multimedia video content item related to the at least one keyword, the multimedia video content item identified by comparing the at least one keyword to metadata associated with the multimedia video content;
generating at least one hyperlink for the keyword, the generated hyperlink including a pointer to the identified multimedia video content item related to the at least one keyword;
inserting a keyword hyperlink into the electronic text file prior to the web server sending the electronic text file to a user device, the keyword hyperlink linking the at least one keyword to a display based on the generated hyperlink;
responsive to inserting the keyword hyperlink into the electronic text file, and prior to receiving a request for the multimedia video content item, copying the multimedia video content item from the video database into a particular memory, from which the web server is configured to quickly access the multimedia video content when requested by the user device from the electronic text file.

2. The system of claim 1, wherein querying a database of the one or more databases further comprises:
retrieving a plurality of multimedia video content items;
extracting the metadata associated with the multimedia video content.

3. The system of claim 1, wherein the electronic text files include one or more of: electronic documents, news and other content-related articles, blog postings, message board postings, threaded discussions, email messages, text-based computer-readable files, HyperText Markup Language (HTML) files, Extensible HyperText Markup Language (XHTML) files, Extensible Markup Language (XML) files, or webpages.

4. The system of claim 1, wherein the pointer includes a storage addresses in the database for the identified multimedia content item.

5. In a computer network, a method for dynamically creating one or more hyperlinks within an electronic text file, comprising the steps of:
analyzing the electronic text file by term weighting words in the electronic text file to identify one or more keywords contextually relevant to the electronic text file;
for at least one keyword of the one or more keywords:
querying a multimedia content database to identify at least one multimedia video content item related to the at least one keyword, the multimedia video content item identified by comparing the at least one keyword to metadata associated with multimedia video content in the multimedia content database;
generating at least one hyperlink for the keyword, the generated hyperlink including a pointer to the identified multimedia video content item related to the keyword for subsequent retrieval of the multimedia video content item;
inserting a keyword hyperlink into the electronic text file prior to a web server sending the electronic text file to a user device, the keyword hyperlink linking the at least one keyword to a display based on the generated hyperlink;
responsive to inserting the keyword hyperlink into the electronic text file, and prior to receiving a request for the multimedia video content item, copying the multimedia video content item from the multimedia content database into a particular memory;
the web server responding to a request from the user device for the multimedia video content item by accessing the multimedia video content item from the particular memory.

6. The method of claim 5, wherein querying the multimedia content database index further comprises:
retrieving a plurality of multimedia video content items;
extracting the metadata associated with the multimedia video content.

7. The method of claim 5, wherein the identified plurality of multimedia video content items are contextually related to the electronic text file.

8. The method of claim 5, wherein the electronic text file includes one or more of: an electronic document, a news and other content-related article, a blog posting, a message board posting, a threaded discussion, an email, a text-based computer-readable file, a HyperText Markup Language (HTML) file, an Extensible HyperText Markup Language (XHTML) file, an Extensible Markup Language (XML) file, or a webpage.

9. The method of claim 5, wherein the pointer includes storage addresses within the computer network for the identified multimedia video content item.

10. A method for automatically creating one or more hyperlinks within an electronic text file, wherein each hyperlink of the one or more hyperlinks is linked to one or more videos that are contextually relevant to content of the electronic text file, the method comprising:
receiving an electronic text file from a content database;
analyzing the electronic text file by term weighting words in the electronic text file to identify one or more keywords contextually relevant to the electronic text file;
retrieving a plurality of videos from a video database, each video in the plurality of videos associated with one or more metadata identifiers;
extracting the one or more metadata identifiers from each video in the plurality of videos;
comparing the one or more extracted metadata identifiers with the one or more identified keywords to identify a plurality of matches between the one or more extracted metadata identifiers and the one or more identified keywords;
for at least one keyword in the one or more identified keywords:
retrieving a storage address in the video database for at least one multimedia video content item associated with the one or more extracted metadata identifiers matched to the respective keyword;
associating the storage address for the multimedia video content item with the keyword to generate at least one hyperlink for the keyword; and
inserting a keyword hyperlink into the electronic text file, the keyword hyperlink linking the at least one keyword to a display based on the generated hyperlink;

storing the electronic text file with the inserted keyword hyperlink in the content database;
in response to a request for the electronic text file, sending the electronic text file with the inserted keyword hyperlink to a client device and, prior to receiving a request for the multimedia video content item, copying the multimedia video content item from the video database into a particular memory;
responding to a request from the user device for the multimedia video content item by accessing the multimedia video content item from the particular memory.

11. The method of claim 10, wherein the electronic text file includes one or more of: an electronic document, a news and other content-related article, a blog posting, a message board posting, a threaded discussion, an email message, a text-based computer-readable file, a HyperText Markup Language (HTML) file, an Extensible HyperText Markup Language (XHTML) file, an Extensible Markup Language (XML) file, or a webpage.

12. The system of claim 1, the computer-implemented steps further comprising:
subsequent to inserting the keyword hyperlink into the electronic file, the hyperlink generation module inserting into the electronic text file one or more different hyperlinks to different multimedia video content items.

13. The system of claim 1, wherein querying the video database comprises querying the video database using a subset of the at least one keyword.

14. The method of claim 5, further comprising automatically updating the generated plurality of hyperlinks, after inserting the keyword hyperlink, in response to an update to the multimedia video content.

15. The method of claim 5, wherein querying the multimedia content database comprises querying the multimedia content database based on a subset of the at least one keyword.

16. The method of claim 10, further comprising, after storing the electronic text file with the inserted keyword hyperlink in the video database, automatically repeating retrieving the storage address, associating the storage address, inserting the keyword hyperlink, and storing the electronic text file with the inserted keyword hyperlink.

17. The method of claim 16, wherein automatically repeating retrieving the storage address, associating the storage address, inserting the keyword hyperlink, and storing the electronic text file with the inserted keyword hyperlink occurs on a recurring basis.

18. The method of claim 16, wherein automatically repeating retrieving the storage address, associating the storage address, inserting the generated hyperlink code, and storing the electronic text file with the one or more inserted hyperlink codes occur as new videos become available.