Aggregation and comparison of multi-label content
By generating a comparison display of multiple browser tag contents in the user interface, the heavy problem of managing and comparing multiple tag contents in online user navigation is solved, and the efficiency of user navigation is improved.
Patent Information
- Application Number
- CN201980025636.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2018-04-16
- Filing Date
- 2019-04-15
- Publication Date
- 2025-05-20
- Estimated Expiration
- 2039-04-15
AI Technical Summary
When navigating online users, managing and comparing content on multiple browser tags is tedious and time-consuming for users, especially when detailed comparisons are required.
A user interface is provided for user navigation by identifying the system and method of aggregated content on multiple tags in the browser and generating a comparative display of aspects of data in the user interface.
Simplifies the user's content comparison process between multiple tags, improves efficiency, and reduces the complexity of users' management tags.
Smart Images

Figure CN112005228B_ABST
Abstract
Description
[0001] Priority Claim
[0002] This application claims the benefit of priority of U.S. Application Serial No. 15 / 953,777, filed Apr. 16, 2018, the entire content of which is incorporated herein by reference. TECHNICAL FIELD
[0003] This application generally relates to user interface enhancements and, in one example, to facilitating user navigation in a display screen. More specifically, embodiments of the present invention relate to systems and methods for aggregating content identified on multiple tabs in a browser and generating a display of a comparison of aspects of the aggregated data in a user interface. BACKGROUND OF THE INVENTION
[0004] Online user navigation often involves opening new browser windows or tabs to access new content. When searching online for a particular item, a user may open multiple tabs on his or her browser to compare and contrast items that he or she can find online based on, for example, model number, brand, size, price, etc. The user may also open tabs for items offered from different websites. This process is manually driven, difficult, and can be very time-consuming. Often, the user may not keep track of which tab or window includes the item he or she is interested in.
[0005] Thus, managing and viewing content on multiple tabs can be burdensome for a user when attempting to compare aspects of the content included in each tab, especially when a detailed comparison of the content is required. BRIEF DESCRIPTION OF THE DRAWINGS
[0006] Some embodiments are illustrated by way of example and not limitation in the figures of the accompanying drawings, in which:
[0007] Figure 1A is a network diagram depicting a client-server system within which an example embodiment may be deployed;
[0008] Figure 1B is a block diagram showing an example publication marketplace application and a payment application according to an example embodiment;
[0009] Figure 1C shows a block diagram of an example system for aggregating and comparing multi-tab content according to an example embodiment;
[0010] Figure 2 shows a flowchart of an example method for publishing, indexing, and searching for products or services according to an example embodiment;
[0011] Figure 3 is a block diagram of an example apparatus for aggregating and comparing multi-label content according to an example embodiment;
[0012] Figure 4 is a diagram of a workflow for aggregating and comparing multi-label content according to an example embodiment;
[0013] Figure 5 is a flowchart of an example method for selecting labels, creating comparisons, and communicating comparisons for operations 416, 420, and 424 from Figure 4 ;
[0014] Figures 6A to 6C illustrates an example user interface for making a product or service query according to an example embodiment ( Figures 6A to 6B ) and an example of a user interface for displaying query results including a comparison browser interface ( Figure 6C );
[0015] Figure 7 illustrates an example user interface displaying a comparison browser interface according to an example embodiment;
[0016] Figure 8 is a block diagram of an example mobile device according to an example embodiment; and
[0017] Figure 9 is a block diagram of a machine within which instructions may be executed to cause the machine to perform any one or more of the methods discussed herein. DETAILED DESCRIPTION
[0018] In the following detailed description of example embodiments of the present invention, reference is made to specific examples by way of illustrations and diagrams. These embodiments are described in sufficient detail to enable those skilled in the art to practice the present invention and to illustrate how the present invention may be applied to various purposes or embodiments. There are other example embodiments of the present invention and these embodiments are within the scope of the present invention and logical, mechanical, electrical, and other changes may be made without departing from the scope or degree of the present invention. Although the features or limitations of the various embodiments of the invention described herein are necessary for the example embodiments incorporating these features or limitations, they do not limit the present invention as a whole, and any reference to the present invention, its elements, operations, and applications does not limit the present invention as a whole, but is only used to define these example embodiments. Accordingly, the following detailed description does not limit the scope of the present invention, which is defined only by the appended claims.
[0019] Generally, methods, apparatuses, and systems for user interface enhancement are disclosed, and in one example, the convenience of user navigation in a display screen is disclosed. Online shoppers typically open multiple browser interfaces of an Internet browser, such as browser tabs or browser windows (also referred to herein as tabs and windows, respectively), to view and compare different items. When the browser program knows the open browser interfaces, it can access the content of the open browser interfaces and can obtain the item descriptions on each page (e.g., web page) to generate a comparison of the items for the user. The comparison can be displayed as, for example, a table having rows for each item and columns for each feature, or other identified features of the item can be displayed as an overlay on the web page of the currently selected item or browser interface. The table can be displayed via a dedicated browser interface, such as an overlay on the page of the currently selected item or browser interface. In one example embodiment, a free text summary of each compared item can be displayed in the browser interface as an overlay on the open browser interface.
[0020] In one example embodiment, a web page containing descriptions of similar items for comparison can be identified by a common URL domain; by metadata associated with the web page, item, browser interface, or any combination thereof; by analysis of the item description; or by any combination thereof.
[0021] Figure 1A is a network diagram depicting a client-server system 140 within which one example embodiment can be deployed. A networked system 102 in the form of an example web-based publishing system provides server-side functionality to one or more clients via a network 142 (e.g., the Internet or a wide area network (WAN)). Figure 1A illustrates a web client 106 (e.g., a browser, such as the Internet browser developed by the company in Redmond, Washington) and a programming client 144 executing on respective client machines 110 and 112, for example.
[0022] An application programming interface (API) server 114 and a web server 116 are coupled to one or more application servers 118 and provide a programming interface and a web interface, respectively, to the one or more application servers 118. The application servers 118 host one or more publishing market applications 120 and payment applications 122. The application servers 118 are further shown coupled to one or more database servers 124 for facilitating access to one or more databases 126.
[0023] The publishing marketplace application 120 provides multiple publishing functions and services to users accessing the networked system 102. The payment application 122 similarly provides multiple payment services and functions to users. The payment application 122 can enable a user to accumulate value in an account (e.g., accumulate in commercial currency such as dollars or proprietary currency such as "points"), and then be able to exchange the accumulated value for products (e.g., goods or services) available via the publishing marketplace application 120. Although the publishing marketplace application 120 and the payment application 122 are shown in Figure 1A as both forming part of the networked system 102, it will be understood that in alternative embodiments, the payment application 122 can form part of a separate and distinct payment service from the networked system 102.
[0024] In addition, although Figure 1A the illustrated client-server system 140 employs a client-server architecture, embodiments are of course not limited to such an architecture and can equally find application in, for example, distributed or peer-to-peer architecture systems. The various publishing marketplace applications 120 and payment applications 122 can also be implemented as stand-alone software programs that do not necessarily have networking capabilities.
[0025] The web client 106 accesses the various publishing marketplace applications 120 and payment applications 122 via a web interface supported by the web server 116. Similarly, the programming client 144 accesses the various services and functions provided by the publishing marketplace applications 120 and payment applications 122 via a programming interface provided by the API server 114. The programming client 144 can be, for example, a seller application (e.g., the Turbo Lister application developed by eBay Inc. of San Jose, California) for enabling a seller to author and manage listings on the networked system 102 in an offline manner and perform batch-mode communication between the programming client 144 and the networked system 102.
[0026] Figure 1A The third-party application 128 executing on the third-party server machine 136 is also shown as having programming access to the networked system 102 via the programming interface provided by the API server 114. For example, the third-party application 128 can support one or more features or functions on a third-party-hosted website using information obtained from the networked system 102. For example, the third-party website can provide one or more promotional, publishing, or payment functions supported by the relevant applications of the networked system 102.
[0027] Figure 1BFIG. 0 is a block diagram showing an example listing marketplace application 120 and a payment application 122 that are part of one or more application servers 118 in a networked system 102 in an example embodiment. The applications 120 and 122 may be hosted on dedicated or shared server machines (not shown) that are communicatively coupled to enable communication between the server machines. The applications 120 and 122 themselves are communicatively coupled (e.g., via a suitable interface) to each other and to various data sources so that information can be passed between the applications 120 and 122 or so that the applications 120 and 122 can share and access common data. The applications 120 and 122 may also access one or more databases 126 via a database server 124.
[0028] The networked system 102 may provide multiple listing and pricing mechanisms by which sellers can list items or services for sale (or list information about items or services for sale), buyers can express interest in such items or services or indicate a willingness to purchase such items or services, and a price can be set for a transaction regarding such items or services. To this end, the listing marketplace application 120 and the payment application 122 are shown as including one or more auction applications 151 and at least one listing application 148 that support auction format listing and pricing mechanisms (e.g., English, Dutch, Vickrey, Chinese, double, reverse auction). The various auction applications 151 may also provide multiple features that support such auction format listings, such as a reserve price feature and a proxy bidding feature, where a seller can specify a reserve price in combination with the listing via the reserve price feature, and a bidder can invoke an automatic proxy bid via the proxy bidding feature.
[0029] A plurality of fixed price applications 152 support fixed price listing formats (e.g., traditional classified ad type listings or catalog listings) and buyout-type listings. In particular, buyout-type listings may be provided in conjunction with auction format listings (e.g., including Buy-It-Now (BIN) technology developed by eBay Inc. of San Jose, California), and enable a buyer to purchase an item or service that is also offered for sale via an auction at a fixed price that is typically higher than the starting price of the auction.
[0030] The store application 154 enables a seller to group listings within a “virtual” store, which may be branded and otherwise personalized by and for the seller. Such a virtual store may also provide promotions, incentives, and features that are specific to and personalized for the associated seller.
[0031] The reputation application 156 enables users who conduct transactions using the networked system 102 to create, establish, and maintain reputations, which can be made available to and published to potential trading partners. Considering, for example, the case where the networked system 102 supports person-to-person trading, otherwise users may not have historical or other reference information that can be used to evaluate the credibility and creditworthiness of potential trading partners. The reputation application 156 enables users to build reputations within the networked system 102 over time (e.g., through feedback provided by other trading partners). Then, other potential trading partners can refer to such reputations for the purpose of evaluating credit and credibility.
[0032] The personalization application 158 enables users of the networked system 102 to personalize various aspects of their interactions with the networked system 102. For example, with a suitable personalization application 158, users can create personalized reference pages where information about transactions that the user is (or has been) a party to can be viewed. Additionally, the personalization application 158 can enable users to personalize other aspects of their interactions with the networked system 102 and other parties, as well as publications.
[0033] The networked system 102 can support multiple publications customized for specific geographical regions, for example. One version of the networked system 102 can be customized for the United Kingdom, while another version of the networked system 102 can be customized for the United States. Each of these versions can operate as a standalone publication or can be a customized (or internationalized) representation of a common base publication. The networked system 102 can accordingly include multiple internationalization applications 160 that customize information (or customize the presentation of information by the networked system 102) according to predefined criteria (e.g., geographical, demographic, or publication criteria). For example, the internationalization applications 160 can be used to support the customization of information for multiple regional websites operated by the networked system 102 and accessible via the respective web servers 116.
[0034] Navigation of the networked system 102 is facilitated by one or more navigation applications 162. For example, a search application (as an example of a navigation application 162) enables keyword searches of publications published via the networked system 102. A browsing application enables users to browse through various categories, directories, or inventory data structures according to which publications can be classified within the networked system 102. Various other navigation applications can be provided to complement the search application and the browsing application.
[0035] To make a listing available via the networked system 102 in a visually useful and appealing manner, applications 120 and 122 include one or more imaging applications 164 that users utilize to upload images to include in the listing. The imaging applications 164 also operate to incorporate the images into the listing being viewed. The imaging applications 164 may also support one or more promotional features, such as an image gallery presented to potential purchasers. For example, a seller may pay an additional fee to include an image in an image gallery for a promotional item.
[0036] A listing creation application 166 enables sellers to conveniently author listings for goods or services they wish to transact via the networked system 102, and a listing management application 168 enables sellers to manage such listings. In particular, the management of such listings may pose challenges in cases where a particular seller has authored or posted a large number of listings. The listing management application 168 provides multiple features (such as an inventory level monitor for automatic relisting) to assist the seller in managing such listings. One or more post-listing management applications 170 also assist the seller with a number of activities that typically occur after a listing. For example, when an auction facilitated by one or more auction applications 151 is completed, the seller may wish to leave feedback about a particular purchaser. To this end, the post-listing management application 170 may provide an interface to one or more reputation applications 156 to enable the seller to conveniently provide feedback about multiple purchasers to the reputation applications 156.
[0037] A dispute resolution application 172 provides a mechanism that can be used to resolve disputes that arise between trading parties. For example, the dispute resolution application 172 may provide a guided process by which the parties are guided through a number of steps in an attempt to resolve the dispute. In cases where the dispute cannot be resolved via the guided process, the dispute may be escalated to a third-party mediator or arbitrator.
[0038] Multiple anti-fraud applications 174 implement fraud detection and prevention mechanisms to reduce the occurrence of fraud within the networked system 102.
[0039] The messaging application 176 is responsible for generating messages and delivering them to users of the networked system 102 (e.g., notifying users about the status of a release at the networked system 102 (such as providing a "bid exceeded" notification to bidders during an auction process or providing promotional and marketing information to users)). Each messaging application 176 can utilize any one of a plurality of message delivery networks and platforms to deliver messages to users. For example, the messaging application 176 can deliver email (e-mail), instant messages (IM), short message service (SMS), text, fax, or voice (such as voice over IP (VoIP)) messages via wired (e.g., the Internet), plain old telephone service (POTS), or wireless (e.g., mobile, cellular, WiFi, WiMAX) network 142.
[0040] The marketing application 178 supports various marketing functions available to sellers to enable sellers to increase sales via the networked system 102. The marketing application 178 also operates various marketing features that can be invoked by sellers and can monitor and track the success of the marketing strategies employed by sellers.
[0041] The networked system 102 itself or one or more parties transacting via the networked system 102 can operate a loyalty program supported by one or more loyalty / promotion applications 180. For example, a purchaser can earn loyalty or promotion points for each transaction established and / or consummated with a particular seller and can be offered rewards that can be redeemed for the accumulated loyalty points.
[0042] Figure 1C A block diagram of an example system 100 for aggregating and comparing multi-tag content according to an example embodiment is shown. In one example embodiment, the system 100 includes: one or more user devices 104-1, 104-2, and 104-N (hereinafter referred to as user devices 104), one or more seller processing systems 108-1, 108-2, and 108-N (hereinafter referred to as seller processing systems 108), an item identification processing system 130, a comparison processing system 150, and a network 115.
[0043] In one embodiment, Figure 1C each of the user devices 104 in Figure 1A can be a Figure 1C client machine 110 in Figure 1A and each of the seller processing systems 108 in Figure 1A can be a
[0044] Each user device (e.g., 104-1) may be a personal computer (PC), a mobile phone, a personal digital assistant (PDA), a refrigerator, a car, a camera, a network connection device, or any other suitable computer device.
[0045] Each user device (104-1, 104-2, 104-N) may include the following combination Figure 3 The user interface module 308 is described more fully by way of example. In an example embodiment, the user interface module 308 may include a web browser program. Although a detailed description is shown only for the user device 104-1, it should be noted that each of the other user devices (e.g., the user devices 104-2 to the user devices 104-N) may have corresponding elements with the same functionality.
[0046] Seller processing system 108, item identification processing system 130, and comparison processing system 150 may be servers, clients, or other processing devices including an operating system for executing software instructions. Seller processing system 108 provides items for sale to consumers and may facilitate various consumers to search for and purchase items.
[0047] The network 115 may be a local area network (LAN), a wireless network, a metropolitan area network (MAN), a wide area network (WAN), a wireless network, a network of interconnected networks, a public switched telephone network (PSTN), etc.
[0048] Each user device 104 may receive a query for project information from a user via an input device such as a keyboard, a mouse, an electronic pen, etc. A project may include a product, a service, or both. The corresponding information may be in the form of a project publication.
[0049] The item identification processing system 130 of the online publishing system can store and obtain information related to items available for sale. Each item posting may include a detailed description of the item, a picture of the item, the attributes of the item, etc. The items associated with the item posting may be goods or products (e.g., tablet computers) or services (e.g., a round of golf or appliance repair) that can be traded (e.g., exchanged, share relevant information thereof, purchased, sold, bid, etc.). Item postings may also include titles, categories (e.g., electronics, sporting goods, books, antiques, etc.) and attribute and tag information (e.g., color, size, etc.). As shown below in combination with Figure 4 and Figure 5 As described more fully by way of example, the comparison processing system 150 generates a comparison of the web-based content and the item description.
[0050] Returning to reference user device 104-1, a query received from a user of user device 104-1 can include one or more keywords. User device 104-1 can transmit the query to item identification processing system 130 via network 115. Item identification processing system 130 can attempt to match the query keywords with titles, categories, tag information, and / or any other fields in item listings using a search engine and can identify one or more item listings that satisfy the query. Item identification processing system 130 can obtain the item listings in the search results in a known manner and then classify them.
[0051] The search results list can include a list of available items having different degrees of relevance to the specific product or product type that the consumer is searching for. The consumer can select one or more items from the search results list that more closely correspond to the consumer's search intent, for example, to obtain additional information about the item, or the consumer can apply one or more filters and can resubmit the query.
[0052] Figure 2 A flowchart of an example method 200 for listing, indexing, and searching for products or services according to an example embodiment is shown. In one example embodiment, a seller can list an item for sale (operation 204). The seller can, for example, select a category for the item, submit a description of the item, submit a picture of the item, manually set the attributes of the item, etc. In one example embodiment, the seller simply requests to list the device for sale by, for example, clicking a "sell this" icon.
[0053] Create an item listing in, for example, an item listing database (operation 208). The listing can include, for example, the attributes of the item and the terms of the sales offer. During item listing operation 208, an identification number for the item listing can be assigned, and the listing can be authenticated and scanned to check compliance with one or more listing policies. Index the listed item in a known manner (operation 212) to facilitate future searching for the item.
[0054] A consumer initiates a search or query for one or more items (operation 216). For example, the consumer can initiate a search using the keyword "smartphone". Prepare a corresponding query (operation 220). For example, a spelling check can be performed on the query terms, and a search expression can be generated based on the provided search terms.
[0055] For example, perform a query on the items that have been indexed in the system (operation 224). For example, match the prepared query with the index updated during operation 212.
[0056] In response to the execution of a query, a list of search results is obtained (operation 228). The list of search results can be analyzed, and an automatic filtering mechanism can be enabled or disabled based on, for example, the obtained list of search results. For example, if the count of items in the list of search results exceeds a threshold, or if the automatic filtering mechanism has been enabled by the user, the automatic filtering mechanism can be enabled.
[0057] Prepare the list of search results for presentation (operation 232). For example, the list of search results can be filtered, classified, ranked, or formatted based on, for example, the analysis of the executed list of search results and based on the identified set of search filters.
[0058] Display the prepared list of search results (operation 236). In response to viewing the displayed list of search results, one or more item selections can be obtained from the user from one or more of the displayed item pages (operation 240).
[0059] The user device 104 can be used by a user such as a customer to perform searches for products, services, etc.; view search results; and request the generation and access of comparisons of item descriptions.
[0060] Figure 3 is a block diagram of an example apparatus 300 for aggregating and comparing multi-label content according to an example embodiment. In some embodiments, the apparatus 300 can include Figure 1C the item identification processing system 130 and / or the comparison processing system 150 in Figure 1A one or more application servers 118 in Figure 1C each user device (e.g., 104-1) in Figure 3 In some embodiments, the elements of the apparatus 300 shown in
[0061] Return reference Figure 3 Referring back, the apparatus 300 is shown as including a processing system 302, which can be implemented on a server, client, or other processing device including an operating system 304 for executing software instructions. According to an example embodiment, the processing system 302 can include: a user interface module 308, a search module 312, a page selection module 316, a text analysis module 320, a semantic topic module 324, a comparison generation module 328, and an item database 332. In one example embodiment, the apparatus 300 can implement the user device 104 or the comparison processing system 150.
[0062] The user interface module 308 provides the following interfaces, which are used for searching for products, services, etc.; for viewing search results; and for requesting the generation and access of a comparison of web-based content and item descriptions. The user can input keywords associated with a product or service or a description of a product or service via this interface, and can obtain and present one or more item descriptions via a browser interface. The item descriptions can be obtained from the search module 312.
[0063] The search module 312 obtains keywords associated with a product, a service, or both or a description of a product, a service, or both via the user interface module 308, and queries a product, a service, or both, such as the seller processing system 108 or the item identification processing system 130. The search results can be presented to the user via the user interface module 308 as, for example, a list of available items. The user can select one of the items from the list to trigger the generation of a browser interface, which features the web page and item description of the corresponding item.
[0064] The page selection module 316 selects the browser interfaces to be used in the generation of the comparison. The user can select the browser interfaces via the user interface module 308, the page selection module 316 can automatically select the browser interfaces, or both can be selected. The automatic selection of the browser interfaces can be performed by searching for similar items based on the information provided by the text analysis module 320, the semantic topic module 324, or both. The automatic search can be for the items listed in the search results list, items similar to the items listed in the search results list, items similar to the items described in one or more browser interfaces selected by the user, etc.
[0065] The text analysis module 320 analyzes the web pages to determine the items described on the web pages, various features of the items, etc. As described more fully below, machine learning and natural language processing can be used to determine one or more topics and semantic structures of the text content of the web pages (a topic can be defined by a set of words that capture the topic).
[0066] The semantic topic module 324 determines a unique set of semantic topics for the content of each browser interface. The semantic topic module 324 may also determine a unique set of semantic topics for one or more specific sentences of the content of each browser interface. The semantic topics may identify the type, model, brand, etc. of the items described on the web page or one or more features of the items. In one example embodiment, a topic model (also referred to as a statistical model or a probabilistic topic model) is used to determine the topic of a web page based on, for example, the frequency of occurrence of different words in a review. For example, the frequency of occurrence of the words "lens", "battery", "microphone", and "speaker" may vary depending on whether the content is describing a camera device or a smart phone including a camera device. Additionally, the relative frequencies of the cited words may indicate the features described in the web page. One or more semantic topics may be stored in the item database 332.
[0067] The comparison generation module 328 compiles a comparison of various features of the items described on the selected one or more browser interfaces based on, for example, the semantic topics identified by the semantic topic module 324. The comparison may be in the form of a table, free-form text, etc. The compiled comparison may be stored in the item database 332.
[0068] Figure 4 FIG. 400 is a diagram of a workflow 400 for aggregating and comparing multi-label content according to an example embodiment.
[0069] In one example embodiment, the device 300 receives a query (operation 408), such as a query for a product or service. The query may be submitted by a user via, for example, the user interface module 308. In one embodiment, the query is a query specified for one or more application servers 118 in the networked system 102. As described more fully above in connection with Figure 3 The query may be initiated by the search module 312. Search results are obtained from the seller processing system 108 or the item identification processing system 130 and are displayed via the user interface module 308 (operation 412). Figure 6A FIG. 600 illustrates an example user interface for making a product or service query according to an example embodiment. The query field 604 may be used to enter a query for a product or service. The query may be, for example, a text-based query for a smart phone product. One or more items may be identified via a table, where each row 608-1,..., 608-N in the table corresponds to an item and includes an item identifier (product ID), an identifier of the source of the item description (e.g., website), an item title (product), an item or product description, etc. In some embodiments, the user interface 600 is generated by the user interface module 308, the user device 104, or a combination thereof. As Figure 6AAs shown, the search results can include, for example, a single row of a table for each identified item, where each row identifies the name of the product (including brand and model) and, for example, a hyperlink to a web page describing the item. The user can select one or more of the hyperlinks to instantiate a browser interface for displaying the web page of the selected item. In some cases, the user can select and open one or more hyperlinks in a separate tab on the browser interface 600 or in a separate window (not shown) of the browser interface. Figure 6B An example user interface 601 including a plurality of tabs 609-1, ……, 609-M (M>1) is shown. Each of the tabs 609-1, ……, 609-M displays a web page of a different selected item. For example, a user searching for a washing machine may open a different tab for each washing machine he is considering. The user can thus use multiple tabs to perform comparison shopping. Instead of selecting and opening hyperlinks on separate tabs, the user may also have submitted another query on a separate tab (e.g., 609-2) regarding the same item (e.g., a washing machine) and opened one or more hyperlinks on that separate tab (e.g., 609-2) or a different tab (e.g., 609-3).
[0070] In some embodiments, in addition to the user having submitted a query to the device 300 (e.g., a first marketplace website) specified for one or more application servers 118 in the networked system 102, the user may have submitted his query to a separate server via a separate marketplace website. In this example, one of the tabs (e.g., 609-4) can display the separate marketplace website. Thus, Figure 6B the tabs 609-1, ……, 609-M in can include queries sent to different marketplace websites. The user may thus have submitted queries for an item (e.g., a washing machine) on different marketplace websites opened in different tabs of the browser interface 601. In this example, the browser interface includes a plurality of tabs 609-1, ……, 609-M of the browser interface 601 that display washing machines sold by various different merchants and hosted by different systems 102. In this example, at least one of the plurality of tabs of the browser interface 601 (e.g., 609-1) is a website associated with one or more application servers 118 in the networked system 102.
[0071] Returning to Figure 3 , the device 300 selects in Figure 6BThe label (or window) (operation 416) displayed on the user interface 601 in order to generate a comparison of products for the user (operation 420). In one embodiment, the device 300 automatically generates a comparison in response to detecting that the user's browser interface 601 includes two or more labels (or windows) displaying items of the same type (e.g., different models of washing machines). In one embodiment, to select labels for generating a comparison, the device 300 determines the type of items associated with the labels 609-1, ……, 609-M. The device 300 can use, for example, the uniform resource locator (URL) address of the web page displayed in the label, the text description of the web page displayed in the label, one or more images included in the web page displayed in the label, etc. to determine the type of item. In one embodiment, the device 300 can use keywords included in the web page to determine the type of item. For example, the keyword can be a hashtagged keyword (e.g., hashtag) or a tagged keyword (e.g., tag) included in the web page.
[0072] The device 300 can also determine multiple different types of items. For example, the user may be searching for washing machines and mobile phones. Thus, some labels may display different models of washing machines, while other labels may display different models of mobile phones. In this embodiment, the device 300 can select two sets of labels: the first set of labels is associated with washing machines, while the second set of labels is associated with mobile phones. In another embodiment, the user can actively select one or more in the browser interface for the generation of a comparison (operation 416).
[0073] In another embodiment, in addition to detecting that the user's browser interface 601 includes two or more labels (or windows) displaying items of the same type, the device 300 can also evaluate the user's online footprint using data from the website. For example, the device 300 can determine that the user's online footprint indicates that the user has navigated to various websites associated with a particular type of item (e.g., washing machines). The data from the website can include session data or information, cookies, or online navigation data stored in the local memory of the user's device, etc.
[0074] Then, device 300 creates a comparison of item descriptions corresponding to the selected tags (operation 420). The created comparison may include a chart or table showing the characteristics of each item of the same type. The characteristics of each item in the comparison may be characteristics that are important to a user comparing and contrasting items of the same type for sale. For example, the characteristics of each item in the comparison may include model number, brand, size, price, etc. In one embodiment, when device 300 selects more than one set of tags in operation 416, device 300 creates a comparison for each set of the selected tag sets. For example, device 300 generates a comparison of the first set of tags associated with a washing machine and a separate comparison of the second set of tags associated with a mobile phone.
[0075] In one embodiment, device 300 may determine that a website includes multiple items of the same type within the same web page (e.g., a search results list page). In this embodiment, device 300 may select two or more items of the same type within the same web page and generate a comparison of the selected items.
[0076] Then, device 300 causes the comparison to be communicated to user device 104 and displayed on user device 104 (operation 424). The comparison may be displayed on a comparison browser interface ( Figure 7 ), or may be displayed as an overlay on an existing browser tab or window ( Figure 6C ). In one embodiment, the comparison displayed on user's device 104 may be saved by the user on user's device 104, sent from user's device 104 to another electronic device via electronic communication (e.g., email, direct message or chat service, SMS, etc.), or shared from user's device 104 with another electronic device using a social media platform.
[0077] Figure 7 An example user interface 700 for viewing a comparison browser interface according to an example embodiment is shown. The comparison browser interface 700 may display the comparison created in operation 420. As Figure 7 shown, the comparison browser interface 700 displays a table having rows 704-1, ……, 704-N corresponding to each item from the selected tags. Each row 704 may include an item identifier or image, an item name, and information about one or more characteristics of the corresponding item. In Figure 7 , from Figure 6BThe item of the selected tag in [description] is a mobile phone, and the features may include: battery duration (e.g., keyword 1: minutes / hours of talk time), amount of memory (e.g., keyword 2: gigabytes), number of pixels in the camera device of the mobile phone (e.g., keyword 3: megapixels), and weight of the mobile phone (e.g., keyword N: ounces). Although not shown, other key features may include model number, brand, size, dimensions, price, identification of the seller or seller's website, whether the item is new or used, etc. In one example embodiment, the comparison browser interface 700 is generated by the user interface module 308, the user device 104, or a combination thereof. Figure 7 The comparison browser interface 700 in [description] can be displayed as a separate window or on a separate tab. When more than one comparison is created in operation 420, the device 300 causes each of the created comparisons to be displayed in a separate comparison browser interface 700.
[0078] As Figure 6C shown, the example user interface 602 shows that the comparison browser interface 700 can be displayed as an overlay on the user interface 601. In one embodiment, the user interface 601 on which the comparison browser interface 700 is overlaid is a web page associated with one or more application servers 118 in the networked system 102. For example, in Figure 6C [description], the tab 609-1 of the browser interface 601 is a website associated with one or more application servers 118 in the networked system 102. The tab 609-1 can display a web page of the selected item or a web page listing the results of a query, which includes multiple items associated with the query. In this example, the tab 609-1 also displays the comparison browser interface 700 as an overlay ( Figure 6C ). When more than one comparison is created in operation 420, the device 300 causes each of the created comparisons to be displayed in a separate comparison browser interface 700. For example, a comparison of washing machines can be displayed in a comparison browser interface 700 overlaid on the tab 609-1 associated with washing machines, while a comparison of mobile phones can be displayed in a comparison browser interface 700 overlaid on the tab 609-3 associated with mobile phones. In these embodiments, the user can refer to the comparison browser interface 700 to effectively grasp the items he is considering for each type of item he is shopping for.
[0079] Figure 5 is for [description] according to an example embodiment from Figure 4Flowchart of an example method 500 for selecting tags, creating comparisons, and communicating comparisons for operations 416, 420, and 424. In one example embodiment, one or more of the operations of method 500 may be performed by user interface module 308, search module 312, page selection module 316, text analysis module 320, semantic topic module 324, and comparison generation module 328, or any combination thereof.
[0080] In one embodiment, the device selects one or more tags or obtains a selection of one or more tags (operation 504). As discussed in operation 416, the selection may be obtained from the user via user interface module 308, or may be automatically generated by page selection module 316. The selection may identify all open tags and windows, all open tags and windows containing item descriptions, all open tags and windows containing item descriptions associated with the selected item, or all open tags and windows containing item descriptions associated with the selected item or items similar to the selected item.
[0081] Further reference Figure 4 to operation 420 in, the device 300 extracts the item description associated with each selected browser interface from the web pages displayed on the corresponding tags (operation 508). The item description may be identified by a title in the content of the browser interface, text in the content of the browser interface, metadata associated with the browser interface, etc. In one example embodiment, the entire content of the selected browser interface may be considered the item description.
[0082] Further reference Figure 4 to operation 420 in, the device 300 identifies the key features of each extracted item description and classifies the identified key features by feature type (operation 512). In one example embodiment, as described more fully above, semantic topic module 324 uses, for example, a statistical model or a probabilistic topic model to identify the semantic topics of item descriptions that can be considered features of the item. In one example embodiment, each type of item (e.g., laptop computer, smart watch, etc.) has a corresponding list of key features stored in, for example, item database 332. The list of key features may be used to search for relevant features in the extracted item descriptions, the corresponding list of key features, or both. For example, the list of features of a smart phone may include screen size, storage capacity, operating system, battery life, etc. Then, each type of feature may be searched for in the item descriptions and the identified semantic topics.
[0083] In an example embodiment, the key features are extracted from metadata associated with the browser interface of the item, item description, etc. Metadata associated with a web page can include key features such as price, shipping cost, category, color, weight, material, etc. For example, the metadata associated with a web page can be the text string:
[0084] Price: "98.99", Shipping: "Free", Category: "Flatware and Silverware", Color: "Gold", Weight: "4.35", Material: "Stainless Steel"
[0085] In another embodiment, extracting the key features can further include image extraction from the browser interface and analyzing the extracted images to determine the key features of the item.
[0086] With further reference to Figure 4 operation 420 in, then, device 300 generates a table populated with descriptions corresponding to each key feature. Each row of the table corresponds to a type of feature, and each column corresponds to a feature detail from one of the extracted item descriptions (operation 516). With further reference to Figure 4 operation 424 in, the table is communicated to user device 104 for display (operation 520).
[0087] Although some examples are shown and described herein, there are other variations and these variations are within the scope of the present invention. Those skilled in the art will understand that any arrangement designed or configured to achieve the same purpose can replace the specific embodiments shown. This application is intended to cover any modifications or variations of the example embodiments of the invention described herein. It is intended that the invention be limited only by the full scope of the claims and their equivalents.
[0088] Figure 8is a block diagram showing an example mobile device 800 according to an example embodiment. The mobile device 800 may include a processor 802. The processor 802 may be any of a variety of different types of commercially available processors suitable for a mobile device (e.g., an XScale architecture microprocessor, a microprocessor without interlocked pipeline stages (MIPS) architecture processor, or other type of processor 802). A memory 804, such as random access memory (RAM), flash memory, or other type of memory, is generally accessible by the processor 802. The memory 804 may be adapted to store an operating system (OS) 806 as well as application programs 808, such as a mobile location application enabling location-based services (LBS) to be provided to a user. The processor 802 may be directly coupled to or coupled via suitable intermediate hardware to a display 810 and one or more input / output (I / O) devices 812, such as a keyboard, touch panel sensor, microphone, etc. Similarly, in some embodiments, the processor 802 may be coupled to a transceiver 814 that interfaces with an antenna 816. The transceiver 814 may be configured to transmit and receive cellular network signals, wireless data signals, or other types of signals via the antenna 816, depending on the nature of the mobile device 800. Additionally, in some configurations, a GPS receiver 818 may also utilize the antenna 816 to receive GPS signals.
[0089] In certain embodiments described herein, a logic or multiple components, modules, or mechanisms are included. A module may constitute a software module (e.g., code embodied in (1) a non-transitory machine-readable medium or (2) a transmission signal) or a hardware-implemented module. A hardware-implemented module is a tangible unit capable of performing certain operations, and a hardware-implemented module may be configured or arranged in a certain manner. In an example embodiment, one or more computer systems (e.g., a stand-alone, client, or server computer system) or one or more processors may be configured by software (e.g., an application or an application portion) to operate to perform a hardware-implemented module as described herein.
[0090] In various embodiments, a hardware-implemented module may be implemented mechanically or electronically. For example, a hardware-implemented module may include dedicated circuitry or logic that is permanently configured (e.g., configured as a dedicated processor, such as a field programmable gate array (FPGA) or an application specific integrated circuit (ASIC)) to perform particular operations. A hardware-implemented module may also include programmable logic or circuitry (e.g., included within a general purpose processor or other programmable processor) that is temporarily configured by software to perform particular operations. It will be appreciated that the decision to implement a hardware-implemented module mechanically in dedicated and permanently configured circuitry or in temporarily configured circuitry (e.g., configured by software) may be driven by cost and time considerations.
[0091] Accordingly, the term "hardware-implemented module" should be understood to include a tangible entity that is physically constructed, permanently configured (e.g., hardwired), or temporarily or transiently configured (e.g., programmed) to operate in a particular manner and / or perform particular operations described herein. Considering embodiments in which a hardware-implemented module is temporarily configured (e.g., programmed), each of the hardware-implemented modules need not be configured or instantiated at any given moment. For example, in the case where a hardware-implemented module includes a general-purpose processor that is configured using software, the general-purpose processor can be configured as various different hardware-implemented modules at different times. Software can thus configure the processor to, for example, constitute a particular hardware-implemented module at one moment and a different hardware-implemented module at a different moment.
[0092] Hardware-implemented modules can provide information to, and receive information from, other hardware-implemented modules. Accordingly, the described hardware-implemented modules can be considered to be communicatively coupled. In cases where there are multiple such hardware-implemented modules present simultaneously, communication can be achieved via signal transmission (e.g., via suitable circuits and buses for connecting the hardware-implemented modules). In embodiments in which multiple hardware-implemented modules are configured or instantiated at different times, communication between such hardware-implemented modules can be achieved, for example, by storing information in a memory structure accessible by the multiple hardware-implemented modules and retrieving the information from the memory structure. For example, one hardware-implemented module can perform an operation and store the output of the operation in a memory device communicatively coupled to the hardware-implemented module. Then, another hardware-implemented module can access the memory device at a subsequent time to retrieve and process the stored output. Hardware-implemented modules can also initiate communication with input or output devices and can operate on resources (e.g., collections of information).
[0093] The various operations of the example methods described herein can be performed, at least in part, by one or more processors that are temporarily configured (e.g., by software) or permanently configured to perform the relevant operations. Whether temporarily or permanently configured, such processors can constitute processor-implemented modules that operate to perform one or more operations or functions. The modules referred to herein can include processor-implemented modules in some example embodiments.
[0094] Similarly, the methods described herein can be at least partially processor-implemented. For example, at least some of the operations of the methods can be performed by one or more processors or processor-implemented modules. The performance of certain operations can be distributed among one or more processors, which are not only resident within a single machine but also deployed across multiple machines. In some example embodiments, one or more processors can be located in a single location (e.g., within a home environment, an office environment, or a server farm), while in other embodiments, the processors can be distributed across multiple locations.
[0095] One or more processors can also operate to support the performance of operations in a "cloud computing" environment or as related operations of "software as a service" (SaaS). For example, at least some of the operations can be performed by a group of computers (as an example of machines including processors), which are accessible via a network (e.g., the Internet) and via one or more suitable interfaces (e.g., application programming interfaces (APIs)).
[0096] Example embodiments can be implemented in digital electronic circuitry or in computer hardware, firmware, software, or in combinations thereof. Example embodiments can be implemented using a computer program product, which is, for example, a computer program tangibly embodied in an information carrier, such as a computer program in a machine-readable medium, for use by or to control the operation of a data processing apparatus (e.g., a programmable processor, a computer, or multiple computers).
[0097] The computer program can be written in any form of programming language, including compiled or interpreted languages, and the computer program can be deployed in any form, including as a stand-alone program or as a module, subroutine, or other unit suitable for use in a computer environment. The computer program can be deployed to execute on one computer or on multiple computers, which are located at one site or distributed across multiple sites and interconnected by a communication network.
[0098] In example embodiments, the operations can be performed by one or more programmable processors that execute a computer program to perform functions by operating on input data and generating output. The method operations can also be performed by dedicated logic circuitry (e.g., FPGA or ASIC), and the apparatus of the example embodiments can be implemented as dedicated logic circuitry.
[0099] A computing system may include a client and a server. The client and the server are generally far apart from each other and typically interact via a communication network. The relationship between the client and the server is created by computer programs running on respective computers and having a client-server relationship with each other. In an embodiment of deploying a programmable computing system, it will be understood that both the hardware architecture and the software architecture need to be considered. Specifically, it will be understood that the following choices may be design choices: the choice of implementing a particular function with permanently configured hardware (e.g., ASIC), or with temporarily configured hardware (e.g., a combination of software and a programmable processor), or with a combination of permanently configured hardware and temporarily configured hardware. The following lists the hardware architectures (e.g., machines) and software architectures that may be deployed in various example embodiments.
[0100] Figure 9 is a block diagram of an example form of a machine, within which instructions can be executed to cause the machine to perform any one or more of the methods discussed herein. In one example embodiment, the machine can be Figure 3 an example apparatus 300 for generating comparisons of network-based content and item descriptions. In an alternative embodiment, the machine operates as a stand-alone device or can be connected (e.g., networked) to other machines. In a networked deployment, the machine can operate as a server or a client machine in a server-client network environment, or the machine can operate as a peer machine in a peer-to-peer (or distributed) network environment. The machine can be a personal computer (PC), a tablet computer, a set-top box (STB), a personal digital assistant (PDA), a cellular phone, a web application, a network router, a switch, or a bridge, or any machine capable of executing instructions (sequentially or otherwise) that specify actions to be taken by that machine. Moreover, although only a single machine is shown, the term "machine" should also be taken to include any combination of machines that individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the methods discussed herein.
[0101] The example computer system 900 includes: a processor 902 (e.g., a central processing unit (CPU), a graphics processing unit (GPU), or both) that communicate with each other via a bus 908, a main memory 904, and a static memory 906. The computer system 900 may also include a video display unit 910 (e.g., a liquid crystal display (LCD) or a cathode ray tube (CRT)). The computer system 900 also includes an alphanumeric input device 912 (e.g., a keyboard), a user interface (UI) navigation (or cursor control) device 914 (e.g., a mouse), a hard disk drive unit 916, a signal generation device 918 (e.g., a speaker), and a network interface device 920.
[0102] The drive unit 916 includes a machine-readable medium 922 on which one or more sets of data structures and instructions 924 (e.g., software) that implement any one or more of the methods or functions described herein or that are utilized by any one or more of the methods or functions described herein are stored. During execution by the computer system 900, the instructions 924 may also reside entirely or at least partially within the main memory 904 and / or within the processor 902, which also constitutes machine-readable medium 922. The instructions 924 may also reside within the static memory 906.
[0103] Although the machine-readable medium 922 is shown as a single medium in the example embodiment, the term "machine-readable medium" may include a single medium or multiple media (e.g., a centralized or distributed database, and / or associated caches and servers) that store one or more data structures or instructions 924. The term "machine-readable medium" should also be considered to include any tangible medium that is capable of storing, encoding, or carrying the instructions 924, or that is capable of storing, encoding, or carrying a data structure utilized by or associated with the instructions 924, where the instructions 924 are executed by a machine and cause the machine to perform any one or more of the methods of the present invention. Thus, the term "machine-readable medium" should be considered to include, but is not limited to, solid-state memories as well as optical and magnetic media. Specific examples of the machine-readable medium 922 include non-volatile memories, which by way of example include: semiconductor memory devices such as erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), and flash memory devices; magnetic disks such as internal hard disks and removable disks; magneto-optical disks; and CD-ROM and DVD-ROM disks.
[0104] The "machine-readable medium" can refer to a single storage device or apparatus, as well as a "cloud-based" storage system or storage network that includes multiple storage devices or apparatuses. Thus, the term "machine-readable medium" should be considered to include, but is not limited to, one or more data repositories in the form of solid-state memories, optical media, magnetic media, or any suitable combination thereof. In some embodiments, the "machine-readable medium" may also be referred to as a "machine-readable storage device".
[0105] In addition, the machine-readable medium 922 is non-transitory in that it does not embody a propagated signal or a transient signal. However, labeling the machine-readable medium 922 as "non-transitory" should not be construed to mean that the medium cannot be moved - the medium should be considered to be transportable from one physical location to another physical location. Further, since the machine-readable medium 922 is tangible, the medium can be considered a machine-readable storage device.
[0106] Instructions 924 may also be sent or received via a communication network 926 using a transmission medium. Instructions 924 may be sent using a network interface device 920 and any one of a number of well-known transmission protocols, such as the Hypertext Transfer Protocol (HTTP). Examples of communication network 926 include: Local Area Networks (LANs), Wide Area Networks (WANs), the Internet, mobile telephone networks, Plain Old Telephone Service (POTS) networks, and wireless data networks (e.g., WiFi and WiMAX networks). The term "transmission medium" shall be taken to include any non-transitory medium that is capable of storing, encoding, or carrying instructions 924 for execution by a machine, and includes digital or analog communication signals or other non-transitory media to facilitate the communication of such instructions 924.
[0107] Although the embodiments have been described with reference to specific example embodiments, it will be apparent that various modifications and changes can be made to these embodiments without departing from the broader scope of the invention. Accordingly, the specification and drawings are to be regarded in an illustrative rather than a restrictive sense. The accompanying drawings, which form a part hereof, illustrate specific embodiments in which the subject matter may be practiced in a manner that is illustrative and not restrictive. The illustrated embodiments are described in sufficient detail to enable those skilled in the art to practice the teachings disclosed herein. Other embodiments may be utilized and therefrom structural and logical substitutions and changes may be made without departing from the scope of the present disclosure. Accordingly, this detailed description is not to be construed in a limiting sense, and the scope of the various embodiments is defined only by the appended claims in conjunction with the full scope of equivalents to such claims.
[0108] Such embodiments of the subject matter of the present invention may be referred to herein, individually or collectively, by the term "invention" merely for convenience, and in fact disclose more than one invention or inventive concept, this is not intended to actively limit the scope of the present application to any single invention or inventive concept. Accordingly, although specific embodiments have been shown and described herein, it should be understood that any arrangement calculated to achieve the same purpose may be substituted for the specific embodiments shown. The present disclosure is intended to cover any and all modifications or variations of various embodiments. Combinations of the above embodiments, as well as other embodiments not specifically described herein, will be apparent to those skilled in the art when viewing the above description.
[0109] A summary of the present disclosure is provided to enable a reader to quickly ascertain the nature of the technical disclosure. It is understood that the summary will not be used to interpret or limit the scope or meaning of the claims. Additionally, in the foregoing detailed description, it can be seen that for the purpose of streamlining the present disclosure, various features are combined in a single embodiment. The methods of the present disclosure should not be construed as reflecting an intention that the claimed embodiments require more features than are expressly recited in each claim. Rather, as reflected by the following claims, the inventive subject matter lies in less than all of the features of a single disclosed embodiment. Accordingly, the following claims are hereby incorporated into the detailed description, where each claim stands on its own as a separate embodiment.
Claims
1. An apparatus for facilitating comparison of content in a user interface, the apparatus comprising: one or more hardware processors; a memory for storing instructions that, when executed by the one or more hardware processors, cause the one or more hardware processors to perform operations comprising: identifying two or more open browser interfaces of a browser, each of the two or more open browser interfaces containing an item description of one or more items, wherein the browser interface comprises at least one of: a tab of the browser or a window of the browser; detecting types of one or more items contained in the two or more open browser interfaces, wherein the number of the types is greater than one; In response to detecting a type of one or more items contained in the two or more open browser interfaces, selecting two or more open browser interfaces containing a plurality of items of the same type; extracting or identifying one or more features associated with each of the plurality of items of the same type from at least two of the item descriptions of the plurality of items of the same type contained in the two or more open browser interfaces; Automatically generating a comparison of the plurality of items of the same type based on the extracted or identified one or more features without requiring user input to select which open browser interfaces are included or not included in the comparison; and A comparison of the plurality of items of the same type is displayed within at least one browser interface.
2. The apparatus according to claim 1, wherein the operation further comprises: Two or more browser interfaces associated with the same URL domain are selected for use in generating the comparison.
3. The apparatus according to claim 1, wherein the operation further comprises: The comparison is displayed as an overlay on at least one of the two or more open browser interfaces.
4. The apparatus according to claim 1, wherein the operation further comprises: The comparison is displayed as a table on another open browser interface of the browser.
5. The apparatus of claim 1, wherein the operations further comprise: Text analysis is performed on one of the item descriptions to determine an identity of the item or one or more characteristics of the item.
6. The device according to claim 1, wherein: An identification of the item or the one or more characteristics is extracted from metadata associated with a description of the item.
7. The apparatus of claim 1, wherein the operations further comprise: The one or more features are identified by identifying one or more semantic topics of the item description.
8. The apparatus of claim 1, wherein the operations further comprise: A corresponding list of key features of the item is obtained, and one or more features on the list of key features are searched for in a description of the item.
9. A method for facilitating comparison of content in a user interface, the method comprising: One or more hardware processors are used to perform operations including: Identifying two or more open browser interfaces of a browser, each of the two or more open browser interfaces containing an item description of one or more items, wherein the browser interface comprises at least one of the following: a tab of the browser or a window of the browser; detecting types of the one or more items contained in the two or more open browser interfaces, wherein the number of the types is greater than one; In response to detecting a type of one or more items contained in the two or more open browser interfaces, selecting two or more open browser interfaces containing a plurality of items of the same type; extracting or identifying one or more features associated with each of the plurality of items of the same type from at least two of the item descriptions of the plurality of items of the same type contained in the two or more open browser interfaces; Automatically generating a comparison of the plurality of items of the same type based on the extracted or identified one or more features without requiring user input to select which open browser interfaces are included or not included in the comparison; and A comparison of the plurality of items of the same type is displayed within at least one browser interface.
10. The method according to claim 9, further comprising: Two or more browser interfaces associated with the same URL domain are selected for use in generating the comparison.
11. The method according to claim 9, further comprising: The comparison is displayed as an overlay on at least one of the two or more open browser interfaces.
12. The method according to claim 9, further comprising: The comparison is displayed as a table on another open browser interface of the browser.
13. The method according to claim 9, further comprising: Text analysis is performed on one of the item descriptions to determine an identity of the item or one or more characteristics of the item.
14. The method according to claim 9, wherein: An identification of the item or the one or more characteristics is extracted from metadata associated with a description of the item.
15. The method according to claim 9, further comprising: The one or more features are identified by identifying one or more semantic topics of the item description.
16. The method according to claim 9, further comprising: A corresponding list of key features of the item is obtained, and one or more features on the list of key features are searched for in a description of the item.
17. A computer readable medium comprising instructions that, when executed by a processor, perform operations comprising: identifying two or more open browser interfaces of a browser, each of the two or more open browser interfaces containing an item description of one or more items, wherein the browser interface comprises at least one of: a tab of the browser or a window of the browser; detecting types of one or more items contained in the two or more open browser interfaces, wherein the number of the types is greater than one; In response to detecting a type of one or more items contained in the two or more open browser interfaces, selecting two or more open browser interfaces containing a plurality of items of the same type; extracting or identifying one or more features associated with each of the plurality of items of the same type from at least two of the item descriptions of the plurality of items of the same type contained in the two or more open browser interfaces; Automatically generating a comparison of the plurality of items of the same type based on the extracted or identified one or more features without requiring user input to select which open browser interfaces are included or not included in the comparison; and A comparison of the plurality of items of the same type is displayed within at least one browser interface.
18. The computer readable medium of claim 17, the operations further comprising: The one or more features are identified by identifying one or more semantic topics of the item description.
Citation Information
Patent Citations
Information processing device, information processing method, information processing program, and recording medium
CN103890762A
Method and system for identifying targeted data on a web page
US20070073758A1
Automated ratings of new products and services
US20110119161A1
System and method for providing access to product information and related functionalities
US20160300295A1
Product recommendation using sentiment and semantic analysis
US9418375B1