INTERACTIVE SITEMAP WITH USER FOOTPRINTS
A system and method for generating an interactive sitemap of a website includes steps of: receiving an identifier of a user visiting the website; storing identifiers of the website pages visited by the user; associating the website page identifiers with the user identifier; capturing a snapshot of each website page visited by the user; determining website pages recommended for the user, but not yet visited by the user; capturing a snapshot of at least one recommended website page; and generating the interactive sitemap that includes a sitemap tree structure of the website with selectable nodes representing the website pages visited by the user and the website pages recommended for the user. When the user rolls over one of the selectable nodes, presenting the snapshot within the in-page window.
This application claims priority to and is a continuation of U.S. application Ser. No. 13/935,514, filed on Jul. 4, 2013, entitled “INTERACTIVE SITEMAP WITH USER FOOTPRINTS”, which is incorporated herein.
FIELDThe disclosed subject matter broadly relates to the field of sitemaps, and more particularly relates to the field of interactive sitemaps.
BACKGROUNDA sitemap, as defined by Wikipedia is: “A site map (or sitemap) is a list of pages of a web site accessible to crawlers or users. It can be either a document in any form used as a planning tool for Web design, or a Web page that lists the pages on a Web site, typically organized in hierarchical fashion.” A sitemap provides guidance for visitors to a website who want to know about the website structure and the services provided on that website. In some cases, the sitemap is also referred to as a site index. This is the case with the United States Patent & Trademark Office (USPTO) website. The USPTO site index link is displayed on the very bottom of the website. This is also a very common location for the sitemap or site index link; it is usually delegated to the bottom of a page.
Referring now to
Clearly, a sitemap is a good reference for a user who wants to know what a website can offer. When one considers that sitemaps are so commonly found in websites and also considering how much information they can provide, they are relatively unappealing and even meaningless to users.
There is a need for a system and method that provides a more meaningful and richer user experience in navigating a sitemap.
SUMMARYBriefly, according to an embodiment of the present disclosure, a method for generating an interactive sitemap includes steps or acts of: receiving an identifier of a user visiting the website; storing identifiers of the website pages visited by the user; associating the website page identifiers with the user identifier; capturing a snapshot of each website page visited by the user; determining website pages recommended for the user, but not yet visited by the user; capturing a snapshot of at least one recommended website page; and generating the interactive sitemap that includes a sitemap tree structure of the website with selectable nodes representing the website pages visited by the user and the website pages recommended for the user. When the user rolls over one of the selectable nodes, presenting the snapshot within the in-page window.
According to another embodiment of the present disclosure, an information processing system for generating an interactive sitemap of a website includes, inter alia, the following components: a processor device; and a memory device operably coupled with the processor device. The memory device holds the computer-executable instructions for performing the method steps above.
In yet another embodiment of the present disclosure, a computer program product includes a non-transitory computer-readable storage medium with computer-executable instructions stored therein. The computer-executable instructions, when executed, cause a computer device to perform the method steps above.
To describe the foregoing and other exemplary purposes, aspects, and advantages, we use the following detailed description of an exemplary embodiment of the disclosed subject matter with reference to the drawings, in which:
While the disclosed subject matter as claimed can be modified into alternative forms, specific embodiments thereof are shown by way of example in the drawings and will herein be described in detail. It should be understood, however, that the drawings and detailed description thereto are not intended to limit the disclosed subject matter to the particular form disclosed, but on the contrary, the intention is to cover all modifications, equivalents and alternatives falling within the scope of the disclosed subject matter.
DETAILED DESCRIPTIONBefore describing in detail embodiments that are in accordance with the disclosed subject matter, it should be observed that the embodiments reside primarily in combinations of method steps and system components related to systems and methods for placing computation inside a communication network. Accordingly, the system components and method steps have been represented where appropriate by conventional symbols in the drawings, showing only those specific details that are pertinent to understanding the embodiments of the disclosed subject matter so as not to obscure the disclosure with details that will be readily apparent to those of ordinary skill in the art having the benefit of the description herein. Thus, it will be appreciated that for simplicity and clarity of illustration, common and well-understood elements that are useful or necessary in a commercially feasible embodiment may not be depicted in order to facilitate a less obstructed view of these various embodiments.
We discuss an interactive sitemap allowing a user to identify and easily traverse and re-visit previously viewed web pages, whether the web pages were visited in a current session or in previous sessions, thus allowing the user to navigate to different properties of a website in a more elegant user experience. The present disclosure will now be described with respect to
Referring now to
In step 210 the system for constructing an interactive sitemap takes snapshot previews for each webpage visited by the user, and for any default and/or recommended pages. The snapshots are taken periodically, at time of visit, at time of web page refresh, or at pre-determined intervals. The snapshot function of the interactive sitemap generation is a cache functionality, especially beneficial for the default nodes (web pages) and recommended nodes (web pages). By taking the periodic snapshots, the screenshots are already generated and ready to display when the user mouses over one of these nodes.
We define two categories of web pages: Editorial Pages and User Generated Content (UGC) Pages. If the node represents an Editorial Page, a cache system runs in the background. Referring now to
Referring now to
In step 220 the identifying information for the web page such as the URLs (uniform resource locators) are stored and associated with the user. The association is accomplished as follows: for login users, the page URLs are saved to a database; for non-login users, the page URLs are saved to browser cookies which are already associated with the user; or in the alternative, the URLs are stored in a data store in a table or index that associates a URL with a user. In this manner any user, even one who has not registered, can interact with the sitemap.
In one embodiment of the present disclosure, in step 230 we construct a sitemap tree personalized for the user according to the main functions and/or properties of the website, with selectable nodes of the sitemap tree representing the different viewable web pages from the website. For a user's first visit to the website, we provide default selectable nodes (pages) on the sitemap tree for the user to select. Using a Yahoo! News page as an example (http://news.yahoo.com/) the default nodes represent the landing pages of the categories on the top menu bar—‘World’, ‘Politics’, ‘Tech’ . . . and so on. The user can traverse between each category in the interactive sitemap.
Assume the user has visited several pages, with his/her focus on viewing articles in the ‘Health’ category. The interactive sitemap will recognize the user's interests, which in this case is ‘Health,’ and easily present the Health nodes on the tree as a way to return to or initiate a visit to the pages of interest. Once the system has “learned” that the user has a preference for the pages in the ‘Health’ category (branch), that branch will be populated with selectable recommended nodes that the user can preview (with a snapshot).
The algorithm to build the sitemap tree will likely generate new nodes in a downward direction such that the new nodes will appear on the tips of each “branch” of the tree and on the bottom of the tree. Older nodes will be dropped (eliminated) to keep the sitemap tree clutter-free. Limiting the number of nodes saves the sitemap space for more currently relevant nodes while providing an up-to-date personalized experience.
In step 240 the sitemap tree is populated with branches representing the different page links associated with the nodes. For a first time visit, there is no history available for the user. In this scenario, we generate the branches, using one or two recommended links. The recommended links that are selected by the system depend on the type of website and which pages are going to be promoted. The types of website can be roughly divided into two types: content sites and e-commerce sites. For a content site such as Yahoo! News, for example, the recommended links will likely be pages from “Top Stories” and/or “Breaking News.” For an e-commerce website, the recommended links will likely be the web pages for Current Bestsellers and/or Editor's Picks.
For any subsequent visit to the interactive sitemap, it is likely that some system-generated branches will be replaced by the page links selected by the user. In order to distinguish the nodes from the “recommended” links versus the nodes from the user-selected page links, we display the recommended nodes differently. They can be displayed in a different color or font, de-emphasized (greyed out), highlighted, underlined, or with any other distinguishing feature, as compared to a visited node. Lastly, in step 250 we store the sitemap tree with all appended nodes so that it is available for the user's next visit to that website, and the user's selection of the interactive sitemap by selecting the UI button (as shown in
Referring now to
In response to the user's selection indicating a preference for the interactive sitemap, the interactive sitemap system presents an in-page, or “pop-up” window showing the sitemap tree with nodes representing the pages visited by this user in step 320. The in-page window is generated with known technology that is beyond the scope of this disclosure. As previously stated, the sitemap tree is also shown with default nodes. In decision step 330, if the user mouses over (or rolls over) one of the nodes representing a page URL, this indicates to the system that the user wishes to glance at that page. Accordingly, the system displays a snapshot preview of the page associated with the moused-over node in step 340, in response to the mouse-over.
If the user has clicked on a node in decision step 350, the system re-directs the user to the URL of the page associated with the clicked node in step 360. It should be noted that the selection of mousing-over and clicking are independent of each other, meaning that the user can mouse over and then click, or simply mouse-over, or simply click without first mousing-over. Once re-directed to the webpage, that webpage is set to the current node in the sitemap tree in step 370. The sitemap tree will show the node associated with the current page in a distinct manner such that the user can easily identify the current node.
Referring now to
If the user hasn't yet visited any page of a certain property, the sitemap tree can be constructed with default/recommended nodes 455 such that the tree does not appear empty when the user first visits. The default/recommended nodes 455 will appear in a distinctive manner on the sitemap tree 400 such that the user can easily note the difference between visited nodes 450 and default/recommended nodes 455.
Referring now to
Referring now to
Social Network Feature.
Referring now to
Recommended Pages Feature.
Referring now to the illustration of
Monetization Feature.
Referring now to
Referring now to
Next we see the Footprint Service 806 which records the UUID, the URL of the webpage visited, and the timestamp. A UUID is a “universally unique identifier” that identifies the visitor to the website and the visitor's travels within the website. This information is stored in either a data store or in the user's browser cookies. Then the Screenshot Service 808 takes a screenshot or snapshot 530 of the pages the user visits. The information acquired by the Footprint Service 806 is saved as a user footprint in the Database 810. What has just been described with respect to
Now moving to the bottom portion of the diagram 800, we begin with the Sitemap Service 812 which is activated when the user selects the service by clicking on the UI button 475, or by some other manner.
Referring now to
Those skilled in the art will appreciate that the functionality implemented within the blocks illustrated in the diagram may be implemented as separate components or the functionality of several or all of the blocks may be implemented within a single component. For example, the functionality for the Screenshot Service 808 may be included in the same component as the Footprint Service 806. Or the functionality of the Sitemap Generator 818 may be implemented as a separate component from the Sitemap Service 812. Processing is preferably performed using Java-based technologies, although other similar technologies now known or subsequently developed may be used for the processing.
Referring now in specific detail to the drawings, and particularly
In general, the routines which are executed when implementing these embodiments, whether implemented as part of an operating system or a specific application, component, program, object, module or sequence of instructions, will be referred to herein as computer programs, or simply programs. The computer programs typically comprise one or more instructions that are resident at various times in various memory and storage devices in an information processing or handling system such as a computer, and that, when read and executed by one or more processors, cause that system to perform the steps necessary to execute steps or elements embodying the various aspects of the disclosed subject matter.
Throughout the description herein, an embodiment of the disclosed subject matter is illustrated with aspects of the disclosed subject matter embodied solely on computer system 818. As will be appreciated by those of ordinary skill in the art, aspects of the disclosed subject matter may be distributed amongst one or more networked computing devices which interact with computer system 818 via one or more data networks. However, for ease of understanding, aspects of the disclosed subject matter have been embodied in a single computing device—computer system 818.
Computer system 818 includes processing device 1102 which communicates with an input/output subsystem 1106, memory 1104, and storage 1110. The processor device 1102 is operably coupled with a communication infrastructure 1109 (e.g., a communications bus, cross-over bar, or network). The processor device 1102 may be a general or special purpose microprocessor operating under control of computer program instructions executed from memory 1104 on program data. The processor 1102 may include a number of special purpose sub-processors such as a comparator engine, each sub-processor for executing particular portions of the computer program instructions. Each sub-processor may be a separate circuit able to operate substantially in parallel with the other sub-processors.
Some or all of the sub-processors may be implemented as computer program processes (software) tangibly stored in a memory that perform their respective functions when executed. These may share an instruction processor, such as a general purpose integrated circuit microprocessor, or each sub-processor may have its own processor for executing instructions. Alternatively, some or all of the sub-processors may be implemented in an ASIC. RAM may be embodied in one or more memory chips.
The memory 1104 may be partitioned or otherwise mapped to reflect the boundaries of the various memory subcomponents. Memory 1104 may include both volatile and persistent memory for the storage of: operational instructions for execution by CPU 1102, data registers, application storage and the like. Memory 1104 preferably includes a combination of random access memory (RAM), read only memory (ROM) and persistent memory such as that provided by a hard disk drive. The computer instructions/applications that are stored in memory 1104 are executed by processor 1102. The computer instructions/applications and program data can also be stored in a hard disk drive for execution by processor device 1102.
The I/O subsystem 1106 may include various end user interfaces such as a display, a keyboards, and a mouse. The I/O subsystem 1106 may further include a connection to a network 1090 such as a local-area network (LAN) or wide-area network (WAN) such as the Internet.
The computer system 818 may also include a removable storage drive 1116, representing a floppy disk drive, a magnetic tape drive, an optical disk drive, etc. The removable storage drive 1116 reads from and/or writes to a removable storage unit 1120 in a manner well known to those having ordinary skill in the art. Removable storage unit 1120, represents a floppy disk, a compact disc, magnetic tape, optical disk, CD-ROM, DVD-ROM, etc. which is read by and written to by removable storage drive 1110. As will be appreciated, the removable storage unit 1120 includes a non-transitory computer readable medium having stored therein computer software and/or data.
The computer system 818 may also include a communications interface 1110. Communications interface 1110 allows software and data to be transferred between the computer system and external devices. Examples of communications interface 1110 may include a modem, a network interface (such as an Ethernet card), a communications port, a PCMCIA slot and card, etc. Software and data transferred via communications interface 1110 are in the form of signals which may be, for example, electronic, electromagnetic, optical, or other signals capable of being received by communications interface 1110.
In this document, the terms “computer program medium,” “computer usable medium,” and “computer readable medium” are used to generally refer to both transitory and non-transitory media such as main memory 1104, removable storage drive 1120, a hard disk installed in hard disk drive, and signals. These computer program products are means for providing software to the computer system 818. The computer readable medium 1120 allows the computer system 818 to read data, instructions, messages or message packets, and other computer readable information from the computer readable medium 1120.
Therefore, while there has been described what is presently considered to be the preferred embodiment, it will understood by those skilled in the art that other modifications can be made within the spirit of the disclosed subject matter. The above description(s) of embodiment(s) is not intended to be exhaustive or limiting in scope. The embodiment(s), as described, were chosen in order to explain the principles of the disclosed subject matter, show its practical application, and enable those with ordinary skill in the art to understand how to make and use the disclosed subject matter. It should be understood that the disclosed subject matter is not limited to the embodiment(s) described above, but rather should be interpreted within the full meaning and scope of the appended claims.
Claims
1. A method, comprising:
- generating an interactive sitemap comprising a sitemap tree structure of a website; and
- presenting the interactive sitemap, comprising: displaying, along a first axis, a first property of the website as a first branch of the sitemap tree structure and a second property of the website as a second branch of the sitemap tree structure; displaying, along a second axis and in association with the first branch, selectable nodes associated with the first property, wherein each selectable node displayed in association with the first branch represents at least one of a website page visited by a user or a website page recommended for the user; displaying, along the second axis and in association with the second branch, selectable nodes associated with the second property, wherein each selectable node displayed in association with the second branch represents at least one of a website page visited by the user or a website page recommended for the user; and responsive to determining that a period of time that a selectable node has persisted along the second axis exceeds a temporal threshold, eliminating the selectable node from the interactive sitemap.
2. The method of claim 1, wherein the first axis is different than the second axis.
3. The method of claim 1, wherein the first axis is perpendicular to the second axis.
4. The method of claim 1, comprising:
- representing a current website page with a current selectable node emphasized such that the current selectable node is distinct from other selectable nodes in the sitemap tree structure.
5. The method of claim 1, comprising:
- generating, on the website, an icon that, when selected, activates the interactive sitemap.
6. The method of claim 1, comprising:
- presenting an advertisement within the interactive sitemap.
7. The method of claim 1, comprising:
- receiving an indication that the user has selected a first selectable node in the sitemap tree structure; and
- re-directing the user to a first website page represented by the first selectable node.
8. The method of claim 1, comprising:
- when there is insufficient user history of website pages visited, populating the sitemap tree structure with one or more default selectable nodes.
9. The method of claim 1, comprising:
- presenting an icon indicating a social connection of the user that has viewed a first website page represented by a first selectable node in the sitemap tree structure.
10. The method of claim 1, wherein a first selectable node in the sitemap tree structure is presented in a smaller scale than a second selectable node in the sitemap tree structure based upon one or more traversals of the sitemap tree structure by the user.
11. The method of claim 1, comprising:
- determining a first website page visited by the user; and
- displaying a first selectable node representing the first website page in the sitemap tree structure.
12. The method of claim 1, comprising:
- determining a first website page recommended for the user, but not yet visited by the user; and
- displaying a first selectable node representing the first website page in the sitemap tree structure.
13. The method of claim 11, comprising:
- capturing a snapshot of the first website page.
14. The method of claim 13, wherein capturing the snapshot comprises:
- periodically capturing one or more portions of the first website page.
15. The method of claim 13, wherein capturing the snapshot comprises:
- capturing one or more portions of the first website page responsive to determining one or more changes to the first website page.
16. An information processing system, comprising:
- a processor device; and
- a memory operably coupled with the processor device, the memory storing computer-executable instructions that when executed by the processor device implement operations comprising: presenting an interactive sitemap comprising a sitemap tree structure of a website, comprising: displaying, along a first axis, a first property of the website as a first branch of the sitemap tree structure and a second property of the website as a second branch of the sitemap tree structure; displaying, along a second axis and in association with the first branch, selectable nodes associated with the first property, wherein each selectable node displayed in association with the first branch represents at least one of a website page visited by a user or a website page recommended for the user; displaying, along the second axis and in association with the second branch, selectable nodes associated with the second property, wherein each selectable node displayed in association with the second branch represents at least one of a website page visited by the user or a website page recommended for the user; and responsive to determining that a period of time that a selectable node has persisted along the second axis exceeds a temporal threshold, eliminating the selectable node from the interactive sitemap.
17. The information processing system of claim 16, wherein the operations comprise:
- receiving an indication that the user has selected a first selectable node in the sitemap tree structure; and
- re-directing the user to a first website page represented by the first selectable node.
18. The information processing system of claim 16, wherein the operations comprise:
- when there is insufficient user history of website pages visited, populating the sitemap tree structure with one or more default selectable nodes.
19. The information processing system of claim 16, wherein the operations comprise:
- presenting an icon indicating a social connection of the user that has viewed a first website page represented by a first selectable node in the sitemap tree structure.
20. A computer program product comprising a non-transitory computer-readable storage medium with computer-executable instructions stored thereon that when executed by a processor device implement operations comprising:
- receiving a user identifier of a user visiting a website;
- storing a website page identifier of a first website page of the website visited by the user;
- associating the website page identifier with the user identifier;
- capturing a snapshot of the first website page;
- determining a second website page of the website recommended for the user, but not yet visited by the user;
- capturing a snapshot of the second website page;
- generating an interactive sitemap comprising a sitemap tree structure of the website with a first selectable node representing the first website page and a second selectable node representing the second website page; and
- presenting the interactive sitemap, comprising: displaying, along a first axis, a first property of the website as a first branch of the sitemap tree structure and a second property of the website as a second branch of the sitemap tree structure; displaying, along a second axis and in association with the first branch, selectable nodes associated with the first property, wherein each selectable node displayed in association with the first branch represents at least one of a website page visited by a user or a website page recommended for the user; displaying, along the second axis and in association with the second branch, selectable nodes associated with the second property, wherein each selectable node displayed in association with the second branch represents at least one of a website page visited by the user or a website page recommended for the user; and responsive to determining that a period of time that a selectable node has persisted along the second axis exceeds a temporal threshold, eliminating the selectable node from the interactive sitemap.
Type: Application
Filed: Dec 22, 2016
Publication Date: Apr 6, 2017
Inventors: Hsuan-Hao Chan (Taipei), Yi-Chun Chuang (Taipei), Ting-Liang Chou (Taipei)
Application Number: 15/387,931