US20130254643A1 - Digital Content Enhancement Platform - Google Patents
Digital Content Enhancement Platform Download PDFInfo
- Publication number
- US20130254643A1 US20130254643A1 US13/891,822 US201313891822A US2013254643A1 US 20130254643 A1 US20130254643 A1 US 20130254643A1 US 201313891822 A US201313891822 A US 201313891822A US 2013254643 A1 US2013254643 A1 US 2013254643A1
- Authority
- US
- United States
- Prior art keywords
- content
- rendering
- display area
- term
- computer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- G06F17/2235—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/134—Hyperlinking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
- G06F16/9577—Optimising the visualization of content, e.g. distillation of HTML documents
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0276—Advertisement creation
Definitions
- news web sites typically provide a home page that lists the headlines and summaries of current articles, much like the cover page of a traditional print newspaper.
- the headlines of such articles contain hyperlinks to the bodies of the articles, so that users can navigate to the beginning of an article by clicking on its headline. Users can then scroll vertically through the article using a scrollbar and/or cursor navigation keys, and browse from page to page by clicking on “next page” and “previous page” buttons.
- the author of a particular news article may mark up the article's text with hyperlinks to related content on the same web site or other web sites, thereby allowing the user to navigate to such related content by clicking on the hyperlinks.
- Advertisements may be displayed in connection with the article content, such as in the form of banner advertisements displayed alongside the article content or pop-up advertisements that appear in new windows displayed on top of the article content.
- pop-up advertisements typically appear on top of and thereby obscure the main article content. If such advertisements are displayed automatically (e.g., even if the user does not click on a link or otherwise affirmatively request that the advertisement be displayed), then the advertisement may interrupt the user's experience of reading the main article content. To return to reading the main article, the user must then move or close the pop-up window. Users who become frustrated with this experience may eventually disable pop-up ads from being displayed permanently. This may be disadvantageous not only to the advertiser and the web site owner by decreasing their advertising revenue, but also to the user, who may wish to see relevant advertisements but in a less obtrusive way.
- a related disadvantage of conventional techniques for displaying web site content and for enabling users to navigate through such content is that they can make it difficult for users to engage in the kind of nonlinear exploration of content for which the Web and hypertext were designed. For example, if a user clicks on a hyperlink within a news article, the destination (target) of the hyperlink typically is displayed by refreshing the current web page to contain the destination content, or by opening the destination content in a new tab or a new window. In any of these cases, it can be difficult, tedious, and time-consuming for the user to return to the point in the original article that contains the hyperlink.
- returning to the original article typically requires clicking on the browser's “back” button or clicking on a “return to article” link. If the user has followed several additional links after clicking on the original link, the user may need to click on the “back” button several times or otherwise engage in several actions. Sometimes such efforts to return to the original article content fail, thereby requiring the user to re-enter the URL of the original article content or otherwise engage in other manual effort to return to the original article.
- a computer-based system provides a user interface for displaying hyperlinked content (such as web content) and for enabling users to navigate the hyperlinks contained within such content.
- hyperlinked content such as web content
- One benefit of various embodiments of the present invention is that they enable primary hyperlinked content to be rendered, and for associated content (i.e., content located at the destinations of hyperlinks within the primary content) to be rendered without replacing, overwriting, or otherwise obscuring the rendering of the primary content.
- the rendering of the primary content remains fully visible after the associated content is rendered and while the rendering of the associated content is visible.
- the associated content may be rendered in an existing display area that does not overlap with the display area containing the rendering of the primary content.
- the primary content may previously have been extracted from another source.
- a first web page may contain a news article containing or consisting of the primary content.
- the news article may be displayed in addition to various other content, such as advertisements, a masthead, and navigational tools such as buttons and hyperlinks.
- Only the article content, such as the headline, byline, and article (hyper)text may be extracted from the first web page as the primary content. This extracted primary content may then be made available for viewing and browsing using the enhanced user interface described above.
- the extracted primary content may be enhanced before it is made available for viewing and browsing using the enhanced user interface.
- the primary content may or may not contain hyperlinks within the first (original) web page. While or after extracting the primary content from the first web page, however, existing hyperlinks within the primary content may be modified and/or new hyperlinks may be added.
- hyperlinks having multiple destinations (“multi-destination links”) may be added.
- a multi-destination link has a single source (anchor) but two or more destinations.
- Each link destination may be associated with one or more types, referred to herein as “facets.” For example, consider a multi-destination link in which the anchor is the term “tennis,” having as a first destination an encyclopedia entry for the word “tennis” and having as a second destination an advertisement for a tennis equipment retailer. In this example, the first destination may be associated with the facet “encyclopedia” and the second destination may be associated with the facet “advertisement.”
- Different multi-destination links may have different numbers of destinations, and may have destinations associated with different facets than each other.
- the enhanced user interface may:
- one embodiment of the present invention is directed to a method for use with primary content, wherein the primary content includes a first term, wherein the first term is associated with a first plurality of associated contents, wherein the first plurality of associated contents includes first associated content and second associated content.
- the method comprises: (1) rendering at least part of the primary content to create a rendering of the at least part of the primary content, including rendering the first term to create a rendering of the first term; (2) rendering the first associated content to create a rendering of the first associated content in a first existing display area wherein the rendering of the at least part of the primary content remains fully visible after the first associated content is rendered; and (3) rendering the second associated content to create a rendering of the second associated content in a second existing display area, wherein the rendering of the at least part of the primary content remains fully visible after the first associated content is rendered.
- the primary content includes: (A) a first term, wherein the first term is associated with first associated content and second associated content, wherein the first associated content is associated with a first facet, and wherein the second associated content is associated with a second facet; and (B) a second term, wherein the second term is associated with third associated content and fourth associated content, wherein the third associated content is associated with the first facet, and wherein the second associated facet is associated with a third facet.
- the method comprises: (1) rendering at least part of the primary content to create a rendering of the at least part of the primary content, including rendering the first term to create a rendering of the first term and rendering the second term to create a rendering of the second term; (2) receiving first user input selecting the first facet; (3) receiving second user input selecting the first term; (4) in response to receiving the second user input, rendering the first associated content to create a rendering of the first associated content in a first existing display area, wherein the rendering of the at least part of the primary content remains fully visible after the first associated content is rendered; (5) receiving third user input selecting the second term; and (6) in response to receiving the third user input and without receiving additional input selecting the first facet, rendering the third associated content to create a rendering of the third associated content in the first existing display area, wherein the rendering of the at least part of the primary content remains fully visible after the third associated content is rendered.
- FIGS. 1A-1E are diagrams of prior art computing devices for rendering hypertext documents
- FIG. 1F is a diagram of prior art hyperlinked content
- FIGS. 2A-2C are diagrams of user interfaces for rendering and navigating hypertext documents according to various embodiments of the present invention.
- FIGS. 3A-3C are diagrams illustrating the use of a rendering engine to render hypertext content according to various embodiments of the present invention.
- FIGS. 4A-4C are flowcharts of methods performed by various embodiments of the present invention.
- FIGS. 5A-5B are diagrams illustrating relationships between multi-destination hyperlinks and facets according to various embodiments of the present invention.
- FIGS. 6A-6B are diagrams of hyperlinked content used by various embodiments of the present invention.
- FIG. 1A a diagram is shown of a computing device 100 that uses a prior art user interface to display hypertext content.
- the interface is typical of the kind used by conventional web browsers.
- the computing device 100 contains a monitor 102 for displaying visual output.
- the monitor 102 includes a physical display area 104 , which is the complete display area on which the monitor 102 is physically capable of displaying output.
- the computing device 100 runs an operating system based on the desktop metaphor, the operating system may display the desktop on the full monitor display area 104 , but display windows of particular applications within a subset of the monitor display area 104 .
- FIG. 1A shows a window 106 of a particular application, which may, for example, be a web browser or other application for displaying hypertext content.
- the application window 106 occupies less than all of the monitor display area 104 .
- the application window 106 may be displayed in a “full screen” mode in which the application window 106 occupies the full monitor display area 104 , and in which the application window 106 is therefore coextensive with the monitor display area 104 .
- the application window 106 may be switchable between normal (non-full screen) and full screen mode in response to user input. Some applications may display by default and/or only in full screen mode, while other applications may display by default and/or only in normal (non-full screen) mode. Many other variations exist and are well-known to those having ordinary skill in the art.
- the application window 106 may contain an application display area 112 for displaying application content.
- the application display area 112 may occupy a subset of the monitor display area 104 . If, for example, the application window 106 belongs to a web browser, then the application display area 112 may display renderings of web pages.
- the application window 106 may also contain various user interface elements, such as a menu 108 and window controls 110 , that are within the application window 106 but outside of the application display area 112 .
- the particular user interface elements 108 and 110 shown in FIG. 1A are merely representative examples. Many other examples of user interface elements falling outside the application display area 112 are well-known to those having ordinary skill in the art.
- the application window 106 need not include any such user interface elements, in which case the application display area 112 may be occupy and be coextensive with the entire application window 106 .
- Hypertext content such as web pages
- FIG. 1A shows a particular layout that is common to web pages designed to display news content.
- the layout shown in FIG. 1A includes a masthead 114 , which may, for example, contain the name of the newspaper (e.g., “The New York Times” or “The San Jose Mercury News”).
- the masthead 114 may be hyperlinked to the home web of the newspaper's web site.
- the web page layout shown in FIG. 1A also contains a primary content display area 116 for displaying a rendering 118 a of primary content, such as the text of a news article.
- a primary content display area 116 for displaying a rendering 118 a of primary content, such as the text of a news article.
- FIG. 1F an illustration is shown of web content 150 a , such as an HTML document, that contains various content that may be rendered within the application display area 112 of FIG. 1A .
- FIG. 1F shows just a few examples of content that may be rendered within the application display area 112 , but those having ordinary skill in the art will understand that the web content 150 a may contain other content that is necessary or useful for creating the rendering shown in FIG. 1A .
- the web content 150 a may contain masthead content 154 for creating the masthead rendering 114 in FIG. 1A , and primary content 158 a for creating the primary content rendering 118 a in FIG. 1A .
- the primary content display area 116 may occupy a subset of the application display area 112 , or may be coextensive with the application display area 112 .
- the primary content rendering 118 a may, for example, represent the entire news article (e.g., the entire primary content 158 a in FIG. 1F ) or only a portion thereof. For example, upon clicking on the headline of the article on the newspaper's home page, the newspaper web site may display the first few paragraphs of the article as the primary content rendering 118 a within the primary content area 116 .
- the user may be required to scroll vertically through the rendering of the primary content 158 a (such as by using cursor navigation keys or a vertical scrollbar 128 ) or to navigate to subsequent pages of the primary content 158 a by clicking on navigation tools 126 (e.g., “next page” and “previous page” links) within a navigation tools area 124 .
- Navigation tools 126 may be renderings of navigation tool content 166 within the web content 150 a in FIG. 1F .
- the layout shown in FIG. 1A also contains an advertisement area 120 for displaying renderings 122 of advertising content 168 .
- advertisement renderings 122 in FIG. 1A are shown as banner advertisements, this is merely an example.
- Various other kinds of advertisements are well-known to those having ordinary skill in the art.
- the advertisement to be displayed as the advertisement rendering 122 may, for example, be hard-coded into the advertising content 168 in the web page 150 a ( FIG. 1F ), or may be dynamically generated, such as by an advertisement server (not shown).
- One kind of dynamically-generated advertisement is a contextual advertisement, which is selected dynamically at the time of rendering the web page 150 a based on factors such as the content of the primary content 158 a and/or demographic characteristics of the user.
- the advertisements 122 are selected, the placement of the advertisements 122 (e.g., the size and location of the advertisement area 120 ) and the process for selecting the advertisements 122 is determined by the designer of the web page 150 a and is encoded into the web page 150 a itself.
- the primary content 158 a may contain one or more hyperlinks, which may be rendered within the primary content rendering 118 a in any of a variety of ways.
- primary content 158 a contains hypertext 160 , which is rendered in FIG. 1A as hyperlinked text 130 .
- the hypertext 160 may, for example, be defined by underlying HTML code, such as an anchor tag, that specifies: (1) the particular text to serve as the hyperlink's source (anchor) 162 , and (2) a location or other identifier 164 of the destination (target) of the hyperlink.
- the application navigates to the content 170 identified by the destination (target) 164 of the hyperlink 160 .
- Such navigation to the target content 170 pointed to be the hyperlink 160 may be executed in a variety of ways.
- the application may “refresh” the primary content area 116 with a rendering of the hyperlink's target content 170 .
- Refreshing involves completely replacing the rendering 118 a of the original primary content 158 a with a rendering of the target content 170 , such as by erasing the rendering 118 a of the original primary content 158 a (e.g., erasing the entire contents of the primary content area 116 ) and rendering the target content 170 in its place (e.g., within the primary content area 116 ).
- This approach is shown in FIG.
- Such refreshing may involve refreshing not only the primary content area 116 but also the entire application display area 112 , including elements such as the masthead 114 , advertisements 122 , and navigation tools 124 .
- the original primary content rendering 118 a is no longer visible on the monitor 102 .
- the user To re-display the rendering 118 a of the original primary content 158 a , the user must take a step such as activating one of the navigation tools 126 in the navigation area 124 , clicking on a “back” button, or re-entering the URL of the web page 150 a containing the primary content 158 a.
- the application may open a new window and render the target content in the new window.
- navigating to the target content 170 pointed to by the target 164 of hypertext 160 may cause the application to open a new window 140 and to render the target content 170 within the window 140 as primary content 118 b .
- the window 140 is “new” in the sense that it was not open before the user selected the hypertext 130 and before the primary content rendering 118 b was rendered into the window 140 .
- the new window 140 overlaps and partially obscures (obstructs) the original primary content rendering 118 a .
- the new window 140 may be located fully outside the boundaries of the primary content area 116 .
- the new window 140 may be located partially or fully within the application display area 112 , or fully outside the application display area 112 .
- the user To remove the rendering 118 b of the destination content 170 , the user must manually close the new window 140 . If the new window partially or fully obstructs the original content rendering 118 a , then to re-view the original content rendering 118 a , the user must manually move or close the new window 140 .
- FIG. 1D As yet another example of navigation to the target of a hyperlink, consider the example of FIG. 1D , in which the primary content rendering 118 a is displayed in a first tab 142 a .
- navigating to the target content 170 of hypertext 130 may cause the application to open a new tab 142 b , to switch to the new tab 142 b (i.e., to make the new tab 142 b the active tab within the application), and to render the target content 170 within the tab 142 b as primary content rendering 118 b .
- FIG. 1E The result is shown in FIG. 1E .
- the tab 142 b is “new” in the sense that it was not open before the user selected the hypertext 130 and before the primary content rendering 118 b was rendered into the tab 142 b .
- the process of switching to the new tab 142 b i.e., making the new tab 142 the active tab causes the rendering 118 b of the target content 170 in the new tab 142 b to replace the rendering 118 a of the original primary content 158 a .
- the user To re-view the original primary content rendering 118 a , the user must manually close the new tab 142 b or manually select the original tab 142 a to cause the original primary content rendering 118 a to once again be visible.
- FIGS. 1A-1E have a variety of disadvantages.
- Various embodiments of the present invention overcome these disadvantages and provide additional benefits as will now be described.
- embodiments of the present invention may include any one or more of the features of conventional user interfaces described above.
- embodiments of the present invention may be used in connection with computing devices having monitors and capable of displaying application windows containing hypertext. Therefore, such conventional features which may be contained within embodiments of the present invention will not be repeated below.
- FIG. 2A shows computing device 100 executing an application that implements one embodiment of the present invention.
- the application may be a conventional application, such as a conventional web browser (e.g., Internet Explorer, Firefox, or Safari), in which case the features of embodiments of the present invention disclosed below may be implemented, for example, solely using data rendered and/or executed by the application, but without requiring any modifications to the application itself.
- embodiments of the present invention may be implemented solely using content that is stored in a standardized presentation format that is transmissible over the Internet, such as HTML, Java, JavaScript, Flash, or any combination thereof.
- Embodiments of the present invention may, in other words, be implemented without requiring any modifications to the source code or object code of the application, without requiring the application to be recompiled, without requiring any plug-ins to be installed in the application, and without requiring any software to be executed in addition to the application on the computing device 100 .
- embodiments of the present invention may be integrated into the application in any of a variety of ways, such as by modifying the source code and/or object code of the application, or by installing a plug-in in the application.
- some or all of the features of embodiments of the present invention may be implemented in a standalone application that is capable of performing any or all of the functions disclosed herein.
- embodiments of the present invention may be implemented: (1) solely in one or more web pages rendered by conventional web browsers, without the need to design or execute additional software, such as web browser plugins; (2) using a combination of web pages and web browser plugins for enabling conventional web browsers to provide the functionality disclosed herein in connection with the web pages; or (3) using a self-contained standalone reader application that provides the functionality disclosed herein in connection with web pages or other content.
- the application associated with the window 106 is an application that executes on the computing device 100 , this is merely an example and does not constitute a limitation of the present invention.
- some or all of the features of embodiments of the present invention may be implemented on a device (not shown) other than the computing device 100 , wherein the other device enables the computing device 100 to provide the user interface functionality disclosed herein.
- features of embodiments of the present invention may be implemented using server-side code which, when executed, causes content to be rendered on the monitor 102 of the device.
- computing device 100 contains monitor 102 , in which application window 106 is displayed.
- content within the application window 106 in FIG. 2A has a particular layout.
- This particular layout is merely an example and does not constitute a limitation of the present invention.
- the layout includes a primary content display area 216 for displaying a rendering 218 a of primary content, such as the text of some or all of a news article.
- FIG. 6A an illustration is shown of web content 602 , such as an HTML document, that contains various content that may be rendered within the application display area 112 of FIG. 2A .
- FIG. 6A shows just a few examples of content that may be rendered within the application display area 112 , but those having ordinary skill in the art will understand that the web content 602 may contain other content that is necessary or useful for creating the rendering shown in FIG. 2A .
- the web content 602 may contain primary content 606 for creating the primary content rendering 218 a in FIG. 2A .
- the layout shown in FIG. 2A also includes a masthead rendering 214 , which may, for example, be a rendering of masthead content 604 ( FIG. 6A ) and contain the name of a newspaper (e.g., “The New York Times” or “The San Jose Mercury News”).
- the masthead rendering 214 may be hyperlinked to the home web of the newspaper's web site.
- the layout shown in FIG. 2A also includes an associated content area 256 for displaying a rendering 258 a of content (referred to herein as “associated content”) that is associated with the primary content 606 represented by the primary content rendering 218 a .
- first hypertext rendering 230 may be a rendering of first hypertext 502 ( FIGS. 5A and 6A ) within the primary content 606 .
- First hypertext 502 may have one or more targets (destinations) 506 a - b
- the associated content rendering 258 a shown within the associated content area 256 may be a rendering of content pointed to by one of the targets 506 a - b.
- multi-destination links Before describing the operation of the user interface shown in FIG. 2A , certain embodiments of multi-destination links will be described. Referring to FIG. 5A , the structures of two multi-destination links 502 and 512 that may be used in conjunction with embodiments of the present invention are shown. The particular multi-destination links 502 and 512 shown in FIG. 5A are merely examples and do not constitute limitations of the present invention. Furthermore, multi-destination links for use in conjunction with embodiments of the present invention may be implemented using any kind of data structure, such as XML, XHTML, or HTML tags, linked lists, or arrays.
- data structure such as XML, XHTML, or HTML tags, linked lists, or arrays.
- Link 502 includes an anchor 504 and targets 506 a and 506 b .
- Link 512 includes anchor 514 and targets 516 a , 516 b , and 516 c .
- first hypertext 230 shown in FIG. 2A is a rendering of anchor 504 in link 502
- second hypertext 232 shown in FIG. 2A is a rendering of anchor 514 in link 512 .
- any particular multi-destination link may include any number of targets, and different multi-destination links may contain the same or different number of targets as each other.
- a target in a multi-destination link may be associated with a “facet.”
- Different multi-destination links may be associated with the same or different facets as each other.
- facet refers to any feature that multiple targets may share in common.
- Different facets may represent, for example, different categories of content.
- there are three facets 520 a - c although there may be any number of facets.
- the three facets 520 a - c represent three content categories: encyclopedia entries, advertising content, and map content, respectively.
- Examples of other facets include, but are not limited to, tickets, reviews, fan information, player statistics, images, videos, shopping, travel, and news.
- Link destinations associated with facets may, for example, be links to static or dynamic content.
- a link destination associated with a “biography” facet may be a link to a static web page containing a biography of a particular person.
- a link destination associated with a “map” facet may be a link to a dynamic map web page, such as Mapquest or Google maps, in which the link anchor (e.g., (“Portland, Oreg.”) is embedded as a parameter in the link destination so that when the destination content is rendered, a map of the appropriate location is rendered dynamically.
- the link anchor e.g., (“Portland, Oreg.”
- the link anchor e.g., (“Portland, Oreg.”
- FIG. 5B illustrates the facets that are associated with targets in the links 502 and 512 . More specifically, target 506 a is associated with facet 520 a , target 506 b is associated with facet 520 b , target 516 a is associated with facet 520 a , target 516 b is associated with facet 520 c , and target 516 c is associated with facet 520 b .
- This particular mapping of targets 506 a - b and 516 a - c to facets 520 a - c is merely an example and does not constitute a limitation of the present invention.
- target-facet mappings may be one-to-many, many-to-one, or many-to-many.
- different links may be associated with a different number of facets than each other.
- a target in one link may be associated with a facet that is not associated with any target in another link (as illustrated by facet 520 c , which is associated with target 516 b in link 512 but not with any target in link 502 ).
- facets are optional. They may also be used selectively.
- target 506 a may be associated with a facet, while target 506 b may not be associated with any facet.
- all targets 506 a - b in link 504 may be associated with facets, while none of the targets 516 a - c may be associated with facets.
- the associations between targets and their corresponding facets may be represented in any way.
- a single data structure may represent the link 502 and include data representing the anchor 504 , targets 506 a - b , associated facets 520 a - b , and the associations between targets 506 a - b and their associated facets 520 a - b .
- a first data structure may include data representing all available facets 520 a - c .
- a second data structure may represent the link 502 and include data representing the anchor 504 , targets 506 a - b , and the associations between targets 506 a - b and their associated facets 520 a - b .
- FIG. 3A a dataflow diagram is shown of a system 300 for controlling the user interface of FIG. 2A according to one embodiment of the present invention.
- FIG. 4A a flowchart is shown of a method 400 performed by the system 300 of FIG. 3 according to one embodiment of the present invention.
- the primary content rendering 218 a includes a rendering 230 of first hypertext 502 ( FIGS. 5A-5B and 6 A).
- element 502 is referred to herein as a “term” and may be or include text, such as a character, word, phrase, sentence, or paragraph, more generally the term 502 may include any kind of content that may serve as the anchor for a hyperlink, such as an image or video.
- second hypertext term 512 which is represented in FIG. 2A by second hypertext rendering 232 .
- primary content rendering 218 a may include renderings of any number of hypertext terms, only two such renderings 230 and 232 are shown in FIG. 2A for purposes of example.
- the first term 502 may be associated with a first plurality of associated contents.
- first rendering 230 may be a rendering of first link 502 , which may have an anchor 504 (rendered within rendering 230 ), first target 506 a , and second target 506 b .
- First target 506 a may point to first associated content 650 a
- second target 506 b may point to second associated content 650 b .
- the first hypertext 502 is said to be associated with the first and second associated contents 650 a and 650 b pointed to by the first and second targets 506 a - b.
- second term 512 may be associated with a second plurality of associated contents.
- second rendering 232 may be a rendering of second link 512 , which may have an anchor 514 (rendered within rendering 232 ), third target 516 a , fourth target 516 b , and fifth target 516 c .
- Third target 516 a may point to third associated content 652 a
- fourth target 516 b may point to fourth associated content 652 b
- fifth target 516 c may point to fifth associated content 652 c .
- the second hypertext 512 is said to be associated with the third, fourth, and fifth associated contents 652 a - c pointed to by the third, fourth, and fifth targets 516 a - c , respectively.
- the system 300 ( FIG. 3A ) includes a rendering engine 304 that renders the primary content 302 to produce a rendering 306 of the primary content 302 ( FIG. 4 , operation 402 ).
- the primary content rendering 218 a shown in FIG. 2A is an example of the rendering 306 shown more abstractly in FIG. 3A .
- the process of rendering 402 the primary content 302 includes rendering the first term 302 a to create a rendering 306 a of the first term 302 a ( FIG. 4 , operation 402 a ) and rendering the second term 302 b to create a rendering 306 b of the second term 302 b ( FIG. 4 , operation 402 b ).
- the first and second term renderings 230 and 232 in FIG. 2A are examples of the first and second term renderings 306 a and 306 b , respectively, shown more abstractly in FIG. 3A .
- the rendering engine 304 may, in certain embodiments of the present invention, be an existing conventional rendering engine, such as an existing rendering engine of a conventional web browser, in which case embodiments of the present invention may provide instructions to or otherwise control the existing rendering engine to perform the functions disclosed herein. As a result, embodiments of the present invention need not include the rendering engine 304 , but may instead control or otherwise interoperate with the rendering engine 304 .
- the first term 302 a may be associated with first associated content 310 a and second associated content 310 b .
- the hypertext 502 of FIG. 5A may be the first term 302 a shown in FIG. 3B , in which case the first target 506 a may point to first associated content 310 a and the second target 506 b may point to second associated content 310 b .
- FIG. 6A Another illustration of the same example is shown in FIG. 6A , in which hypertext 502 includes a first target 506 a that points to first associated content 650 a and a second target 506 b that points to second associated content 650 b.
- the rendering engine 304 may render the first associated content 310 a to create a rendering 312 a of the first associated content 310 a in a first existing display area ( FIG. 4A , operation 404 ).
- the term “existing display area” refers to a display area within the monitor display area 104 that existed before the first associated content 310 a was rendered. Examples of existing display areas include existing windows and portions thereof and existing frames and portions thereof. For example, assuming that associated content area 256 ( FIG.
- associated content area 256 is an example of an “existing display area” as that term is used herein.
- Rendering the first associated content 310 a in an existing display area may, for example, involve rendering the first associated content 310 a without opening a new window, new frame, or new tab.
- the previously-rendered rendering 306 of the primary content 302 (e.g., primary content rendering 218 a in FIG. 2A ) remains fully visible after the first associated content 310 a is rendered to create the first associated content rendering 312 a (e.g., first associated content rendering 258 a ).
- One way in which this result may be accomplished, as shown in FIG. 2A is to create the first associated content rendering 258 a in a frame or other display area that is distinct from and does not overlap with the display area 216 in which the primary content rendering 218 a is displayed.
- the non-overlapping relationship between the primary content rendering 218 a and the associated content rendering 258 a may be enforced in a variety of ways, such as by displaying the primary content rendering 218 a and the associated content rendering 258 a in distinct frames in the same window, by making the sizes and/or positions of the primary content display area 216 and/or the associated content display 256 area fixed, by enforcing layout rules which move and/or resize the primary content display area 216 and/or the secondary content display area 256 in response to movement and/or resizing of one or the other of the display areas 216 and 256 , or by otherwise prohibiting one of the two display areas 216 and 256 from being moved and/or resized in any way that causes one of the display areas 216 and 256 to overlap with the other.
- the first associated content rendering 312 a may be rendered without requiring that the primary content display area 216 be refreshed or otherwise modified.
- the rendering engine 304 may render the first associated content 310 a to create the first associated content rendering 312 a without erasing, re-rendering, reloading, refreshing, or otherwise modifying the existing rendering 306 of the primary content 302 .
- the first associated content rendering 312 a therefore, does not in whole or in part replace, obstruct, overlap with, or obscure the primary content rendering 306 .
- the rendering engine 304 may render the second associated content 310 b to create a rendering 312 b of the second associated content 310 b in a second existing display area ( FIG. 4A , operation 406 ).
- the second existing display area may be the same as the first existing display area. For example, if the first associated content rendering 312 a was displayed within associated content area 256 , the second associated content rendering 312 b may also be rendered within the same associated content area 256 , thereby replacing the rendering 258 a of the first associated content in the associated content display area 256 .
- the second associated content rendering 312 b may be rendered within a different associated content area 262 as second associated content rendering 264 .
- the additional associated content area 262 may not overlap with the first associated content area 256 .
- the first associated content rendering 312 a and the second associated content rendering 312 b may be visible simultaneously.
- the additional associated content area 262 is optional. There may, however, also be additional associated content areas beyond those shown in FIG. 2A .
- the previously-rendered rendering 306 of the primary content (e.g., primary content rendering 218 a in FIG. 2A ) remains fully visible after the second associated content 310 b is rendered to create the second associated content rendering 312 b .
- This result may be accomplished in any of the ways described above for the first associated content rendering 312 a .
- the second associated content rendering 312 b may be rendered without requiring that the primary content display area 216 be refreshed or otherwise modified, in any of the ways described above for the first associated content rendering 312 a.
- window refers to an enclosed, rectangular area on a display screen.
- a window may have a shape other than a rectangle.
- some windows have additional features.
- a window may be movable or immovable, resizable or non-resizable, closable or non-closable, maximizable or non-maximizable, displayable in full-screen mode or not displayable in full-screen mode, opaque or (fully or partially) transparent, have a border or no border, have or lack a menu, and have or lack a toolbar.
- windows may have such features, and other features, in any combination.
- traditional web browsers enable users to “navigate” from one web page to another, by following (activating) hyperlinks from one web page to another.
- navigating a link from a first web page to a second web page typically involves refreshing the application display area 112 so that a rendering of the second web page replaces the rendering of the first web page.
- the process of navigating links according to embodiments of the present invention does not necessarily involve replacing or otherwise obscuring the existing rendering of the first web page.
- terms such as “navigation” and “navigating a hyperlink,” as applied herein to embodiments of the present invention, include any process involving rendering the destination of a hyperlink (whether or not that destination is on a different web page or web site than the source (anchor) of the hyperlink), whether or not rendering refreshes the application display area 112 or replaces or otherwise obscures the existing rendering of the source (anchor) of the hyperlink.
- all of the examples shown and described in connection with FIGS. 2A-2C include examples of “navigating” hyperlinks as that term is used herein.
- activating the hyperlink associated with hyperlink rendering 230 in FIG. 2A to cause associated content to be rendered in associated content area 256 is an example of “navigating” a hyperlink as that term is used herein.
- the rendering engine 404 may render the first associated content 310 a ( FIG. 4 , operation 404 ) in response to a user of the system 310 selecting the first term 302 a , such as by clicking on or hovering over the rendering 230 of the first term 302 a .
- the rendering engine 404 may render the second associated content 310 b ( FIG. 4 , operation 406 ) in response to the user of the system 312 selecting the first term 302 a , such as by clicking on or hovering over the rendering 230 of the first term 230 .
- a particular destination within a multi-destination link may be selected in any of a variety of ways. For example, as illustrated by the method 410 of FIG. 4B , in general the user may provide input selecting a particular facet (operation 412 ), such as one of the facets 520 a - c illustrated in FIG. 5B . The user may provide such input in any of a variety of ways.
- the user selects a first term associated with a first multi-destination link, such as the term represented by first term rendering 230 in FIG. 2A ( FIG. 4B , operation 414 ).
- the method 410 identifies, from among the plurality of destinations of the first multi-destination link, a first destination, if any, associated with the facet previously selected in operation 412 ( FIG. 4B , operation 416 ). If such a destination is found, the rendering engine 304 renders the associated content pointed to by the first destination identified in operation 416 ( FIG. 4 , operation 418 ). If no destination associated with the selected facet is found, then the rendering engine 304 may take an alternative action such as erasing the content currently rendered in the associated content area 256 or leaving the content currently rendered in the associated content area 256 unchanged.
- the system may notify the user that a particular term in the primary content 302 is not associated with any content that is associated with a particular facet. For example, if the user selects term rendering 230 and term rendering 230 is not associated with any associated content that is associated with the facet corresponding to tab 260 c , then tab 260 c may be displayed in gray or otherwise disabled. As another example, term renderings within the primary content rendering 218 a may be rendered in ways that indicate which facets are associated with them. For example, each facet may be associated with a particular color.
- each facet may be rendered in the color associated with that facet, and each rendering of a term in the primary content rendering 218 a may be underlined with the color(s) of the facet(s) associated with the term. For example, if term rendering 230 is associated with the facets corresponding to tabs 260 a and 260 b , then term rendering 230 may be underlined twice, once with each color associated with tabs 260 a and 260 b . Those having ordinary skill in the art will appreciate that there are other ways to notify the user of the facet(s) associated with particular terms in the primary content 302 .
- the user selects a second term associated with a second multi-destination link, such as by selecting the second term rendering 232 in FIG. 2A ( FIG. 4B , operation 420 ).
- the method 410 identifies, from among the plurality of destinations of the second multi-destination link, a second destination, if any, associated with the facet previously selected in operation 412 ( FIG. 4B , operation 422 ).
- the rendering engine 304 then renders the associated content pointed to by the second destination identified in operation 422 ( FIG. 4 , operation 424 ). If no destination associated with the selected facet is found, then any of the actions described above with respect to the operation 418 may be performed.
- the method 410 illustrated in FIG. 4B thereby enables the user to make a single selection of a facet, and then to select multiple multi-destination links to cause the destinations of those links that are associated with the selected facet to be rendered, without requiring the user to re-select the facet each time.
- the user may select a facet only once, and then cause multiple destinations associated with that facet to be rendered simply by selecting links having those destinations.
- the method 410 may identify, from among the plurality of destinations of the second multi-destination link (i.e., the multi-destination link previously selected in operation 420 ), a third destination associated with the second facet selected in operation 426 ( FIG. 4B , operation 428 ).
- the rendering engine 304 then renders the associated content pointed to by the third destination identified in operation 428 ( FIG. 4 , operation 430 ).
- the method 410 enables multiple destinations of a multi-destination link to be rendered sequentially simply in response to the user selecting different facets associated with the link, without requiring the user to re-select the link itself each time.
- the user may select term 302 a by selecting term rendering 232 once, and then select tabs 260 a , 260 b , and 260 c (in any sequence) to cause the associated contents that are destinations of term 302 a associated with facets 520 a , 520 b , and 520 c respectively, to be rendered without requiring the user to reselect term rendering 232 .
- the process of receiving user input that selects a particular facet need not obscure the rendering 218 a of the primary content 302 .
- the user may click on one of the tabs 260 a - c and thereby select a corresponding one of the facets 520 a - c without causing a popup window to be displayed (over the primary content window 216 or elsewhere) and without otherwise obscuring the rendering 218 a of the primary content 302 .
- facets may be associated with destinations in multi-destination links, this is an example in which the user may select a particular destination of a multi-destination link without causing a popup window to be displayed and without otherwise obscuring the rendering 218 a of the primary content 302 .
- the primary content rendering 218 a may represent only a portion, such as the first page, of the underlying primary content 302 , such as a news article.
- conventional tools such as a vertical scrollbar, may be provided to enable the user to view other portions of the primary content 302
- embodiments of the present invention also provide other mechanisms to enable other portions of the primary content 302 to be rendered and viewed under control of the user.
- navigation buttons 270 a - b and text field 272 are provided to enable the user to navigate from page to page within the primary content 302 .
- the system may render the page of the primary content 302 immediately preceding the page currently displayed in the primary content rendering 218 a .
- the system may render the page of the primary content 302 immediately following the page currently displayed in the primary content rendering 218 a .
- the system may render the page having the page number entered by the user. Pages may, for example, be measured in terms of the amount of the maximum amount of content that may be rendered within the primary content display area 216 .
- the particular user interface elements 270 a - b and 272 shown in FIG. 2B are merely examples and do not constitute limitations of the present invention. More generally, embodiments of the present invention may provide user interface elements that enable the user to cause different portions of the primary content 302 to be rendered without vertically scrolling through renderings of the primary content 302 .
- embodiments of the present invention may provide various means for enabling the user to cause different portions of the primary content 302 to be rendered by horizontally scrolling through the primary content.
- the user interface may include a horizontal scrolling control 274 which displays thumbnails 278 a - d of the various pages of the primary content 302 within a thumbnail container 276 .
- the primary content 302 includes four pages, indicating that four display areas of the size of the primary content display area 216 are required to render the complete primary content 302 .
- a current page indicator 280 encloses the page currently represented by the rendering 218 a in the primary content display area.
- the user may drag or otherwise move the current page indicator 280 horizontally along the thumbnail container 276 to cause the system to render the portion of the primary content 302 corresponding to the page currently underneath the current page indicator 280 .
- the system may in response render the portion of the primary content 302 that corresponds to thumbnail 278 b within the primary content area 216 , thereby replacing the currently-rendered primary content rendering 218 a.
- the system may provide additional visual indicators of the user's current location within the primary rendering. For example, page number indicators such as 1, 2, 3, and 4, may be displayed within the page thumbnails 278 a - d and/or elsewhere. As another example page number and total page indicators such as 1/4, 2/4, 3/4, and 4/4 may be displayed within the page thumbnails 278 a - d and/or elsewhere.
- transition from one rendering to the next may be visually indicated in any of a variety of ways, such as by erasing the first rendering and immediately rendering the second rendering in its place, by fading out the first rendering and simultaneously fading in the second rendering, or by “wiping” the first rendering out and the second rendering in to the primary content display area 216 (either horizontally or vertically).
- the primary content 302 may previously have been extracted from another source before being rendered and processed in any of the ways disclosed herein. For example, referring again to FIG. 1A , recall the rendering of the web page shown within the application display area 112 .
- a web page may, for example, be a web page from a newspaper web site containing a news article.
- the rendering of the web page may include content other than the primary content 118 a , such as advertisements 122 , masthead 114 , and navigational tools 124 such as buttons and hyperlinks.
- FIG. 6B a diagram is shown of an example of the underlying source web content 653 (such as an HTML document) represented by the rendering in FIG. 1A .
- the rendering in FIG. 1A may be a rendering of the source web content 653 shown in FIG. 6B .
- the source web content 653 may include masthead content represented by the masthead rendering 114 in FIG. 1A , primary content 656 represented by the primary content rendering 118 a in FIG. 1A , navigational control content 658 represented by the navigational control rendering 126 in FIG. 1A , and advertising content 660 represented by the advertising content rendering 122 in FIG. 1A .
- Embodiments of the present invention may be used to extract only the article content, such as the primary content 656 and any other pages of the same article (if all such pages are not contained within the primary content 656 ), including data such as the article's headline, byline, and article (hyper)text. This extracted primary content may then be made available for viewing and browsing using the enhanced user interface described above.
- the primary content 656 as rendered in the original web page ( FIG. 1A ) may be divided into pages in a different way than in the enhanced web page ( FIGS. 2A-2B ). For example, if the size of the source primary content area 116 is larger than the size of the enhanced primary content area 216 , then the primary content 656 may be divided into a larger number of pages when displayed using the enhanced user interface.
- the extracted primary content may be enhanced after it has been extracted from the source web page and before it is made available for viewing and browsing using the enhanced user interface.
- a method 440 is shown for extracting and enhancing primary content according to one embodiment of the present invention.
- the primary content 656 may or may not contain hyperlinks within the first (source) web page 653 ( FIG. 6B ).
- the primary content 656 may be extracted from the source web page 653 ( FIG. 4C , operation 442 ), and a first term within the extracted primary content 656 may be selected ( FIG. 4C , operation 444 ).
- a new hyperlink such as a single-destination hyperlink and/or multi-destination hyperlink, may be added to the extracted primary content 656 .
- a multi-destination hyperlink may be added to the selected term by associating the selected term with first associated content ( FIG. 4C , operation 446 ) and by associating the selected term with second associated content ( FIG. 4C , operation 448 ).
- the resulting enhanced primary content may be used as the primary content 302 that is utilized by various embodiments of the present invention in the ways disclosed herein.
- the primary content 606 shown in FIG. 6A may be enhanced primary content resulting from the extraction and enhancement process shown in FIG. 4C .
- each selected term may be marked up with a multi-destination link having two or more destinations, where each of the destinations is associated with an encyclopedia entry, advertising content, or map content related to the selected term.
- the tagging performed in operations 444 and 446 of the method 440 of FIG. 4C may involve tagging the extracted primary content with static and/or dynamic links.
- the selected term may act both as the anchor of the link and as a parameter of a destination of the link.
- the link anchor may be provided as a parameter to the advertising server so that when the link destination is activated, the link anchor is provided as an input to the advertising server, in response to which the advertising server provides advertising content related to the link anchor.
- the advertising content may then be rendered. This is merely one example of a way in which terms in the primary content 656 may be extracted and then tagged with dynamic links.
- a multi-destination link may be added to a selected term in the primary content 656 , where at least one destination of the multi-destination link points to (static or dynamic) advertising content.
- advertising content may be the same as or differ from the advertising content 660 that the selected term was linked to in the source web page 653 from which the primary content 656 was extracted.
- a first advertisement may be rendered in connection with the selected term, while when the selected term is rendered in the primary content 606 in the resulting web page 602 after extraction, a second advertisement that differs from the first advertisement may be rendered in connection with the selected term.
- the enhanced primary content may be rendered in conjunction with the original web page from which the primary content was extracted.
- the primary content rendering 218 a , associated content rendering 258 a , and masthead 214 may be rendered on top of, and thereby obscure at least part of, the source web page. At least part of the source web page may therefore be visible and active while embodiments of the present invention are active. The user may therefore, for example, click on a visible portion of the source web page to cause the renderings 214 , 218 a , and 258 a to disappear and to return to the source web page 653 .
- a “close” button or other mechanism may be displayed or otherwise provided to enable the user to affirmatively indicate that the renderings 214 , 218 a , and 258 a should disappear so that the rendering of the source web page 653 can become fully visible again.
- Embodiments of the present invention have a variety of advantages, such as the following.
- one disadvantage of conventional techniques for displaying and navigating through web site content is that they can make it difficult for users to engage in the kind of nonlinear exploration of content for which the Web and hypertext were designed. For example, in conventional web site designs, clicking on a link within a news article typically causes the destination (target) of the link to be displayed by refreshing the web browser window to display the destination content, or by opening the destination content in a new tab or a new window. In any of these cases, the destination content may replace or obscure the source content, and it can be difficult, tedious, and time-consuming for the user to return to the point in the source content that contains the hyperlink.
- embodiments of the present invention make it possible for the user to select a link and, in response, to see a rendering of the link's destination in a (possibly existing) display area that does not replace, overlap with, or obstruct the display area in which the primary content is displayed.
- the user may easily view both the primary content and the associated content simultaneously, and the user need not take any action to return to the primary content because the primary content always remains fully visible. This makes the user's reading experience more seamless, convenient and less disorienting.
- embodiments of the invention allow advertising content to appear side-by-side the primary content, or to otherwise be rendered in a way that does not intrude upon the user's experience of reading the primary content.
- a related benefit of embodiments of the present invention is that they give the user control over whether to view advertisements. For example, if one of the available facets is “advertising” or “offers”, the user may either select or de-select the advertising facet depending on the user's preference. If the user selects the “advertising” facet, then upon clicking on any tagged term, a corresponding advertisement related to the term (if available) will be displayed nonobtrusively.
- web-based content may refer to a wide variety of content, such as content containing one or more of HTML, XML, XHTML, Java, JavaScript, and Flash content.
- embodiments of the present invention may be applied to content other than web content.
- hypertext content and “hyperlinked content” are used synonymously herein. Both terms refer to any content that includes one or more hyperlinks.
- hypertext content may include, but is not limited to, text content. Rather, hypertext content may include, for example, text, images, videos, executable code (e.g., Java or JavaScript), and links in which any such content is the anchor.
- the computing device 100 may be any kind of computing device, including but limited to desktop computers, laptop computers, personal digital assistants (PDAs), smartphones (such as the Apple iPhone), and tablet computers (such as the Apple iPad).
- the monitor 102 may be any kind of monitor, including but not limited to touchscreen monitors that are capable of both providing visual output and receiving touch input.
- Embodiments of the present invention are not limited to implementation on any particular computer platform, such as WinTel platforms, Unix platforms, and MacOS platforms.
- the techniques described above may be implemented, for example, in hardware, software, firmware, or any combination thereof.
- the techniques described above may be implemented in one or more computer programs executing on a programmable computer including a processor, a storage medium readable by the processor (including, for example, volatile and non-volatile memory and/or storage elements), at least one input device, and at least one output device.
- Program code may be applied to input entered using the input device to perform the functions described and to generate output.
- the output may be provided to one or more output devices.
- Each computer program within the scope of the claims below may be implemented in any programming language, such as assembly language, machine language, a high-level procedural programming language, or an object-oriented programming language.
- the programming language may, for example, be a compiled or interpreted programming language.
- Each such computer program may be implemented in a computer program product tangibly embodied in a machine-readable storage device for execution by a computer processor.
- Method steps of the invention may be performed by a computer processor executing a program tangibly embodied on a computer-readable medium to perform functions of the invention by operating on input and generating output.
- Suitable processors include, by way of example, both general and special purpose microprocessors.
- the processor receives instructions and data from a read-only memory and/or a random access memory.
- Storage devices suitable for tangibly embodying computer program instructions include, for example, all forms of non-volatile memory, such as semiconductor memory devices, including EPROM, EEPROM, and flash memory devices; magnetic disks such as internal hard disks and removable disks; magneto-optical disks; and CD-ROMs. Any of the foregoing may be supplemented by, or incorporated in, specially-designed ASICs (application-specific integrated circuits) or FPGAs (Field-Programmable Gate Arrays).
- a computer can generally also receive programs and data from a storage medium such as an internal disk (not shown) or a removable disk.
Abstract
A computer-based system provides a user interface for displaying hyperlinked content (such as web content) and for enabling users to navigate the hyperlinks contained within such content. One benefit of various embodiments of the present invention is that they enable primary hyperlinked content to be rendered, and for associated content (i.e., content located at the destinations of hyperlinks within the primary content) to be rendered without replacing, overwriting, or otherwise obscuring the rendering of the primary content. As a result, the rendering of the primary content remains fully visible after the associated content is rendered and while the rendering of the associated content is visible. For example, the associated content may be rendered in an existing display area that does not overlap with the display area containing the rendering of the primary content.
Description
- This application is a continuation of U.S. patent application Ser. No. 13/159,145, filed on Jun. 13, 2011, entitled, “Digital Content Enhancement Platform,” which is incorporated by reference herein.
- The World Wide Web and other Internet-based applications have begun to replace print-based publications for many readers and for many kinds of content. For example, the contents of most major newspapers are now available through web sites and iPad apps. The same is true for many magazines and other periodicals that were once available only in print form.
- Significant effort has been directed to making such online content easy to read and navigate. For example, news web sites typically provide a home page that lists the headlines and summaries of current articles, much like the cover page of a traditional print newspaper. The headlines of such articles contain hyperlinks to the bodies of the articles, so that users can navigate to the beginning of an article by clicking on its headline. Users can then scroll vertically through the article using a scrollbar and/or cursor navigation keys, and browse from page to page by clicking on “next page” and “previous page” buttons. The author of a particular news article may mark up the article's text with hyperlinks to related content on the same web site or other web sites, thereby allowing the user to navigate to such related content by clicking on the hyperlinks. Advertisements may be displayed in connection with the article content, such as in the form of banner advertisements displayed alongside the article content or pop-up advertisements that appear in new windows displayed on top of the article content.
- These conventional techniques for displaying web site content and for enabling users to navigate through such content have a variety of drawbacks. For example, as mentioned above, pop-up advertisements typically appear on top of and thereby obscure the main article content. If such advertisements are displayed automatically (e.g., even if the user does not click on a link or otherwise affirmatively request that the advertisement be displayed), then the advertisement may interrupt the user's experience of reading the main article content. To return to reading the main article, the user must then move or close the pop-up window. Users who become frustrated with this experience may eventually disable pop-up ads from being displayed permanently. This may be disadvantageous not only to the advertiser and the web site owner by decreasing their advertising revenue, but also to the user, who may wish to see relevant advertisements but in a less obtrusive way.
- A related disadvantage of conventional techniques for displaying web site content and for enabling users to navigate through such content is that they can make it difficult for users to engage in the kind of nonlinear exploration of content for which the Web and hypertext were designed. For example, if a user clicks on a hyperlink within a news article, the destination (target) of the hyperlink typically is displayed by refreshing the current web page to contain the destination content, or by opening the destination content in a new tab or a new window. In any of these cases, it can be difficult, tedious, and time-consuming for the user to return to the point in the original article that contains the hyperlink. For example, if clicking on the hyperlink caused the current web browser window to be refreshed so that the original article was replaced with the destination content, returning to the original article typically requires clicking on the browser's “back” button or clicking on a “return to article” link. If the user has followed several additional links after clicking on the original link, the user may need to click on the “back” button several times or otherwise engage in several actions. Sometimes such efforts to return to the original article content fail, thereby requiring the user to re-enter the URL of the original article content or otherwise engage in other manual effort to return to the original article. These and other problems are frustrating to the user, because they make it difficult for the user to navigate through hyperlinked content, and are undesirable from the point of view of the original web site owner, because they increase the likelihood that a user who leaves the original web site by clicking on a hyperlink will not subsequently return to the web site.
- For these and other reasons, there is a need for improved techniques for rendering hyperlinked content and for enabling users to navigate such content.
- A computer-based system provides a user interface for displaying hyperlinked content (such as web content) and for enabling users to navigate the hyperlinks contained within such content. One benefit of various embodiments of the present invention is that they enable primary hyperlinked content to be rendered, and for associated content (i.e., content located at the destinations of hyperlinks within the primary content) to be rendered without replacing, overwriting, or otherwise obscuring the rendering of the primary content. As a result, the rendering of the primary content remains fully visible after the associated content is rendered and while the rendering of the associated content is visible. For example, the associated content may be rendered in an existing display area that does not overlap with the display area containing the rendering of the primary content.
- The primary content may previously have been extracted from another source. For example, a first web page may contain a news article containing or consisting of the primary content. When the first web page is displayed, the news article may be displayed in addition to various other content, such as advertisements, a masthead, and navigational tools such as buttons and hyperlinks. Only the article content, such as the headline, byline, and article (hyper)text may be extracted from the first web page as the primary content. This extracted primary content may then be made available for viewing and browsing using the enhanced user interface described above.
- The extracted primary content may be enhanced before it is made available for viewing and browsing using the enhanced user interface. For example, the primary content may or may not contain hyperlinks within the first (original) web page. While or after extracting the primary content from the first web page, however, existing hyperlinks within the primary content may be modified and/or new hyperlinks may be added. In particular, hyperlinks having multiple destinations (“multi-destination links”) may be added. A multi-destination link has a single source (anchor) but two or more destinations. Each link destination may be associated with one or more types, referred to herein as “facets.” For example, consider a multi-destination link in which the anchor is the term “tennis,” having as a first destination an encyclopedia entry for the word “tennis” and having as a second destination an advertisement for a tennis equipment retailer. In this example, the first destination may be associated with the facet “encyclopedia” and the second destination may be associated with the facet “advertisement.” Different multi-destination links may have different numbers of destinations, and may have destinations associated with different facets than each other.
- Once primary content has been marked up with multi-destination links, embodiments of the present invention enable the resulting marked-up primary content to be displayed and navigated in a variety of ways. For example, the enhanced user interface may:
-
- display the primary content within a display area that is never obstructed by other content, such as content at the destinations of hyperlinks within the primary content;
- navigate through the extracted article without vertical scrolling, such as by clicking on numbered buttons near the article content to flip from one page to another, or by scrolling horizontally through the article by one or more columns at a time;
- display content at the destinations of hyperlinks within the primary content, upon clicking or hovering over hyperlinked terms, in a frame or other display area that is separate from and non-overlapping with the primary article content display area;
- enable the user to select a particular facet (e.g., “encyclopedia” or “advertisements”) and then select a multi-destination link within the primary content to cause the particular destination associated with the selected facet within the multi-destination link to be rendered; and
- perform all of the operations listed above without refreshing the web page or other display area within which the primary content is rendered, without opening a new tab or window, and without replacing, overwriting, or otherwise obscuring the primary content.
- For example, one embodiment of the present invention is directed to a method for use with primary content, wherein the primary content includes a first term, wherein the first term is associated with a first plurality of associated contents, wherein the first plurality of associated contents includes first associated content and second associated content. The method comprises: (1) rendering at least part of the primary content to create a rendering of the at least part of the primary content, including rendering the first term to create a rendering of the first term; (2) rendering the first associated content to create a rendering of the first associated content in a first existing display area wherein the rendering of the at least part of the primary content remains fully visible after the first associated content is rendered; and (3) rendering the second associated content to create a rendering of the second associated content in a second existing display area, wherein the rendering of the at least part of the primary content remains fully visible after the first associated content is rendered.
- Another embodiment of the present invention is directed to a method for use with primary content. The primary content includes: (A) a first term, wherein the first term is associated with first associated content and second associated content, wherein the first associated content is associated with a first facet, and wherein the second associated content is associated with a second facet; and (B) a second term, wherein the second term is associated with third associated content and fourth associated content, wherein the third associated content is associated with the first facet, and wherein the second associated facet is associated with a third facet. The method comprises: (1) rendering at least part of the primary content to create a rendering of the at least part of the primary content, including rendering the first term to create a rendering of the first term and rendering the second term to create a rendering of the second term; (2) receiving first user input selecting the first facet; (3) receiving second user input selecting the first term; (4) in response to receiving the second user input, rendering the first associated content to create a rendering of the first associated content in a first existing display area, wherein the rendering of the at least part of the primary content remains fully visible after the first associated content is rendered; (5) receiving third user input selecting the second term; and (6) in response to receiving the third user input and without receiving additional input selecting the first facet, rendering the third associated content to create a rendering of the third associated content in the first existing display area, wherein the rendering of the at least part of the primary content remains fully visible after the third associated content is rendered.
- Other features and advantages of various aspects and embodiments of the present invention will become apparent from the following description and from the claims.
-
FIGS. 1A-1E are diagrams of prior art computing devices for rendering hypertext documents; -
FIG. 1F is a diagram of prior art hyperlinked content; -
FIGS. 2A-2C are diagrams of user interfaces for rendering and navigating hypertext documents according to various embodiments of the present invention; -
FIGS. 3A-3C are diagrams illustrating the use of a rendering engine to render hypertext content according to various embodiments of the present invention; -
FIGS. 4A-4C are flowcharts of methods performed by various embodiments of the present invention; -
FIGS. 5A-5B are diagrams illustrating relationships between multi-destination hyperlinks and facets according to various embodiments of the present invention; and -
FIGS. 6A-6B are diagrams of hyperlinked content used by various embodiments of the present invention. - Referring to
FIG. 1A , a diagram is shown of acomputing device 100 that uses a prior art user interface to display hypertext content. For example, the interface is typical of the kind used by conventional web browsers. Thecomputing device 100 contains amonitor 102 for displaying visual output. Themonitor 102 includes aphysical display area 104, which is the complete display area on which themonitor 102 is physically capable of displaying output. For example, if thecomputing device 100 runs an operating system based on the desktop metaphor, the operating system may display the desktop on the fullmonitor display area 104, but display windows of particular applications within a subset of themonitor display area 104. - For example,
FIG. 1A shows awindow 106 of a particular application, which may, for example, be a web browser or other application for displaying hypertext content. Theapplication window 106 occupies less than all of themonitor display area 104. Alternatively, however, theapplication window 106 may be displayed in a “full screen” mode in which theapplication window 106 occupies the fullmonitor display area 104, and in which theapplication window 106 is therefore coextensive with themonitor display area 104. Theapplication window 106 may be switchable between normal (non-full screen) and full screen mode in response to user input. Some applications may display by default and/or only in full screen mode, while other applications may display by default and/or only in normal (non-full screen) mode. Many other variations exist and are well-known to those having ordinary skill in the art. - The
application window 106 may contain anapplication display area 112 for displaying application content. Theapplication display area 112 may occupy a subset of themonitor display area 104. If, for example, theapplication window 106 belongs to a web browser, then theapplication display area 112 may display renderings of web pages. Theapplication window 106 may also contain various user interface elements, such as amenu 108 and window controls 110, that are within theapplication window 106 but outside of theapplication display area 112. The particularuser interface elements FIG. 1A are merely representative examples. Many other examples of user interface elements falling outside theapplication display area 112 are well-known to those having ordinary skill in the art. Furthermore, theapplication window 106 need not include any such user interface elements, in which case theapplication display area 112 may be occupy and be coextensive with theentire application window 106. - Hypertext content, such as web pages, may be laid out in any of a variety of ways and contain any of a variety of content. However, for purposes of example,
FIG. 1A shows a particular layout that is common to web pages designed to display news content. In particular, the layout shown inFIG. 1A includes amasthead 114, which may, for example, contain the name of the newspaper (e.g., “The New York Times” or “The San Jose Mercury News”). Themasthead 114 may be hyperlinked to the home web of the newspaper's web site. - The web page layout shown in
FIG. 1A also contains a primarycontent display area 116 for displaying arendering 118 a of primary content, such as the text of a news article. For example, referring toFIG. 1F , an illustration is shown of web content 150 a, such as an HTML document, that contains various content that may be rendered within theapplication display area 112 ofFIG. 1A .FIG. 1F shows just a few examples of content that may be rendered within theapplication display area 112, but those having ordinary skill in the art will understand that the web content 150 a may contain other content that is necessary or useful for creating the rendering shown inFIG. 1A . For example, the web content 150 a may containmasthead content 154 for creating the masthead rendering 114 inFIG. 1A , andprimary content 158 a for creating the primary content rendering 118 a inFIG. 1A . - The primary
content display area 116, as shown inFIG. 1A , may occupy a subset of theapplication display area 112, or may be coextensive with theapplication display area 112. The primary content rendering 118 a may, for example, represent the entire news article (e.g., the entireprimary content 158 a inFIG. 1F ) or only a portion thereof. For example, upon clicking on the headline of the article on the newspaper's home page, the newspaper web site may display the first few paragraphs of the article as the primary content rendering 118 a within theprimary content area 116. To view the remainder of the article, the user may be required to scroll vertically through the rendering of theprimary content 158 a (such as by using cursor navigation keys or a vertical scrollbar 128) or to navigate to subsequent pages of theprimary content 158 a by clicking on navigation tools 126 (e.g., “next page” and “previous page” links) within anavigation tools area 124. (Navigation tools 126 may be renderings ofnavigation tool content 166 within the web content 150 a inFIG. 1F .) - The layout shown in
FIG. 1A also contains anadvertisement area 120 for displayingrenderings 122 ofadvertising content 168. Although theadvertisement renderings 122 inFIG. 1A are shown as banner advertisements, this is merely an example. Various other kinds of advertisements are well-known to those having ordinary skill in the art. - The advertisement to be displayed as the advertisement rendering 122 may, for example, be hard-coded into the
advertising content 168 in the web page 150 a (FIG. 1F ), or may be dynamically generated, such as by an advertisement server (not shown). One kind of dynamically-generated advertisement is a contextual advertisement, which is selected dynamically at the time of rendering the web page 150 a based on factors such as the content of theprimary content 158 a and/or demographic characteristics of the user. However theadvertisements 122 are selected, the placement of the advertisements 122 (e.g., the size and location of the advertisement area 120) and the process for selecting theadvertisements 122 is determined by the designer of the web page 150 a and is encoded into the web page 150 a itself. - The
primary content 158 a may contain one or more hyperlinks, which may be rendered within the primary content rendering 118 a in any of a variety of ways. For example, inFIG. 1F ,primary content 158 a containshypertext 160, which is rendered inFIG. 1A as hyperlinkedtext 130. Thehypertext 160 may, for example, be defined by underlying HTML code, such as an anchor tag, that specifies: (1) the particular text to serve as the hyperlink's source (anchor) 162, and (2) a location orother identifier 164 of the destination (target) of the hyperlink. In response to the user clicking on or otherwise selecting the hyperlinked text rendering 130 in theprimary content area 116, the application navigates to thecontent 170 identified by the destination (target) 164 of thehyperlink 160. - Such navigation to the
target content 170 pointed to be thehyperlink 160 may be executed in a variety of ways. For example, to navigate to thetarget content 170 of thehyperlink 160 the application may “refresh” theprimary content area 116 with a rendering of the hyperlink'starget content 170. Refreshing involves completely replacing therendering 118 a of the originalprimary content 158 a with a rendering of thetarget content 170, such as by erasing therendering 118 a of the originalprimary content 158 a (e.g., erasing the entire contents of the primary content area 116) and rendering thetarget content 170 in its place (e.g., within the primary content area 116). This approach is shown inFIG. 1B , in which therendering 118 a ofprimary content 158 a has been replaced with arendering 118 b oftarget content 170, which is the destination of thehypertext 160. More generally, such refreshing may involve refreshing not only theprimary content area 116 but also the entireapplication display area 112, including elements such as themasthead 114,advertisements 122, andnavigation tools 124. - As is clear from this description, as a result of the process of refreshing the
application display area 112 to navigate to thedestination 170 ofhypertext 160, the original primary content rendering 118 a is no longer visible on themonitor 102. To re-display the rendering 118 a of the originalprimary content 158 a, the user must take a step such as activating one of thenavigation tools 126 in thenavigation area 124, clicking on a “back” button, or re-entering the URL of the web page 150 a containing theprimary content 158 a. - As another example of navigation to the target of a hyperlink, the application may open a new window and render the target content in the new window. For example, as shown in
FIG. 1C , navigating to thetarget content 170 pointed to by thetarget 164 ofhypertext 160 may cause the application to open anew window 140 and to render thetarget content 170 within thewindow 140 asprimary content 118 b. Thewindow 140 is “new” in the sense that it was not open before the user selected thehypertext 130 and before theprimary content rendering 118 b was rendered into thewindow 140. In the example shown inFIG. 1C , thenew window 140 overlaps and partially obscures (obstructs) the original primary content rendering 118 a. Alternatively, for example, thenew window 140 may be located fully outside the boundaries of theprimary content area 116. Thenew window 140 may be located partially or fully within theapplication display area 112, or fully outside theapplication display area 112. - To remove the
rendering 118 b of thedestination content 170, the user must manually close thenew window 140. If the new window partially or fully obstructs the original content rendering 118 a, then to re-view the original content rendering 118 a, the user must manually move or close thenew window 140. - As yet another example of navigation to the target of a hyperlink, consider the example of
FIG. 1D , in which the primary content rendering 118 a is displayed in afirst tab 142 a. In this example, navigating to thetarget content 170 ofhypertext 130 may cause the application to open anew tab 142 b, to switch to thenew tab 142 b (i.e., to make thenew tab 142 b the active tab within the application), and to render thetarget content 170 within thetab 142 b asprimary content rendering 118 b. The result is shown inFIG. 1E . - The
tab 142 b is “new” in the sense that it was not open before the user selected thehypertext 130 and before theprimary content rendering 118 b was rendered into thetab 142 b. In the example shown inFIGS. 1D-1E , the process of switching to thenew tab 142 b (i.e., making the new tab 142 the active tab) causes therendering 118 b of thetarget content 170 in thenew tab 142 b to replace therendering 118 a of the originalprimary content 158 a. Even if the process of creating thenew tab 142 b does not cause thenew tab 142 b to automatically become the active tab, if the user wishes to view thecontents 118 b of thenew tab 142 b, the user must manually select thenew tab 142 b, thereby causing thenew tab 142 b to become the active tab, and thereby causing the results just described. - To re-view the original primary content rendering 118 a, the user must manually close the
new tab 142 b or manually select theoriginal tab 142 a to cause the original primary content rendering 118 a to once again be visible. - As mentioned in the Background section, the conventional user interfaces of
FIGS. 1A-1E have a variety of disadvantages. Various embodiments of the present invention overcome these disadvantages and provide additional benefits as will now be described. However, before describing particular features of embodiments of the present invention, it should be noted that such embodiments may include any one or more of the features of conventional user interfaces described above. For example, embodiments of the present invention may be used in connection with computing devices having monitors and capable of displaying application windows containing hypertext. Therefore, such conventional features which may be contained within embodiments of the present invention will not be repeated below. -
FIG. 2A showscomputing device 100 executing an application that implements one embodiment of the present invention. In the particular example shown inFIG. 2A , the application may be a conventional application, such as a conventional web browser (e.g., Internet Explorer, Firefox, or Safari), in which case the features of embodiments of the present invention disclosed below may be implemented, for example, solely using data rendered and/or executed by the application, but without requiring any modifications to the application itself. For example, embodiments of the present invention may be implemented solely using content that is stored in a standardized presentation format that is transmissible over the Internet, such as HTML, Java, JavaScript, Flash, or any combination thereof. Embodiments of the present invention may, in other words, be implemented without requiring any modifications to the source code or object code of the application, without requiring the application to be recompiled, without requiring any plug-ins to be installed in the application, and without requiring any software to be executed in addition to the application on thecomputing device 100. - Alternatively, however, some or all of the features of embodiments of the present invention may be integrated into the application in any of a variety of ways, such as by modifying the source code and/or object code of the application, or by installing a plug-in in the application. As yet another example, some or all of the features of embodiments of the present invention may be implemented in a standalone application that is capable of performing any or all of the functions disclosed herein.
- As particular examples, embodiments of the present invention may be implemented: (1) solely in one or more web pages rendered by conventional web browsers, without the need to design or execute additional software, such as web browser plugins; (2) using a combination of web pages and web browser plugins for enabling conventional web browsers to provide the functionality disclosed herein in connection with the web pages; or (3) using a self-contained standalone reader application that provides the functionality disclosed herein in connection with web pages or other content.
- Furthermore, although in the examples disclosed above, the application associated with the
window 106 is an application that executes on thecomputing device 100, this is merely an example and does not constitute a limitation of the present invention. Alternatively, for example, some or all of the features of embodiments of the present invention may be implemented on a device (not shown) other than thecomputing device 100, wherein the other device enables thecomputing device 100 to provide the user interface functionality disclosed herein. For example, features of embodiments of the present invention may be implemented using server-side code which, when executed, causes content to be rendered on themonitor 102 of the device. These and other divisions of labor between thedevice 100 and servers and other devices will be apparent to those having ordinary skill in the art based on the disclosure herein. - Referring again to
FIG. 2A , in the embodiment of the present invention shown therein,computing device 100 containsmonitor 102, in whichapplication window 106 is displayed. For purposes of example, content within theapplication window 106 inFIG. 2A has a particular layout. This particular layout, however, is merely an example and does not constitute a limitation of the present invention. The layout includes a primarycontent display area 216 for displaying arendering 218 a of primary content, such as the text of some or all of a news article. For example, referring toFIG. 6A , an illustration is shown ofweb content 602, such as an HTML document, that contains various content that may be rendered within theapplication display area 112 ofFIG. 2A .FIG. 6A shows just a few examples of content that may be rendered within theapplication display area 112, but those having ordinary skill in the art will understand that theweb content 602 may contain other content that is necessary or useful for creating the rendering shown inFIG. 2A . For example, theweb content 602 may containprimary content 606 for creating the primary content rendering 218 a inFIG. 2A . - The layout shown in
FIG. 2A also includes amasthead rendering 214, which may, for example, be a rendering of masthead content 604 (FIG. 6A ) and contain the name of a newspaper (e.g., “The New York Times” or “The San Jose Mercury News”). Themasthead rendering 214 may be hyperlinked to the home web of the newspaper's web site. - The layout shown in
FIG. 2A also includes an associatedcontent area 256 for displaying arendering 258 a of content (referred to herein as “associated content”) that is associated with theprimary content 606 represented by the primary content rendering 218 a. For example, as will be described in more detail below,first hypertext rendering 230 may be a rendering of first hypertext 502 (FIGS. 5A and 6A ) within theprimary content 606.First hypertext 502 may have one or more targets (destinations) 506 a-b, and the associated content rendering 258 a shown within the associatedcontent area 256 may be a rendering of content pointed to by one of the targets 506 a-b. - Before describing the operation of the user interface shown in
FIG. 2A , certain embodiments of multi-destination links will be described. Referring toFIG. 5A , the structures of twomulti-destination links multi-destination links FIG. 5A are merely examples and do not constitute limitations of the present invention. Furthermore, multi-destination links for use in conjunction with embodiments of the present invention may be implemented using any kind of data structure, such as XML, XHTML, or HTML tags, linked lists, or arrays. -
Link 502 includes ananchor 504 andtargets Link 512 includesanchor 514 andtargets first hypertext 230 shown inFIG. 2A is a rendering ofanchor 504 inlink 502, and that thesecond hypertext 232 shown inFIG. 2A is a rendering ofanchor 514 inlink 512. As this example illustrates, any particular multi-destination link may include any number of targets, and different multi-destination links may contain the same or different number of targets as each other. - In certain embodiments of the present invention, a target in a multi-destination link may be associated with a “facet.” Different multi-destination links may be associated with the same or different facets as each other. As used herein, the term facet refers to any feature that multiple targets may share in common. Different facets may represent, for example, different categories of content. In the particular example shown in
FIG. 5B , there are three facets 520 a-c, although there may be any number of facets. For example, assume solely for purposes of example in the following discussion that the three facets 520 a-c represent three content categories: encyclopedia entries, advertising content, and map content, respectively. Examples of other facets include, but are not limited to, tickets, reviews, fan information, player statistics, images, videos, shopping, travel, and news. - Link destinations associated with facets may, for example, be links to static or dynamic content. For example, a link destination associated with a “biography” facet may be a link to a static web page containing a biography of a particular person. As another example, a link destination associated with a “map” facet may be a link to a dynamic map web page, such as Mapquest or Google maps, in which the link anchor (e.g., (“Portland, Oreg.”) is embedded as a parameter in the link destination so that when the destination content is rendered, a map of the appropriate location is rendered dynamically. The same is true, for example, of dynamic links to search engines, e-commerce sites, and social networking sites.
-
FIG. 5B illustrates the facets that are associated with targets in thelinks facet 520 a,target 506 b is associated withfacet 520 b, target 516 a is associated withfacet 520 a,target 516 b is associated with facet 520 c, and target 516 c is associated withfacet 520 b. This particular mapping of targets 506 a-b and 516 a-c to facets 520 a-c is merely an example and does not constitute a limitation of the present invention. Furthermore, although only one-to-one mappings are shown inFIG. 5B for ease of illustration, target-facet mappings may be one-to-many, many-to-one, or many-to-many. - As the example in
FIG. 5B illustrates, different links may be associated with a different number of facets than each other. Furthermore, a target in one link may be associated with a facet that is not associated with any target in another link (as illustrated by facet 520 c, which is associated withtarget 516 b inlink 512 but not with any target in link 502). - Furthermore, facets are optional. They may also be used selectively. For example, in a link such as
link 502, target 506 a may be associated with a facet, whiletarget 506 b may not be associated with any facet. As another example, all targets 506 a-b inlink 504 may be associated with facets, while none of the targets 516 a-c may be associated with facets. - The associations between targets and their corresponding facets may be represented in any way. For example, a single data structure may represent the
link 502 and include data representing theanchor 504, targets 506 a-b, associated facets 520 a-b, and the associations between targets 506 a-b and their associated facets 520 a-b. As another example, a first data structure may include data representing all available facets 520 a-c. A second data structure may represent thelink 502 and include data representing theanchor 504, targets 506 a-b, and the associations between targets 506 a-b and their associated facets 520 a-b. Those having ordinary skill in the art will understand how to implement the data illustrated inFIGS. 5A and 5B in a variety of other ways. - Various techniques for use in connection with the user interface of
FIG. 2A will now be described. Referring toFIG. 3A , a dataflow diagram is shown of asystem 300 for controlling the user interface ofFIG. 2A according to one embodiment of the present invention. Referring toFIG. 4A , a flowchart is shown of amethod 400 performed by thesystem 300 ofFIG. 3 according to one embodiment of the present invention. - As shown in
FIG. 2A , the primary content rendering 218 a includes arendering 230 of first hypertext 502 (FIGS. 5A-5B and 6A). Althoughelement 502 is referred to herein as a “term” and may be or include text, such as a character, word, phrase, sentence, or paragraph, more generally theterm 502 may include any kind of content that may serve as the anchor for a hyperlink, such as an image or video. The same is true ofsecond hypertext term 512, which is represented inFIG. 2A bysecond hypertext rendering 232. Although primary content rendering 218 a may include renderings of any number of hypertext terms, only twosuch renderings FIG. 2A for purposes of example. - The
first term 502 may be associated with a first plurality of associated contents. For example, as described above with respect toFIGS. 5A-5B ,first rendering 230 may be a rendering offirst link 502, which may have an anchor 504 (rendered within rendering 230),first target 506 a, andsecond target 506 b.First target 506 a may point to first associatedcontent 650 a, whilesecond target 506 b may point to second associatedcontent 650 b. In this example, thefirst hypertext 502 is said to be associated with the first and second associatedcontents - Similarly, the
second term 512 may be associated with a second plurality of associated contents. For example, as described above with respect toFIGS. 5A-5B ,second rendering 232 may be a rendering ofsecond link 512, which may have an anchor 514 (rendered within rendering 232),third target 516 a,fourth target 516 b, and fifth target 516 c.Third target 516 a may point to third associatedcontent 652 a,fourth target 516 b may point to fourth associatedcontent 652 b, and fifth target 516 c may point to fifth associated content 652 c. In this example, thesecond hypertext 512 is said to be associated with the third, fourth, and fifth associated contents 652 a-c pointed to by the third, fourth, and fifth targets 516 a-c, respectively. - The system 300 (
FIG. 3A ) includes arendering engine 304 that renders theprimary content 302 to produce arendering 306 of the primary content 302 (FIG. 4 , operation 402). The primary content rendering 218 a shown inFIG. 2A is an example of therendering 306 shown more abstractly inFIG. 3A . The process of rendering 402 theprimary content 302 includes rendering thefirst term 302 a to create arendering 306 a of thefirst term 302 a (FIG. 4 ,operation 402 a) and rendering thesecond term 302 b to create arendering 306 b of thesecond term 302 b (FIG. 4 ,operation 402 b). The first andsecond term renderings FIG. 2A are examples of the first andsecond term renderings FIG. 3A . - Note that the
rendering engine 304 may, in certain embodiments of the present invention, be an existing conventional rendering engine, such as an existing rendering engine of a conventional web browser, in which case embodiments of the present invention may provide instructions to or otherwise control the existing rendering engine to perform the functions disclosed herein. As a result, embodiments of the present invention need not include therendering engine 304, but may instead control or otherwise interoperate with therendering engine 304. - The
first term 302 a may be associated with first associatedcontent 310 a and second associatedcontent 310 b. For example, referring again toFIG. 5A , thehypertext 502 ofFIG. 5A may be thefirst term 302 a shown inFIG. 3B , in which case thefirst target 506 a may point to first associatedcontent 310 a and thesecond target 506 b may point to second associatedcontent 310 b. Another illustration of the same example is shown inFIG. 6A , in which hypertext 502 includes afirst target 506 a that points to first associatedcontent 650 a and asecond target 506 b that points to second associatedcontent 650 b. - As shown in
FIG. 3B , therendering engine 304 may render the first associatedcontent 310 a to create arendering 312 a of the first associatedcontent 310 a in a first existing display area (FIG. 4A , operation 404). The term “existing display area” refers to a display area within themonitor display area 104 that existed before the first associatedcontent 310 a was rendered. Examples of existing display areas include existing windows and portions thereof and existing frames and portions thereof. For example, assuming that associated content area 256 (FIG. 2A ) was already displayed on-screen (e.g., as a frame within application window 106) before the first associatedcontent 310 a was rendered within the associatedcontent area 256 to produce associated content rendering 258 a, then associatedcontent area 256 is an example of an “existing display area” as that term is used herein. - Rendering the first associated
content 310 a in an existing display area may, for example, involve rendering the first associatedcontent 310 a without opening a new window, new frame, or new tab. - The previously-rendered
rendering 306 of the primary content 302 (e.g., primary content rendering 218 a inFIG. 2A ) remains fully visible after the first associatedcontent 310 a is rendered to create the first associated content rendering 312 a (e.g., first associated content rendering 258 a). One way in which this result may be accomplished, as shown inFIG. 2A , is to create the first associated content rendering 258 a in a frame or other display area that is distinct from and does not overlap with thedisplay area 216 in which the primary content rendering 218 a is displayed. The non-overlapping relationship between the primary content rendering 218 a and the associated content rendering 258 a may be enforced in a variety of ways, such as by displaying the primary content rendering 218 a and the associated content rendering 258 a in distinct frames in the same window, by making the sizes and/or positions of the primarycontent display area 216 and/or the associatedcontent display 256 area fixed, by enforcing layout rules which move and/or resize the primarycontent display area 216 and/or the secondarycontent display area 256 in response to movement and/or resizing of one or the other of thedisplay areas display areas display areas - The first associated content rendering 312 a may be rendered without requiring that the primary
content display area 216 be refreshed or otherwise modified. In particular, therendering engine 304 may render the first associatedcontent 310 a to create the first associated content rendering 312 a without erasing, re-rendering, reloading, refreshing, or otherwise modifying the existingrendering 306 of theprimary content 302. The first associated content rendering 312 a, therefore, does not in whole or in part replace, obstruct, overlap with, or obscure theprimary content rendering 306. - As shown in
FIG. 3C , therendering engine 304 may render the second associatedcontent 310 b to create arendering 312 b of the second associatedcontent 310 b in a second existing display area (FIG. 4A , operation 406). Note that the second existing display area may be the same as the first existing display area. For example, if the first associated content rendering 312 a was displayed within associatedcontent area 256, the second associatedcontent rendering 312 b may also be rendered within the same associatedcontent area 256, thereby replacing therendering 258 a of the first associated content in the associatedcontent display area 256. - Alternatively, for example, if the first associated content rendering 312 a was displayed within associated
content area 256, the second associatedcontent rendering 312 b may be rendered within a different associatedcontent area 262 as second associatedcontent rendering 264. The additional associatedcontent area 262 may not overlap with the first associatedcontent area 256. As a result, the first associated content rendering 312 a and the second associatedcontent rendering 312 b may be visible simultaneously. Note that the additional associatedcontent area 262 is optional. There may, however, also be additional associated content areas beyond those shown inFIG. 2A . - The previously-rendered
rendering 306 of the primary content (e.g., primary content rendering 218 a inFIG. 2A ) remains fully visible after the second associatedcontent 310 b is rendered to create the second associatedcontent rendering 312 b. This result may be accomplished in any of the ways described above for the first associated content rendering 312 a. Similarly, the second associatedcontent rendering 312 b may be rendered without requiring that the primarycontent display area 216 be refreshed or otherwise modified, in any of the ways described above for the first associated content rendering 312 a. - Note that web browsers and other applications use various kinds of display areas for displaying content. One common kind of display area is a window. In general, the term “window” refers to an enclosed, rectangular area on a display screen. A window, however, may have a shape other than a rectangle. Furthermore, some windows have additional features. For example, a window may be movable or immovable, resizable or non-resizable, closable or non-closable, maximizable or non-maximizable, displayable in full-screen mode or not displayable in full-screen mode, opaque or (fully or partially) transparent, have a border or no border, have or lack a menu, and have or lack a toolbar. Those having ordinary skill in the art will appreciate that windows may have such features, and other features, in any combination.
- Furthermore, traditional web browsers enable users to “navigate” from one web page to another, by following (activating) hyperlinks from one web page to another. When using such traditional web browsers, navigating a link from a first web page to a second web page typically involves refreshing the
application display area 112 so that a rendering of the second web page replaces the rendering of the first web page. However, as the examples herein illustrate, the process of navigating links according to embodiments of the present invention does not necessarily involve replacing or otherwise obscuring the existing rendering of the first web page. Instead, terms such as “navigation” and “navigating a hyperlink,” as applied herein to embodiments of the present invention, include any process involving rendering the destination of a hyperlink (whether or not that destination is on a different web page or web site than the source (anchor) of the hyperlink), whether or not rendering refreshes theapplication display area 112 or replaces or otherwise obscures the existing rendering of the source (anchor) of the hyperlink. In particular, all of the examples shown and described in connection withFIGS. 2A-2C include examples of “navigating” hyperlinks as that term is used herein. For example, activating the hyperlink associated with hyperlink rendering 230 inFIG. 2A to cause associated content to be rendered in associatedcontent area 256 is an example of “navigating” a hyperlink as that term is used herein. - The
rendering engine 404 may render the first associatedcontent 310 a (FIG. 4 , operation 404) in response to a user of thesystem 310 selecting thefirst term 302 a, such as by clicking on or hovering over therendering 230 of thefirst term 302 a. Similarly, therendering engine 404 may render the second associatedcontent 310 b (FIG. 4 , operation 406) in response to the user of the system 312 selecting thefirst term 302 a, such as by clicking on or hovering over therendering 230 of thefirst term 230. - Once a particular term associated with a multi-destination link has been selected, a particular one of the term's multiple destinations must be selected for navigating and rendering. A particular destination within a multi-destination link may be selected in any of a variety of ways. For example, as illustrated by the
method 410 ofFIG. 4B , in general the user may provide input selecting a particular facet (operation 412), such as one of the facets 520 a-c illustrated inFIG. 5B . The user may provide such input in any of a variety of ways. - After selecting a particular facet, the user selects a first term associated with a first multi-destination link, such as the term represented by
first term rendering 230 inFIG. 2A (FIG. 4B , operation 414). Themethod 410 identifies, from among the plurality of destinations of the first multi-destination link, a first destination, if any, associated with the facet previously selected in operation 412 (FIG. 4B , operation 416). If such a destination is found, therendering engine 304 renders the associated content pointed to by the first destination identified in operation 416 (FIG. 4 , operation 418). If no destination associated with the selected facet is found, then therendering engine 304 may take an alternative action such as erasing the content currently rendered in the associatedcontent area 256 or leaving the content currently rendered in the associatedcontent area 256 unchanged. - The system may notify the user that a particular term in the
primary content 302 is not associated with any content that is associated with a particular facet. For example, if the user selectsterm rendering 230 andterm rendering 230 is not associated with any associated content that is associated with the facet corresponding to tab 260 c, then tab 260 c may be displayed in gray or otherwise disabled. As another example, term renderings within the primary content rendering 218 a may be rendered in ways that indicate which facets are associated with them. For example, each facet may be associated with a particular color. The tab corresponding to each facet may be rendered in the color associated with that facet, and each rendering of a term in the primary content rendering 218 a may be underlined with the color(s) of the facet(s) associated with the term. For example, ifterm rendering 230 is associated with the facets corresponding totabs 260 a and 260 b, thenterm rendering 230 may be underlined twice, once with each color associated withtabs 260 a and 260 b. Those having ordinary skill in the art will appreciate that there are other ways to notify the user of the facet(s) associated with particular terms in theprimary content 302. - At some later time, the user selects a second term associated with a second multi-destination link, such as by selecting the second term rendering 232 in
FIG. 2A (FIG. 4B , operation 420). Themethod 410 identifies, from among the plurality of destinations of the second multi-destination link, a second destination, if any, associated with the facet previously selected in operation 412 (FIG. 4B , operation 422). Therendering engine 304 then renders the associated content pointed to by the second destination identified in operation 422 (FIG. 4 , operation 424). If no destination associated with the selected facet is found, then any of the actions described above with respect to theoperation 418 may be performed. - The
method 410 illustrated inFIG. 4B thereby enables the user to make a single selection of a facet, and then to select multiple multi-destination links to cause the destinations of those links that are associated with the selected facet to be rendered, without requiring the user to re-select the facet each time. In other words, the user may select a facet only once, and then cause multiple destinations associated with that facet to be rendered simply by selecting links having those destinations. - The example user interface shown in
FIG. 2A contains tabs 260 a-c corresponding to facets 520 a-c, respectively. At any time the user may click on or otherwise select any one of the tabs 260 a-c to select the corresponding facet as the current facet. Such selection is an example of the facet selection inoperation 412 ofFIG. 4B . Tabs 260 a-c are shown inFIG. 2A merely as examples and do not constitute limitations of the present invention. Alternatively, for example, the user interface may enable the user to select facets using buttons, hypertext, menu choices, dropdown lists, text commands, or voice commands. - If a particular multi-destination link has already been selected, then selecting a different facet as the current facet may cause the destination of the multi-destination link corresponding to the new facet to be displayed automatically, without requiring the multi-destination link to be re-selected. For example, referring again to
FIG. 4B , if the user selects a second facet that differs from the facet previously selected in operation 412 (operation 426), then themethod 410 may identify, from among the plurality of destinations of the second multi-destination link (i.e., the multi-destination link previously selected in operation 420), a third destination associated with the second facet selected in operation 426 (FIG. 4B , operation 428). Therendering engine 304 then renders the associated content pointed to by the third destination identified in operation 428 (FIG. 4 , operation 430). - The
method 410, in other words, enables multiple destinations of a multi-destination link to be rendered sequentially simply in response to the user selecting different facets associated with the link, without requiring the user to re-select the link itself each time. For example, in the user interface ofFIG. 2A , the user may selectterm 302 a by selectingterm rendering 232 once, and then selecttabs 260 a, 260 b, and 260 c (in any sequence) to cause the associated contents that are destinations ofterm 302 a associated withfacets term rendering 232. - As illustrated by the example of the tabs 260 a-260 c, the process of receiving user input that selects a particular facet need not obscure the
rendering 218 a of theprimary content 302. For example, the user may click on one of the tabs 260 a-c and thereby select a corresponding one of the facets 520 a-c without causing a popup window to be displayed (over theprimary content window 216 or elsewhere) and without otherwise obscuring therendering 218 a of theprimary content 302. Because facets may be associated with destinations in multi-destination links, this is an example in which the user may select a particular destination of a multi-destination link without causing a popup window to be displayed and without otherwise obscuring therendering 218 a of theprimary content 302. - Only a portion of the
primary content 302 may be rendered as theprimary content rendering 306. For example, inFIG. 2A , the primary content rendering 218 a may represent only a portion, such as the first page, of the underlyingprimary content 302, such as a news article. Although conventional tools, such as a vertical scrollbar, may be provided to enable the user to view other portions of theprimary content 302, embodiments of the present invention also provide other mechanisms to enable other portions of theprimary content 302 to be rendered and viewed under control of the user. - For example, referring to
FIG. 2B , an embodiment is shown in which navigation buttons 270 a-b andtext field 272 are provided to enable the user to navigate from page to page within theprimary content 302. In response to the user clicking on theprevious page button 270 a, the system may render the page of theprimary content 302 immediately preceding the page currently displayed in the primary content rendering 218 a. Similarly, in response to the user clicking on thenext page button 270 b, the system may render the page of theprimary content 302 immediately following the page currently displayed in the primary content rendering 218 a. In response to the user typing a page number in thepage number field 272, the system may render the page having the page number entered by the user. Pages may, for example, be measured in terms of the amount of the maximum amount of content that may be rendered within the primarycontent display area 216. - The particular user interface elements 270 a-b and 272 shown in
FIG. 2B are merely examples and do not constitute limitations of the present invention. More generally, embodiments of the present invention may provide user interface elements that enable the user to cause different portions of theprimary content 302 to be rendered without vertically scrolling through renderings of theprimary content 302. - For example, embodiments of the present invention may provide various means for enabling the user to cause different portions of the
primary content 302 to be rendered by horizontally scrolling through the primary content. As shown in the embodiment ofFIG. 2B , the user interface may include ahorizontal scrolling control 274 which displays thumbnails 278 a-d of the various pages of theprimary content 302 within athumbnail container 276. In the particular example shown inFIG. 2B , theprimary content 302 includes four pages, indicating that four display areas of the size of the primarycontent display area 216 are required to render the completeprimary content 302. - A current page indicator 280 encloses the page currently represented by the rendering 218 a in the primary content display area. The user may drag or otherwise move the current page indicator 280 horizontally along the
thumbnail container 276 to cause the system to render the portion of theprimary content 302 corresponding to the page currently underneath the current page indicator 280. For example, if the user moves the current page indicator 280 so that it enclosedthumbnail 278 b, the system may in response render the portion of theprimary content 302 that corresponds to thumbnail 278 b within theprimary content area 216, thereby replacing the currently-rendered primary content rendering 218 a. - The system may provide additional visual indicators of the user's current location within the primary rendering. For example, page number indicators such as 1, 2, 3, and 4, may be displayed within the page thumbnails 278 a-d and/or elsewhere. As another example page number and total page indicators such as 1/4, 2/4, 3/4, and 4/4 may be displayed within the page thumbnails 278 a-d and/or elsewhere.
- In this case and in other cases described herein in which one rendering replaces another, those having ordinary skill in the art understand that the transition from one rendering to the next may be visually indicated in any of a variety of ways, such as by erasing the first rendering and immediately rendering the second rendering in its place, by fading out the first rendering and simultaneously fading in the second rendering, or by “wiping” the first rendering out and the second rendering in to the primary content display area 216 (either horizontally or vertically). These and other methods for replacing one rendering with another all fall within the scope of embodiments of the present invention.
- The
primary content 302 may previously have been extracted from another source before being rendered and processed in any of the ways disclosed herein. For example, referring again toFIG. 1A , recall the rendering of the web page shown within theapplication display area 112. Such a web page may, for example, be a web page from a newspaper web site containing a news article. The rendering of the web page may include content other than theprimary content 118 a, such asadvertisements 122,masthead 114, andnavigational tools 124 such as buttons and hyperlinks. - Referring to
FIG. 6B , a diagram is shown of an example of the underlying source web content 653 (such as an HTML document) represented by the rendering inFIG. 1A . In other words, the rendering inFIG. 1A may be a rendering of thesource web content 653 shown inFIG. 6B . In particular, thesource web content 653 may include masthead content represented by the masthead rendering 114 inFIG. 1A ,primary content 656 represented by the primary content rendering 118 a inFIG. 1A ,navigational control content 658 represented by the navigational control rendering 126 inFIG. 1A , andadvertising content 660 represented by theadvertising content rendering 122 inFIG. 1A . - Embodiments of the present invention may be used to extract only the article content, such as the
primary content 656 and any other pages of the same article (if all such pages are not contained within the primary content 656), including data such as the article's headline, byline, and article (hyper)text. This extracted primary content may then be made available for viewing and browsing using the enhanced user interface described above. - The
primary content 656 as rendered in the original web page (FIG. 1A ) may be divided into pages in a different way than in the enhanced web page (FIGS. 2A-2B ). For example, if the size of the sourceprimary content area 116 is larger than the size of the enhancedprimary content area 216, then theprimary content 656 may be divided into a larger number of pages when displayed using the enhanced user interface. - The extracted primary content may be enhanced after it has been extracted from the source web page and before it is made available for viewing and browsing using the enhanced user interface. For example, referring to
FIG. 4C , amethod 440 is shown for extracting and enhancing primary content according to one embodiment of the present invention. For example, theprimary content 656 may or may not contain hyperlinks within the first (source) web page 653 (FIG. 6B ). Theprimary content 656 may be extracted from the source web page 653 (FIG. 4C , operation 442), and a first term within the extractedprimary content 656 may be selected (FIG. 4C , operation 444). A new hyperlink, such as a single-destination hyperlink and/or multi-destination hyperlink, may be added to the extractedprimary content 656. For example, a multi-destination hyperlink may be added to the selected term by associating the selected term with first associated content (FIG. 4C , operation 446) and by associating the selected term with second associated content (FIG. 4C , operation 448). The resulting enhanced primary content may be used as theprimary content 302 that is utilized by various embodiments of the present invention in the ways disclosed herein. For example, theprimary content 606 shown inFIG. 6A may be enhanced primary content resulting from the extraction and enhancement process shown inFIG. 4C . - For example, if it is desired that selected terms in the extracted primary content be linked to encyclopedia entries, advertising content, and map content, where possible, then each selected term may be marked up with a multi-destination link having two or more destinations, where each of the destinations is associated with an encyclopedia entry, advertising content, or map content related to the selected term. Not all facets need be associated with all multi-destination links created in this way. For example, one multi-destination link may have three destinations associated with three corresponding facets, while another multi-destination link may have two destination associated with two corresponding facets.
- The tagging performed in
operations 444 and 446 of themethod 440 ofFIG. 4C may involve tagging the extracted primary content with static and/or dynamic links. In the case of dynamic links, the selected term may act both as the anchor of the link and as a parameter of a destination of the link. For example, in the case of a link destination that points to an advertising server, the link anchor may be provided as a parameter to the advertising server so that when the link destination is activated, the link anchor is provided as an input to the advertising server, in response to which the advertising server provides advertising content related to the link anchor. The advertising content may then be rendered. This is merely one example of a way in which terms in theprimary content 656 may be extracted and then tagged with dynamic links. - As a particular example, a multi-destination link may be added to a selected term in the
primary content 656, where at least one destination of the multi-destination link points to (static or dynamic) advertising content. Such advertising content may be the same as or differ from theadvertising content 660 that the selected term was linked to in thesource web page 653 from which theprimary content 656 was extracted. As a result, when the selected term is rendered in thesource web page 653, a first advertisement may be rendered in connection with the selected term, while when the selected term is rendered in theprimary content 606 in the resultingweb page 602 after extraction, a second advertisement that differs from the first advertisement may be rendered in connection with the selected term. - Furthermore, referring to
FIG. 2C , once the primary content has been extracted and enhanced as described above, the enhanced primary content may be rendered in conjunction with the original web page from which the primary content was extracted. For example, the primary content rendering 218 a, associated content rendering 258 a, andmasthead 214 may be rendered on top of, and thereby obscure at least part of, the source web page. At least part of the source web page may therefore be visible and active while embodiments of the present invention are active. The user may therefore, for example, click on a visible portion of the source web page to cause therenderings source web page 653. Alternatively, for example, a “close” button or other mechanism may be displayed or otherwise provided to enable the user to affirmatively indicate that therenderings source web page 653 can become fully visible again. - Embodiments of the present invention have a variety of advantages, such as the following.
- As mentioned earlier, one disadvantage of conventional techniques for displaying and navigating through web site content is that they can make it difficult for users to engage in the kind of nonlinear exploration of content for which the Web and hypertext were designed. For example, in conventional web site designs, clicking on a link within a news article typically causes the destination (target) of the link to be displayed by refreshing the web browser window to display the destination content, or by opening the destination content in a new tab or a new window. In any of these cases, the destination content may replace or obscure the source content, and it can be difficult, tedious, and time-consuming for the user to return to the point in the source content that contains the hyperlink. In contrast, embodiments of the present invention make it possible for the user to select a link and, in response, to see a rendering of the link's destination in a (possibly existing) display area that does not replace, overlap with, or obstruct the display area in which the primary content is displayed. As a result, the user may easily view both the primary content and the associated content simultaneously, and the user need not take any action to return to the primary content because the primary content always remains fully visible. This makes the user's reading experience more seamless, convenient and less disorienting.
- As mentioned earlier, another drawback of conventional techniques for displaying and navigating through web site content is that pop-up advertisements typically appear on top of and thereby obscure the main article content. In contrast, embodiments of the invention allow advertising content to appear side-by-side the primary content, or to otherwise be rendered in a way that does not intrude upon the user's experience of reading the primary content. A related benefit of embodiments of the present invention is that they give the user control over whether to view advertisements. For example, if one of the available facets is “advertising” or “offers”, the user may either select or de-select the advertising facet depending on the user's preference. If the user selects the “advertising” facet, then upon clicking on any tagged term, a corresponding advertisement related to the term (if available) will be displayed nonobtrusively.
- Another drawback of conventional techniques for displaying and navigating through web site content is the article layout and navigation. Due to limitations in the way web content is published, text is usually presented in wide, single columns (which strain the eyes, especially with long-form articles), require north-south scrolling (causing the reader to scroll by and beyond ads and also losing article byline and site navigation tools), and usually require one or more page refreshes (which can be disorienting and cause frustrating delays depending upon internet speeds). In contrast, embodiments of the invention (1) present article content in convenient, easy-to-read column width text (used for centuries in printed newspapers and magazines for this reason), (2) eliminate north-south scrolling (keeping article title, byline, navigation tools, ads, masthead, etc. in fixed position), and (3) eliminate multiple page refresh (keeping the reader in a single place throughout the entire article).
- All the above advantages result in a large single advantage for content providers who use embodiments of the present invention. Another disadvantage of conventional techniques for displaying and navigating through web site content is that due to the disadvantages noted above, consumers do not engage publisher's sites for much more than 3-6 minutes per day on average. This lack of engagement limits the consumer's ability to extract usable knowledge from the information, and also limits the content provider's ability to sustain or increase ad rates. Ad rates are often based on statistics such as “time-on-site” to measure return on investment. This is similar to viewership ratings on television. Embodiments of the invention are likely to engage readers for longer periods of time, deepening the reader's knowledge/insight, and also yielding strong ad rates/revenues to increase the likelihood of ensure publisher viability.
- It is to be understood that although the invention has been described above in terms of particular embodiments, the foregoing embodiments are provided as illustrative only, and do not limit or define the scope of the invention. Various other embodiments, including but not limited to the following, are also within the scope of the claims. For example, elements and components described herein may be further divided into additional components or joined together to form fewer components for performing the same functions.
- Although various embodiments are disclosed herein as being applicable to HTML and other web-based content, these are merely examples. First, terms such as “web-based content” may refer to a wide variety of content, such as content containing one or more of HTML, XML, XHTML, Java, JavaScript, and Flash content. Second, embodiments of the present invention may be applied to content other than web content.
- The terms “hypertext content” and “hyperlinked content” are used synonymously herein. Both terms refer to any content that includes one or more hyperlinks. The term “hypertext content” may include, but is not limited to, text content. Rather, hypertext content may include, for example, text, images, videos, executable code (e.g., Java or JavaScript), and links in which any such content is the anchor.
- The
computing device 100 may be any kind of computing device, including but limited to desktop computers, laptop computers, personal digital assistants (PDAs), smartphones (such as the Apple iPhone), and tablet computers (such as the Apple iPad). Themonitor 102 may be any kind of monitor, including but not limited to touchscreen monitors that are capable of both providing visual output and receiving touch input. Embodiments of the present invention are not limited to implementation on any particular computer platform, such as WinTel platforms, Unix platforms, and MacOS platforms. - The techniques described above may be implemented, for example, in hardware, software, firmware, or any combination thereof. The techniques described above may be implemented in one or more computer programs executing on a programmable computer including a processor, a storage medium readable by the processor (including, for example, volatile and non-volatile memory and/or storage elements), at least one input device, and at least one output device. Program code may be applied to input entered using the input device to perform the functions described and to generate output. The output may be provided to one or more output devices.
- Each computer program within the scope of the claims below may be implemented in any programming language, such as assembly language, machine language, a high-level procedural programming language, or an object-oriented programming language. The programming language may, for example, be a compiled or interpreted programming language.
- Each such computer program may be implemented in a computer program product tangibly embodied in a machine-readable storage device for execution by a computer processor. Method steps of the invention may be performed by a computer processor executing a program tangibly embodied on a computer-readable medium to perform functions of the invention by operating on input and generating output. Suitable processors include, by way of example, both general and special purpose microprocessors. Generally, the processor receives instructions and data from a read-only memory and/or a random access memory. Storage devices suitable for tangibly embodying computer program instructions include, for example, all forms of non-volatile memory, such as semiconductor memory devices, including EPROM, EEPROM, and flash memory devices; magnetic disks such as internal hard disks and removable disks; magneto-optical disks; and CD-ROMs. Any of the foregoing may be supplemented by, or incorporated in, specially-designed ASICs (application-specific integrated circuits) or FPGAs (Field-Programmable Gate Arrays). A computer can generally also receive programs and data from a storage medium such as an internal disk (not shown) or a removable disk. These elements will also be found in a conventional desktop or workstation computer as well as other computers suitable for executing computer programs implementing the methods described herein, which may be used in conjunction with any digital print engine or marking engine, display monitor, or other raster output device capable of producing color or gray scale pixels on paper, film, display screen, or other output medium.
Claims (64)
1. A method for use with primary content, wherein the primary content includes a first term, wherein the first term is associated with a first plurality of associated contents, wherein the first plurality of associated contents includes first associated content and second associated content, the method comprising:
(1) rendering at least part of the primary content to create a rendering of the at least part of the primary content, including rendering the first term to create a rendering of the first term;
(2) rendering the first associated content to create a rendering of the first associated content in a first existing display area wherein the rendering of the at least part of the primary content remains fully visible after the first associated content is rendered; and
(3) rendering the second associated content to create a rendering of the second associated content in a second existing display area, wherein the rendering of the at least part of the primary content remains fully visible after the first associated content is rendered.
2. The method of claim 1 , wherein the first existing display area is distinct from the second existing display area.
3. The method of claim 1 , wherein the first existing display area and the second existing display area comprise a single existing display area, and wherein rendering the second associated content comprises rendering the second associated content to replace the rendering of the first associated content in the single existing display area.
4. The method of claim 1 , wherein the rendering of the first associated content does not obstruct the rendering of the at least part of the primary content, and wherein the rendering of the second associated content does not obstruct the rendering of the at least part of the primary content.
5. The method of claim 1 , further comprising, before (1):
(4) extracting the content from a document;
(5) identifying the first term within the content;
(6) associating the first term with the first associated content; and
(7) associating the first term with the second associated content.
6. The method of claim 5 , wherein the document comprises a web page, and wherein the content is stored in a standardized presentation format that is transmissible over the Internet.
7. The method of claim 1 , wherein the content is stored in a standardized presentation format that is transmissible over the Internet.
8. The method of claim 1 , wherein the first associated content comprises content associated with a first facet, and wherein the second associated content comprises content of a second facet that differs from the first facet.
9. The method of claim 8 , wherein each of the first and second facets comprises one of a definition facet, an advertisement facet, and a map facet.
10. The method of claim 8 , further comprising:
(4) before (2), receiving first user input selecting a first one of the first facet and the second facet;
(5) before (2), receiving second user input selecting the first term; and
wherein (2) comprises rendering the first associated content in response to receiving the second user input.
11. The method of claim 1 , wherein the content further includes a second term, wherein the second term is associated with a second plurality of associated contents, wherein the second plurality of associated contents includes third associated content and fourth associated content;
wherein the rendering of the at least part of the content includes a rendering of the second term; and
wherein the method further comprises:
(4) rendering the third associated content to create a rendering of the third associated content that does not obscure the rendering of the at least part of the content; and
(5) rendering the second associated content to create a rendering of the second associated content that does not obscure the rendering of the at least part of the content.
12. The method of claim 11 , wherein the first plurality of associated contents consists of a first number of associated contents, wherein the second plurality of associated contents consists of a second number of associated contents, and wherein the first number differs from the second number.
13. The method of claim 11 , wherein the first plurality of associated contents includes at least one content associated with a particular facet, and wherein the second plurality of associated contents does not include any content associated with the particular facet.
14. The method of claim 1 , further comprising:
(4) before (2), receiving user input selecting the first associated content without obscuring the rendering of the at least part of the content.
15. The method of claim 14 , further comprising:
(5) before (2), receiving user input selecting the second associated content without obscuring the rendering of the at least part of the content.
16. The method of claim 1 , wherein (2) comprises rendering the first associated content without opening a new window, and wherein (3) comprises rendering the second associated content without opening a new window.
17. The method of claim 1 , wherein (2) comprises rendering the first associated content without opening a new tab, and wherein (3) comprises rendering the second associated content without opening a new tab.
18. The method of claim 1 , wherein (2) comprises rendering the first associated content without re-rendering the at least part of the content, and wherein (3) comprises rendering the second associated content without re-rendering the at least part of the content.
19. The method of claim 1 :
wherein (1) comprises rendering the at least part of the content to create the rendering of the at least part of the content in a first display area;
wherein (2) comprises rendering the first associated content to create the rendering of the first associated content in a second display area that does not overlap with the first display area.
20. The method of claim 19 :
wherein (3) comprises rendering the second associated content to create the rendering of the second associated content in the second display area, whereby the rendering of the second associated content replaces the rendering of the first associated content.
21. The method of claim 19 :
wherein (3) comprises rendering the second associated content to create the rendering of the second associated content in a third display area that does not overlap with the first display area or the second display area.
22. The method of claim 1 , further comprising:
(4) before (2), receiving user input selecting the first term; and
wherein (2) comprises rendering the first associated content in response to receiving the user input selecting the first term.
23. The method of claim 22 , wherein (4) comprises receiving user input representing a click on the rendering of the first term.
24. The method of claim 22 , wherein (4) comprises receiving user input representing a hover over the rendering of the first term.
25. The method of claim 1 , wherein (1) comprises rendering a first subset of the content, wherein the first subset comprises less than all of the content;
wherein the method further comprises:
(4) receiving user input selecting a second subset of the content that differs from the first subset of the content, and wherein the second subset comprises less than all of the content;
(5) rendering the second subset of the content to create a rendering of the second subset of the content without vertically scrolling through the content.
26. The method of claim 25 , wherein (5) comprises replacing the rendering of the first subset of the content with the second subset of the content.
27. The method of claim 25 , wherein (5) comprises horizontally scrolling from the rendering of the first subset of the content to the rendering of the second subset of the content.
28. The method of claim 1 , wherein (1) comprises rendering the at least part of the primary content in a content display area, wherein the content display area is a subset of an application display area of an application executing on a computing device.
29. The method of claim 1 , wherein (1) comprises rendering the at least part of the primary content in a content display area, wherein the content display area is coextensive with an application display area of an application executing on a computing device.
30. The method of claim 1 , wherein (1) comprises rendering the at least part of the primary content in a subset of a physical display area of a computing device.
31. The method of claim 1 , wherein (1) comprises rendering the at least part of the primary content in a physical display area of a computing device.
32. The method of claim 1 , wherein (2) comprises:
(2)(a) creating a new frame within the first existing display area; and
(2)(b) rendering the first associated content within the new frame.
33. A computer-readable medium comprising computer-program instructions tangibly stored on the computer-readable medium, wherein the computer program instructions are executable by at least one computer processor to perform a method for use with primary content, wherein the primary content includes a first term, wherein the first term is associated with a first plurality of associated contents, wherein the first plurality of associated contents includes first associated content and second associated content, the method comprising:
(1) rendering at least part of the primary content to create a rendering of the at least part of the primary content, including rendering the first term to create a rendering of the first term;
(2) rendering the first associated content to create a rendering of the first associated content in a first existing display area wherein the rendering of the at least part of the primary content remains fully visible after the first associated content is rendered; and
(3) rendering the second associated content to create a rendering of the second associated content in a second existing display area, wherein the rendering of the at least part of the primary content remains fully visible after the first associated content is rendered.
34. The computer-readable medium of claim 33 , wherein the first existing display area is distinct from the second existing display area.
35. The computer-readable medium of claim 33 , wherein the first existing display area and the second existing display area comprise a single existing display area, and wherein rendering the second associated content comprises rendering the second associated content to replace the rendering of the first associated content in the single existing display area.
36. The computer-readable medium of claim 33 , wherein the rendering of the first associated content does not obstruct the rendering of the at least part of the primary content, and wherein the rendering of the second associated content does not obstruct the rendering of the at least part of the primary content.
37. The computer-readable medium of claim 33 , wherein the method further comprises, before (1):
(4) extracting the content from a document;
(5) identifying the first term within the content;
(6) associating the first term with the first associated content; and
(7) associating the first term with the second associated content.
38. The computer-readable medium of claim 37 , wherein the document comprises a web page, and wherein the content is stored in a standardized presentation format that is transmissible over the Internet.
39. The computer-readable medium of claim 33 , wherein the content is stored in a standardized presentation format that is transmissible over the Internet.
40. The computer-readable medium of claim 33 , wherein the first associated content comprises content associated with a first facet, and wherein the second associated content comprises content of a second facet that differs from the first facet.
41. The computer-readable medium of claim 40 , wherein each of the first and second facets comprises one of a definition facet, an advertisement facet, and a map facet.
42. The computer-readable medium of claim 40 , wherein the method further comprises:
(4) before (2), receiving first user input selecting a first one of the first facet and the second facet;
(5) before (2), receiving second user input selecting the first term; and
wherein (2) comprises rendering the first associated content in response to receiving the second user input.
43. The computer-readable medium of claim 33 , wherein the content further includes a second term, wherein the second term is associated with a second plurality of associated contents, wherein the second plurality of associated contents includes third associated content and fourth associated content;
wherein the rendering of the at least part of the content includes a rendering of the second term; and
wherein the method further comprises:
(4) rendering the third associated content to create a rendering of the third associated content that does not obscure the rendering of the at least part of the content; and
(5) rendering the second associated content to create a rendering of the second associated content that does not obscure the rendering of the at least part of the content.
44. The computer-readable medium of claim 43 , wherein the first plurality of associated contents consists of a first number of associated contents, wherein the second plurality of associated contents consists of a second number of associated contents, and wherein the first number differs from the second number.
45. The computer-readable medium of claim 43 , wherein the first plurality of associated contents includes at least one content associated with a particular facet, and wherein the second plurality of associated contents does not include any content associated with the particular facet.
46. The computer-readable medium of claim 33 , wherein the method further comprises:
(4) before (2), receiving user input selecting the first associated content without obscuring the rendering of the at least part of the content.
47. The computer-readable medium of claim 46 , wherein the method further comprises:
(5) before (2), receiving user input selecting the second associated content without obscuring the rendering of the at least part of the content.
48. The computer-readable medium of claim 33 , wherein (2) comprises rendering the first associated content without opening a new window, and wherein (3) comprises rendering the second associated content without opening a new window.
49. The computer-readable medium of claim 33 , wherein (2) comprises rendering the first associated content without opening a new tab, and wherein (3) comprises rendering the second associated content without opening a new tab.
50. The computer-readable medium of claim 33 , wherein (2) comprises rendering the first associated content without re-rendering the at least part of the content, and wherein (3) comprises rendering the second associated content without re-rendering the at least part of the content.
51. The computer-readable medium of claim 33 :
wherein (1) comprises rendering the at least part of the content to create the rendering of the at least part of the content in a first display area;
wherein (2) comprises rendering the first associated content to create the rendering of the first associated content in a second display area that does not overlap with the first display area.
52. The computer-readable medium of claim 50 :
wherein (3) comprises rendering the second associated content to create the rendering of the second associated content in the second display area, whereby the rendering of the second associated content replaces the rendering of the first associated content.
53. The computer-readable medium of claim 50 :
wherein (3) comprises rendering the second associated content to create the rendering of the second associated content in a third display area that does not overlap with the first display area or the second display area.
54. The computer-readable medium of claim 33 , wherein the method further comprises:
(4) before (2), receiving user input selecting the first term; and
wherein (2) comprises rendering the first associated content in response to receiving the user input selecting the first term.
55. The computer-readable medium of claim 53 , wherein (4) comprises receiving user input representing a click on the rendering of the first term.
56. The computer-readable medium of claim 53 , wherein (4) comprises receiving user input representing a hover over the rendering of the first term.
57. The computer-readable medium of claim 33 , wherein (1) comprises rendering a first subset of the content, wherein the first subset comprises less than all of the content;
wherein the method further comprises:
(4) receiving user input selecting a second subset of the content that differs from the first subset of the content, and wherein the second subset comprises less than all of the content;
(5) rendering the second subset of the content to create a rendering of the second subset of the content without vertically scrolling through the content.
58. The computer-readable medium of claim 56 , wherein (5) comprises replacing the rendering of the first subset of the content with the second subset of the content.
59. The computer-readable medium of claim 56 , wherein (5) comprises horizontally scrolling from the rendering of the first subset of the content to the rendering of the second subset of the content.
60. The computer-readable medium of claim 33 , wherein (1) comprises rendering the at least part of the primary content in a content display area, wherein the content display area is a subset of an application display area of an application executing on a computing device.
61. The computer-readable medium of claim 33 , wherein (1) comprises rendering the at least part of the primary content in a content display area, wherein the content display area is coextensive with an application display area of an application executing on a computing device.
62. The computer-readable medium of claim 33 , wherein (1) comprises rendering the at least part of the primary content in a subset of a physical display area of a computing device.
63. The computer-readable medium of claim 33 , wherein (1) comprises rendering the at least part of the primary content in a physical display area of a computing device.
64. The computer-readable medium of claim 33 , wherein (2) comprises:
(2)(a) creating a new frame within the first existing display area; and
(2)(b) rendering the first associated content within the new frame.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/891,822 US20130254643A1 (en) | 2011-06-13 | 2013-05-10 | Digital Content Enhancement Platform |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/159,145 US8443277B2 (en) | 2011-06-13 | 2011-06-13 | Digital content enhancement platform |
US13/891,822 US20130254643A1 (en) | 2011-06-13 | 2013-05-10 | Digital Content Enhancement Platform |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/159,145 Continuation US8443277B2 (en) | 2011-06-13 | 2011-06-13 | Digital content enhancement platform |
Publications (1)
Publication Number | Publication Date |
---|---|
US20130254643A1 true US20130254643A1 (en) | 2013-09-26 |
Family
ID=47294204
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/159,145 Expired - Fee Related US8443277B2 (en) | 2011-06-13 | 2011-06-13 | Digital content enhancement platform |
US13/891,822 Abandoned US20130254643A1 (en) | 2011-06-13 | 2013-05-10 | Digital Content Enhancement Platform |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/159,145 Expired - Fee Related US8443277B2 (en) | 2011-06-13 | 2011-06-13 | Digital content enhancement platform |
Country Status (2)
Country | Link |
---|---|
US (2) | US8443277B2 (en) |
WO (1) | WO2012173936A2 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130268829A1 (en) * | 2012-04-04 | 2013-10-10 | Offerpop Corporation | Shared Link Tracking in Online Social Networking Systems |
US9081468B2 (en) | 2011-11-23 | 2015-07-14 | Offerpop Corporation | Integrated user participation profiles |
WO2021076810A1 (en) * | 2019-10-17 | 2021-04-22 | Ofpo Tech Llc | Graphical user interface with correlated and uncorrelated constituents |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10048854B2 (en) | 2011-01-31 | 2018-08-14 | Oracle International Corporation | Drag and drop interaction between components of a web application |
US8572505B2 (en) * | 2011-01-31 | 2013-10-29 | Oracle International Corporation | Automatically testing a web application that has independent display trees |
US20150189390A1 (en) | 2012-06-14 | 2015-07-02 | Flextronics Ap, Llc | Media center |
US20140040823A1 (en) * | 2012-08-03 | 2014-02-06 | Tencent Technology (Shenzhen) Company Limited | Method and device for multi-window browsing |
CN103748889A (en) * | 2012-08-17 | 2014-04-23 | 弗莱克斯电子有限责任公司 | EPG aggregation from multiple sources |
US9785307B1 (en) * | 2012-09-27 | 2017-10-10 | Open Text Corporation | Reorder and selection persistence of displayed objects |
KR20140111171A (en) | 2013-03-08 | 2014-09-18 | 삼성전자주식회사 | Electronic apparatus displaying representative information when scrolling content and control methode thereof |
US11354486B2 (en) | 2013-05-13 | 2022-06-07 | International Business Machines Corporation | Presenting a link label for multiple hyperlinks |
US9727547B2 (en) * | 2013-06-07 | 2017-08-08 | Apple Inc. | Media interface tools and animations |
US9779065B1 (en) * | 2013-08-29 | 2017-10-03 | Google Inc. | Displaying graphical content items based on textual content items |
US20150074735A1 (en) * | 2013-09-06 | 2015-03-12 | Seespace Ltd. | Method and Apparatus for Rendering Video Content Including Secondary Digital Content |
US9846532B2 (en) | 2013-09-06 | 2017-12-19 | Seespace Ltd. | Method and apparatus for controlling video content on a display |
US10175845B2 (en) * | 2013-10-16 | 2019-01-08 | 3M Innovative Properties Company | Organizing digital notes on a user interface |
TW201516698A (en) * | 2013-10-28 | 2015-05-01 | Quanta Comp Inc | Remote play system and method |
WO2015097729A1 (en) * | 2013-12-27 | 2015-07-02 | 株式会社マーズフラッグ | Information processing device, web server and computer program |
US10680992B2 (en) * | 2015-12-21 | 2020-06-09 | Facebook, Inc. | Systems and methods to manage communications regarding a post in a social network |
WO2018104853A1 (en) * | 2016-12-05 | 2018-06-14 | Varghese, Vinu | Scrolling response contents |
US11200071B2 (en) * | 2017-02-27 | 2021-12-14 | International Business Machines Corporation | Cognitive scrollbar |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060230333A1 (en) * | 2005-04-07 | 2006-10-12 | Microsoft Corporation | Creating associated content for a region of a document in response to a user selecting the region |
US9081856B1 (en) * | 2011-09-15 | 2015-07-14 | Amazon Technologies, Inc. | Pre-fetching of video resources for a network page |
US9235648B2 (en) * | 2008-01-16 | 2016-01-12 | International Business Machines Corporation | Automated surfacing of tagged content in vertical applications |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2305525B (en) * | 1995-09-21 | 1997-08-20 | Ricoh Kk | Document data administrating system and method of administrating document data |
US6011537A (en) | 1997-01-27 | 2000-01-04 | Slotznick; Benjamin | System for delivering and simultaneously displaying primary and secondary information, and for displaying only the secondary information during interstitial space |
US6134552A (en) * | 1997-10-07 | 2000-10-17 | Sap Aktiengesellschaft | Knowledge provider with logical hyperlinks |
US6211874B1 (en) | 1998-05-15 | 2001-04-03 | International Business Machines Corporation | Method for parallel selection of URL's |
US6769096B1 (en) | 1998-06-24 | 2004-07-27 | Microsoft Corporation | System and method for updating a table of contents in a frameset |
WO2001004791A1 (en) | 1999-07-09 | 2001-01-18 | Streamline Systems Pty Ltd | Methods of organising information |
US6535912B1 (en) * | 1999-08-31 | 2003-03-18 | Lucent Technologies Inc. | Method for creating and playing back a smart bookmark that automatically retrieves a requested Web page through a plurality of intermediate Web pages |
US6683633B2 (en) | 2000-03-20 | 2004-01-27 | Incontext Enterprises, Inc. | Method and system for accessing information |
JP3703080B2 (en) * | 2000-07-27 | 2005-10-05 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Method, system and medium for simplifying web content |
US7072883B2 (en) * | 2001-12-21 | 2006-07-04 | Ut-Battelle Llc | System for gathering and summarizing internet information |
US6892352B1 (en) | 2002-05-31 | 2005-05-10 | Robert T. Myers | Computer-based method for conveying interrelated textual narrative and image information |
WO2004109557A1 (en) * | 2003-06-03 | 2004-12-16 | Forbes Holten Norris, Iii | Flexible, dynamic menu-based web-page architecture |
US20040255240A1 (en) | 2003-06-10 | 2004-12-16 | Charlie Udom | Image selection for variable documents |
US20050108160A1 (en) | 2003-11-17 | 2005-05-19 | Sbc Knowledge Ventures, L.P. | Line-by-line user interface with multiple links per line item |
US7962843B2 (en) * | 2003-12-15 | 2011-06-14 | Microsoft Corporation | Browser session overview |
US7840911B2 (en) | 2004-09-27 | 2010-11-23 | Scott Milener | Method and apparatus for enhanced browsing |
US8225195B1 (en) * | 2004-12-15 | 2012-07-17 | Amazon Technologies, Inc. | Displaying links at varying levels of prominence to reveal emergent paths based on user interaction |
US20100299322A1 (en) * | 2009-05-23 | 2010-11-25 | Qin Zhang | System and method for web page identifications |
US7912829B1 (en) | 2006-10-04 | 2011-03-22 | Google Inc. | Content reference page |
US20080137668A1 (en) * | 2006-12-08 | 2008-06-12 | The Regents Of The University Of California | Social semantic networks for distributing contextualized information |
US9400850B2 (en) * | 2011-05-31 | 2016-07-26 | Verizon Patent And Licensing Inc. | Systems and methods for providing a tailored user interface associated with a web page |
-
2011
- 2011-06-13 US US13/159,145 patent/US8443277B2/en not_active Expired - Fee Related
-
2012
- 2012-06-11 WO PCT/US2012/041941 patent/WO2012173936A2/en active Application Filing
-
2013
- 2013-05-10 US US13/891,822 patent/US20130254643A1/en not_active Abandoned
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060230333A1 (en) * | 2005-04-07 | 2006-10-12 | Microsoft Corporation | Creating associated content for a region of a document in response to a user selecting the region |
US9235648B2 (en) * | 2008-01-16 | 2016-01-12 | International Business Machines Corporation | Automated surfacing of tagged content in vertical applications |
US9081856B1 (en) * | 2011-09-15 | 2015-07-14 | Amazon Technologies, Inc. | Pre-fetching of video resources for a network page |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9081468B2 (en) | 2011-11-23 | 2015-07-14 | Offerpop Corporation | Integrated user participation profiles |
US20130268829A1 (en) * | 2012-04-04 | 2013-10-10 | Offerpop Corporation | Shared Link Tracking in Online Social Networking Systems |
US9268750B2 (en) * | 2012-04-04 | 2016-02-23 | Offerpop Corporation | Shared link tracking in online social networking systems |
WO2021076810A1 (en) * | 2019-10-17 | 2021-04-22 | Ofpo Tech Llc | Graphical user interface with correlated and uncorrelated constituents |
Also Published As
Publication number | Publication date |
---|---|
US8443277B2 (en) | 2013-05-14 |
WO2012173936A3 (en) | 2013-05-02 |
US20120317476A1 (en) | 2012-12-13 |
WO2012173936A4 (en) | 2013-06-27 |
WO2012173936A2 (en) | 2012-12-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8443277B2 (en) | Digital content enhancement platform | |
US8806325B2 (en) | Mode identification for selective document content presentation | |
US8739073B2 (en) | User interface for document table of contents | |
US10878175B2 (en) | Portlet display on portable computing devices | |
US20110035263A1 (en) | Process for increasing user-interaction rates for document elements | |
KR101305781B1 (en) | Display control device, recording medium whereupon display program is recorded, and display control method | |
US8982145B2 (en) | Display error indications | |
US20120131441A1 (en) | Multi-Mode Web Browsing | |
US20120136892A1 (en) | Book content distribution system and content server | |
US10705710B2 (en) | Web page content insertion based on scroll operation | |
US9448985B2 (en) | Browser application and a method of operating the browser application | |
US20160180564A1 (en) | Information display device, distribution device, information display method, and non-transitory computer readable storage medium | |
US9704180B2 (en) | Distribution device, terminal device, distribution method, and non-transitory computer readable storage medium | |
US20160239171A1 (en) | Information display apparatus, distribution apparatus, information display method, and non-transitory computer readable storage medium | |
WO2015159360A1 (en) | Viewing device, display control method, recording medium, and program | |
US10025757B2 (en) | Information display device, delivery device, information display method, and non-transitory computer readable storage medium | |
JP6679640B2 (en) | Information display program, information display device, information display method, and distribution device | |
JP6199917B2 (en) | Improved readability on mobile devices | |
US20160239156A1 (en) | Browser application and a method of operating the browser application | |
JP7002877B2 (en) | Information display program, information display device, information display method and distribution device | |
JPWO2017163371A1 (en) | Information processing system, information processing method, and information processing program | |
Harwani et al. | Using CSS | |
JP6444338B2 (en) | Information display program, information display apparatus, information display method, distribution apparatus, and distribution method | |
Fielding et al. | Using Fluid Layouts | |
WO2015166317A1 (en) | Method and system for providing a browser application |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: SPANLOCAL NEWS, INC., MASSACHUSETTS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:GOLDMAN, RICHARD;STEPHENSON, CHRISTOPHER;BAILIE, ROBERT A.;SIGNING DATES FROM 20110727 TO 20110808;REEL/FRAME:030396/0738 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |