WO2016055832A1 - A computer-based system, computer-implemented methods, and a computer program product for providing ranked recommendation data - Google Patents

A computer-based system, computer-implemented methods, and a computer program product for providing ranked recommendation data Download PDF

Info

Publication number
WO2016055832A1
WO2016055832A1 PCT/IB2014/065108 IB2014065108W WO2016055832A1 WO 2016055832 A1 WO2016055832 A1 WO 2016055832A1 IB 2014065108 W IB2014065108 W IB 2014065108W WO 2016055832 A1 WO2016055832 A1 WO 2016055832A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
electronic content
database
content items
user
Prior art date
Application number
PCT/IB2014/065108
Other languages
French (fr)
Inventor
Iriz Ann MONTEBON
Trifie MONTEBON II
James Allan TO
Original Assignee
Montebon Iriz Ann
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Montebon Iriz Ann filed Critical Montebon Iriz Ann
Priority to PCT/IB2014/065108 priority Critical patent/WO2016055832A1/en
Publication of WO2016055832A1 publication Critical patent/WO2016055832A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0282Rating or review of business operators or products
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation

Definitions

  • the present invention relates in general to a database of electronic content items arranged in a ranked order and in particular to a computer-based system, computer-implemented methods, and a computer program product for providing in the database ranked electronic content items serving as recommendation data.
  • Such frameworks are described, for example, by Yuval and Oren Kaplan in their United States Patent Publication No. 20090307344 entitled “Web Page Ranking Method and System Based on User Referrals," filed with the United States Patent and Trademark Office on 04 June 2008 and subsequently published on 10 December 2009.
  • the described frameworks include, among others, a method for ranking web pages, comprising the steps of: (i) detecting when a first user sends a referral message referring a web page to a second user; (ii) detecting when said second user opens said referred web page; and (iii) ranking web pages according to the number of times that each web page was referred and/or accessed by the second user.
  • the ranking of web pages is made according to different criteria such as: (i) the number of times a URL has been referred with a challenge-response test to determine that the referral is not generated by a computer, as opposed to a referral message sent without such a test; (ii) the number of recipients per referring message (e.g., the higher the number of recipients per message, the lower the ranking); (iii) the number of times a referred URL has been accessed by the receiving party; (iv) the number and formation in which referral messages are resent by recipients to others; and (v) the number of times a referred and accessed URL involved compensation to the referring party.
  • a problem with these criteria is that the database storing all the information associated with each of said criteria is flooded with voluminous copies of referral messages having the same attributes such as the referring and receiving parties. Other data that are associated with each of the enumerated criteria may also cause of flooding of the database. Further, implementing the aforesaid criteria in turn requires a significant amount of investment in terms of both money and people since higher costs for computing resources including hardware and software and for manpower are usually necessary in ensuring optimization of database performance.
  • the present invention mainly provides a computer-based system for providing ranked recommendation data.
  • the system comprises: (i) a database layer having a database for storing data; (ii) a data access layer in communication with the database layer for retrieving and representing data from the database based on processor- executed algorithms from a memory system and in accordance with a view; (iii) a network interface layer in communication with the data access layer for enabling one of communication devices of suitable configurations to retrieve, over a communication network, a set of electronic content items from the database, and to cause one or more electronic content items included in the set of electronic content items to be shared, over the communication network, with another of the communication devices through a communication platform upon the request of the user of the one of the communication devices, wherein the shared one or more electronic content items are at least an indication of recommendation data; (iv) a code generating algorithm which, when executed by the processor from the memory system, is arranged to generate and store in the database a first unique identifier data assigned to data associated with each shared electronic content item
  • the provision of the recommendation count being generated based the unique combination of any two or more of the second, third, and fourth unique identifier data corresponding to the first unique identifier data not only ensures ranking of the electronic content items serving as recommendation data based on factors that are at least relevant to the purpose, circumstances, and need of the users of the communication devices desiring to access and view the electronic content items but also ensures that the likelihood of fraudulence in view of potential manipulative activities of the human users are prevented from occurring during the recommendation process and, most importantly, that only a minimum amount of investment in terms of both money and people is required.
  • the disclosed computer-based system of the present invention are arranged to ignore or disregard combinations of said second, third, and fourth unique identifier data corresponding to the first unique identifier data that are not unique or, in other words, are not previously stored in the disclosed database.
  • the shared or referred electronic content items having the same attributes are set by said system to be provided with no recommendation count and, consequently, all the data associated with the electronic content items and their attributes may be set to be disregarded by the disclosed computing resources such as the data ranking algorithm, i.e., only the valid recommendation count which is a lightweight data is considered by the same computing resources.
  • the present invention provides a first computer-implemented method for providing ranked recommendation data, wherein said method comprises: (i) providing a database layer having a database for storing data; (ii) providing a data access layer in communication with the database layer for retrieving and representing data from the database based on processor-executed algorithms from a memory system and in accordance with a view; (iii) providing a network interface layer in communication with the data access layer for enabling one of communication devices of suitable configurations to retrieve, over the communication network, a set of electronic content items from the database, and to cause one or more electronic content items included in the set of electronic content items to be shared, over the communication network, with another of the communication devices through the communication platform upon the request of the user of the one of the communication devices, wherein the shared one or
  • the first computer-implemented method further comprises the step of ordering, by a processor-executed data ordering algorithm from the memory system, in the database any two or more of the electronic content items having an identical value of the recommendation count according to lexical value thereof.
  • the data order algorithm orders in the database the set of electronic content items according to one or more relevance factors.
  • the first computer-implemented method further comprises the step of updating, by the processor-executed data ranking algorithm from the memory system, in the database the value of the recommendation count for the each shared electronic content item included in the set of electronic content items each time a successful recommendation count is determined.
  • the updating step ensures that the ranking of the electronic content items is accurate to the change in the value of the recommendation count for each electronic content item.
  • the first computer-implemented method further comprises the step of providing a data mining layer in communication with the database layer for finding and analyzing in the database the each electronic content item based on its relevance to the set of electronic content items.
  • the data mining layer may be arranged to include a data analytic algorithm having search query language (SQL) statements and programmatic iteration for retrieving the each electronic content item from the database.
  • SQL search query language
  • the first computer-implemented method further comprises steps of: (i) collecting, by the processor-executed code generating algorithm from the memory system, in the database metadata from external data resources; and (ii) displaying, by the processor-executed data displaying algorithm from the memory system, on a display device of any of the communication devices a further set of electronic content items based on the collected metadata.
  • the first computer-implemented method further comprises step of determining, by the processor-executed code generating algorithm from the memory system, in the database data format of the communication platform.
  • the format of the communication platform may be the basis for assigning the fourth unique identifier data.
  • the present invention provides a second computer-implemented method for providing ranked recommendation data.
  • This second method is based upon a search of a database and comprises the steps of: (i) receiving, by at least one processor, a query that includes at least one search criterion; (ii) retrieving, by the at least one processor, a set of electronic content items from the database satisfying the at least one search criterion provided by a user of the database; (iii) ranking, by the at least one processor, the retrieved set of electronic content items in an initial ranking order based on relevance factors; (iv) determining, by the at least one processor, value of recommendation count for each electronic content item included in the set of electronic content items and shared in a communication platform from a sender-user's electronic account to a recipient-user's electronic account, wherein the recommendation count is generated based on a unique combination of any two or more of unique identifier data assigned to data associated with the sender-user's electronic account, the recipient-user's electronic account, and the
  • the present invention provides a computer program product for providing ranked recommendation data based upon a search of a database.
  • This computer program product comprises a non-transitory computer readable storage medium having computer readable program code encoded therein.
  • the computer readable program code is arranged to: (i) retrieve a set of electronic content items from the database satisfying at least one search criterion provided by a user of the database; (ii) rank the retrieved set of electronic content items in an initial ranking order based on relevance factors; (iii) determine value of recommendation count for the each electronic content item included in the set of electronic content items and shared in a communication platform from a sender-user's electronic account to a recipient-user's electronic account, wherein the recommendation count is generated based on a unique combination of any two or more of unique identifier data assigned to data associated with the sender-user's electronic account, the recipient-user's electronic account, and the communication platform corresponding to the unique identifier data assigned to data associated with the shared electronic content item; (iv
  • the relevance factors may include frequency of occurrence of the each electronic content item in the set of electronic content items, location data associated with the each electronic content items and generated using a location based service, or semantic values of the electronic content items in relation to one another.
  • the location-based service may be a wireless communication network, an external positioning method, and Wireless Fidelity (WiFi) access point
  • the wireless communication network may include any of a CDMA (Code Division Multiple Access) network, a 3G (Third Generation) network, a 4G/LTE (Fourth Generation/Long Term Evolution) network, a 5G (Fifth Generation) network, and the like
  • the external positioning method may include the use of at least one Global Positioning System (GPS) device.
  • GPS Global Positioning System
  • each of the second and the third unique identifier data may be a mobile phone account data, an email account data, a social media account data, or a third party messaging service account data while the communication platform may be an SMS-based application, an MMS based application, a mobile-based application, a web-based application, an electronic mailing application, a social media application, or a third party messaging application.
  • the communication platform is a peer-to-peer platform
  • the set of electronic content items may include a business listing data, a product catalog data, a service catalog data, an advertisement data, a web page data, a gaming score data, a promotional data, an individual professional data, or any suitable combination thereof.
  • Figure 1 shows a block diagram of a computer-based system, incorporating an illustration of a first computer-implemented method, for providing ranked recommendation data according to preferred embodiments of the invention.
  • Figure 2 shows a process flow illustrating a second computer-implemented method for providing ranked recommendation data in accordance with one preferred embodiment of the invention.
  • Figure 3 shows a process flow for ranking a set of web pages in accordance with one preferred embodiment of the invention.
  • Figure 4 shows a process flow for multi-level ranking of search engine results in accordance with one preferred embodiment of the invention.
  • Figure 5 shows a diagram of possible combinations of unique identifiers employed in the system and methods of the invention according to preferred embodiments.
  • Figure 6 shows an illustration of a computer program product for providing ranked recommendation data based upon a search of a database in accordance with one preferred embodiment of the invention.
  • Figure 7 shows an illustrative referral message delivery process in accordance with preferred embodiments of the system of the invention.
  • the computer-based system which is designated by reference numeral 100 generally includes at least a database layer 102 having a database 104, a data access layer 106, and a network interface layer 108.
  • the database layer 102 provides computer-executable programs arranged to hold and query data tables and lookup tables contained in the database 104 which is preferably of a relational database type.
  • Various operations in the database 104 can be made through the database layer 102, and they include dynamic storage and deletion of data and as well as modification of previously added data in the database 104.
  • the database layer 102 responds to requests for information from the data access layer 106 based on demand and on predetermined database access protocols.
  • the data access layer 106 which is in communication with the database layer 102, provides various services relevant to data management. These services include, for example, extracting of data from the database 104 and then processing and reformatting them in response to requests for data by various applications, local services or third party services.
  • additional capabilities of the data access layer 106 may range from reading, writing, and deleting data to caching the data for extended periods of time which is very useful in instances where data communication between the database layer 102 and the data access layer 106 fails.
  • An electronic address 114 is likewise provided in the system 100 and is accessible, over a communication network 116, to each of user-operable communication devices 118, 120 of suitable configurations for communications between each of the communication devices 118, 120 and the database 104 and for enabling users of the communication devices 118, 120 to view the data retrieved and represented by the data access layer 106 through a communication platform 122.
  • the network interface layer 108 moving forward, is in communication with the data access layer 106 for enabling one of the communication devices 118 to retrieve, over the communication network 116 which is preferably an Internet Protocol (IP) network, a set of electronic content items 124 from the database 104, and to cause one or more electronic content items included in the set of electronic content items 124 to be shared, over the communication network 116, with another of the communication devices 120 using the communication platform 122 upon the request of the user of the one of the communication devices 118, wherein the shared one or more electronic content items 124 are at least an indication of recommendation data.
  • IP Internet Protocol
  • the network interface layer 108 generally interacts directly with the communication platform 122 through the electronic address 114 such that the users of the communication devices 118, 120 are enabled to view, over the communication network 116, the set of electronic content items 124 rendered on the communication platform 122.
  • the set of electronic content items 124 may include items that can be provided by various parties such as merchants, advertisers, and even the users of the communication devices 118, 120.
  • the network interface layer 108 may specifically include at least two sub-layers, namely, a physical sub-layer (not illustrated) and a data link sub-layer (not illustrated).
  • the electronic address 114 is employed in the system 100 so as to enable seamless communications over, the communication network 116, between the communication platform 122 and the network interface layer 108.
  • the electronic address 114 is preferably an Internet Protocol (IP) network address.
  • IP Internet Protocol
  • first unique identifier data 124a assigned to data associated with each shared electronic content item included in the set of electronic content items 124, wherein the first unique identifier data 124a corresponding to the data associated with different electronic content items 124 are distinct from one another, a second and third unique identifier data 118a, 120a assigned, respectively, to data associated with the communication devices 118, 120 and a fourth unique identifier data 122a assigned to data associated with the communication platform 122.
  • the code generating algorithm 130 are specifically computer-executable instructions that are arranged to assign the first unique identifier data 124a to the data representing the shared electronic content item included in the set of electronic content items 124, the second unique identifier data 118a to the data representing the communication device 118, the third unique identifier data 120a to the data representing the communication device 120, and the fourth unique identifier data 122a to the data representing the communication platform 122.
  • the code generating algorithm 130 relies on the exact information representing each of the electronic content items 124, the communication devices 118, 120, and the communication platform 122.
  • the code generating algorithm 130 preferably generates digital codes which serve as the unique identifier data 124a, 118a, 120a, 122a. These digital codes may be generated when the database 104 receives the information representing each of the electronic content items 124, the communication devices 118, 120, and the communication platform 122 which may occur if and when, for example, the communication device 118 retrieves the set of electronic items 124 from the database 104 over the communication network 116 and share at least one of the electronic content items 124 with the communication device 120 through the communication platform 122. In that particular case, the communication device 118 acts as the sender of the shared electronic content item 124 while the communication device 120 acts as the recipient of the same electronic content item 124.
  • the digital codes ensure that the unique identifier data 124a, 118a, 120a, 122a will remain consistent for every information to which they are assigned and that they represent, and are arranged in such a manner that they cannot be altered by any unauthorized third party.
  • the digital codes associated with the unique identifier data 124a, 118a, 120a, 122a may be based on the information themselves. For example, if the information associated with the communication device 118 is an email address information such as xxx@xxx.com, then the codes may be the "xxx@xxx.com" itself.
  • pseudo-random numeric or alphanumeric character generation methodologies may be employed in generating the unique identifier data 124a, 118a, 120a, 122a based on the respective information that they represent.
  • any of the second and third unique identifier data 118a, 120a is selected from a mobile phone account data, an email account data, a social media account data, and a third party messaging service account data;
  • the communication platform 122 which is preferably of the peer-to-peer type of platform is selected from an SMS-based application, an MMS based application, a mobile-based application, a web-based application, an electronic mailing application, a social media application, and a third party messaging application.
  • the system 100 further includes a data aggregating algorithm 132 which, when executed by the processor 110 from the memory system 112, is arranged to aggregate the first, second, third, and fourth unique identifier data 124a, 118a, 120a, 122a and store in the database 104 one recommendation count for the each electronic content item 124 shared by the user of the communication device 118 with the user of the communication device 120.
  • the recommendation count is generated based on a unique combination of any two or more of the second, third, and fourth unique identifier data 118a, 120a, 122a corresponding to the first unique identifier data 124a.
  • the data aggregating algorithm 132 is primarily configured to prevent redundant combination of the first, second, third, and fourth unique identifier data 124a, 118a, 120a, 122a, and to cause the database layer 102 to store in the database 104 only the count, in a lightweight format, that indicates a unique combination of said first, second, third, and fourth identifier data 124a, 118a, 120a, 122a.
  • a data ranking algorithm 134 is also included in the system 100.
  • the data ranking algorithm 134 When executed by the processor 110 from the memory system 112, the data ranking algorithm 134 is configured to rank the set of electronic content items 124 according to value of the recommendation count for the each shared electronic content item included in the set of electronic content items 124.
  • the data ranking algorithm 134 may be arranged to determine the discrete recommendation count for each electronic content item included in the set of electronic content items 124 through an iterative process and on a periodic basis.
  • the system 100 also includes a data displaying algorithm 136 which, when executed by the processor 110 from the memory system 112, is arranged to display on a display component 126, 128 of any of the communication devices 118, 120 upon the request of any user thereof the ranked set of electronic content items 124.
  • the processor 110 executing all the computer-executable instructions associated with the database layer 102, the data access layer 106, and the network interface layer 108, the code generating algorithm 130, the data aggregating algorithm 132, the data ranking algorithm 134, and the data displaying algorithm 136 may refer to one or more processors which may include a central processing unit, a memory processing unit, a graphic processing unit, and the like.
  • the processor 110 may be a processor of the general purpose type or a special purpose type.
  • the processor 110 may be hardware suitable for use in purpose-specific digital computing such as a programmable logic controller.
  • the memory system 112 may include one or more computer readable media, each of which containing one or more computer executable instructions, and is preferably a non-volatile type thereby ensuring that electronic data remain stored even when there is no power supply.
  • RAM random access memory
  • MRAM magnetic random access memory
  • FRAM ferroelectric random access memory
  • Each of the communication devices 118, 120 may be a desktop computer, a laptop computer, a tablet, a smartphone, a personal digital assistant, and the like, all of which are known to be capable of processing and viewing electronic data such as the set of electronic content items 124 which may include a business listing data, a product catalog data, a service catalog data, an advertisement data, a web page data, a gaming score data, a promotional data, an individual professional data, and the like. Any suitable combination of these data may also constitute the set of electronic content items 124.
  • the system 100 preferably comprises a data ordering algorithm which, when executed by the processor 110 from the memory system 112, is arranged to order the set of electronic content items 124 according to one or more relevance factors selected from frequency of occurrence of the each electronic content item in the set of electronic content items 124, location data associated with the each electronic content items 124 and generated using a location based service, and semantic values of the electronic content items 124 in relation to one another.
  • the location-based service may include a wireless communication network, an external positioning method, or a Wireless Fidelity access point.
  • Possible selections for the wireless communication network may include a CDMA (Code Division Multiple Access) network, a 3G (Third Generation) network, a 4G/LTE (Fourth Generation/Long Term Evolution) network, a 5G (Fifth Generation) network, and the like.
  • GPS Global Positioning System
  • the system 100 further comprises a data mining layer which includes a data analytic algorithm having search query language (SQL) statements and programmatic iteration for enabling the users of the communication devices 118, 120 to retrieve the each electronic content item 124 from the database 104 instantaneously.
  • SQL search query language
  • the data analytic algorithm may be arranged to adopt a range of database solutions including, but not limited to, MySQL (an open-source relational database management system), MongoDB (an open- source NoSQL database), PostgreSQL (an object-relational database management system (ORDBMS), and Redis (an in-memory database).
  • MySQL an open-source relational database management system
  • MongoDB an open- source NoSQL database
  • PostgreSQL an object-relational database management system (ORDBMS)
  • Redis an in-memory database.
  • the aforementioned data ordering algorithm which, when executed by the processor 110 from the memory system 112, is further arranged to order any two or more of the electronic content items 124 having an identical value of the recommendation count according to lexical value thereof. This refers to ordering the electronic content items 124 in an alphabetical order. By alphabetizing the electronic content items 124, it would be much easier for the users of the communication devices 118, 120 to view the same electronic content items 124.
  • FIG. 1 there is further shown a first computer- implemented method which corresponds to system 100 for providing ranked recommendation data.
  • the steps of the method are indicated by encircled uppercase letters A - G.
  • the method starts with encircled uppercase letter "A” by providing the database layer 102 having the database 104 for storing data and proceeds with encircled uppercase letter "B” by providing the data access layer 106 in communication with the database layer 102 for retrieving and representing data from the database 104 based on processor-executed algorithms from the memory system 112 and in accordance with a view.
  • the step represented by the encircled uppercase letter "C" follows, and this particular step is concerned with providing the network interface layer 108 in communication with the data access layer 106 for enabling the communication device 118 to retrieve, over the communication network 116, the set of electronic content items 124 from the database 104, and to cause one or more electronic content items included in the set of electronic content items 124 to be shared, over the communication network 116, with the communication device 120, which is remotely located from the communication device 118, through the communication platform 122 upon the request of the user of the communication device 118, wherein the shared one or more electronic content items 124 are at least an indication of recommendation data.
  • An electronic address 114 may likewise be provided and can be accessible, over the communication network 116, to each of the communication devices 118, 120 for communications between each of the communication devices 118, 120 and the database 104 and for enabling the users of the communication devices 118, 120 to view the data retrieved and represented by the data access layer 106 through the communication platform 122.
  • the encircled uppercase letter "E" corresponding to the step of aggregating the first, second, third, and fourth unique identifier data 124a, 118a, 120a, 122a and storing, by the processor-executed data aggregating algorithm 132 from the memory system 112, in the database 104 one recommendation count for the each electronic content item 124 shared by the user of the communication device 118 with the user of the communication device 120, wherein the recommendation count is generated based on a unique combination of any two or more of the second, third, and fourth unique identifier data 118a, 120a, 122a corresponding to the first unique identifier 124a.
  • the provision of the recommendation count being generated based on the unique combination of any two or more of the second, third, and fourth unique identifier data 118a, 120a, 122a corresponding to the first unique identifier 124a data not only ensures ranking of the electronic content items 124 serving as recommendation data based on factors that are at least relevant to the purpose, circumstances, and need of the users of the communication devices 118, 120 desiring to access and view the electronic content items 124 but also ensures that the likelihood of fraudulence in view of potential manipulative activities of human users are prevented from occurring during the recommendation or referral process and, most importantly, that only a minimum amount of investment in terms of both money and people is required.
  • the disclosed computer-based system and computer-implemented method of the present invention are arranged to ignore or disregard combinations of said first, second, third, and fourth unique identifier data 124a, 118a, 120a, 122a that are not unique or, in other words, are not previously stored in the disclosed database 104.
  • the shared, recommended or referred electronic content items 124 having the same attributes are set by said system and method to be provided with no recommendation count and, consequently, all the data associated with the communication platform 122 and the communication devices 118, 120 and their respective attributes may set to be disregarded by the disclosed computing resources such as the data ranking algorithm 134, i.e., only the recommendation count based on the unique combination of the unique identifier data 124a, 118a, 120a, 122a which are lightweight data is considered by the same computing resources.
  • the data ranking algorithm 134 i.e., only the recommendation count based on the unique combination of the unique identifier data 124a, 118a, 120a, 122a which are lightweight data is considered by the same computing resources.
  • FIG. 2 there is shown a process flow by which a second computer-implemented method for providing ranked recommendation data is illustrated in accordance with one preferred embodiment of the present invention.
  • the method starts at block 200 in which it is shown the step of receiving, by at least one processor such as the processor illustrated in Figure 1, a query that includes at least one search criterion.
  • a query that includes at least one search criterion.
  • the method subsequently proceeds to block 202 in which disclosed is the step of retrieving, by the processor, a set of electronic content items from a database, as shown in database block 204, satisfying the search criteria provided by the user of the database.
  • the data access layer accomplishes the function of retrieving the electronic content items from the database as shown in the database block 204.
  • the method advances to block 208 in which disclosed is the step of ranking, by the processor, the retrieved set of electronic content items in an initial ranking order based on relevance factors.
  • This initial ranking order may be carried out by a data ordering algorithm as shown in block 210 which, when executed by the processor from the memory system, is arranged to order the set of electronic content items according to said relevance factors which may be predetermined and pre- stored in a relevance factor database as shown in database block 212.
  • the relevance factors affecting the initial ranking order may include frequency of occurrence of the each electronic content item in the set of electronic content items, location data associated with the each electronic content items and generated using a location based service, and semantic values of the electronic content items in relation to one another.
  • the location-based service may be a wireless communication network, an external positioning method, or a Wireless Fidelity access point.
  • the wireless communication network may include a CDMA network, a 3G network, a 4G/LTE network, a 5G network, or the like.
  • the external positioning method includes the use of at least one Global Positioning System (GPS) device.
  • GPS Global Positioning System
  • the method After ranking the retrieved set of electronic content items in the initial ranking order as shown in the block 208, the method progressively moves to block 214 showing the step of determining, by the processor, value of recommendation count for each electronic content item included in the set of electronic content items and shared in a communication platform from a sender-user's electronic account to a recipient- user's electronic account, wherein the recommendation count is generated based on a unique combination of any two or more unique identifier data representing data associated with the sender-user's electronic account, the recipient-user's electronic account, and the communication platform corresponding to unique identifier data representing data associated with the shared electronic content item.
  • This step of determining the value of the recommendation count is accomplished by the data aggregating algorithm as shown in block 216.
  • the method moves to block 218 showing the step of modifying, by the processor, the initial ranking order by applying the determined value of the recommendation count for the each electronic content item included in the set of electronic content items thereby producing a modified ranking order.
  • Producing the modified ranking order is effected by processor-executed data ranking algorithm as shown in block 220.
  • the method concludes at block 222 showing the final step of providing, by the processor, as search results the retrieved set of electronic contents items in accordance with the modified ranking order. This concluding step may cause the search results to be displayed accordingly as shown in block 224.
  • the second method may comprise the step of ordering, by a processor-executed data ordering algorithm from the memory system, in the database the set of electronic content items according to one or more relevance factors.
  • the second method may comprise the step of ordering, by the processor-executed data ordering algorithm from the memory system, in the database any two or more of the electronic content items having an identical value of the recommendation count according to lexical value thereof.
  • the second method may comprise the step of updating, by the processor-executed data ranking algorithm from the memory system, in the database the value of the recommendation count for the each shared electronic content item included in the set of electronic content items each time a successful recommendation count is determined.
  • the second method further comprises the step of providing a data mining layer in communication with the database layer for finding and analyzing in the database the each electronic content item based on its relevance to the set of electronic content items., wherein the data mining layer includes a data analytic algorithm having SQL statements and programmatic iteration for retrieving the each electronic content item from the database.
  • the second method further comprises the steps of: collecting, by the processor-executed code generating algorithm from the memory system, in the database metadata from external data resources; and displaying, by the processor-executed data displaying algorithm from the memory system, on a display device of any of the communication devices a further set of electronic content items based on the collected metadata.
  • These metadata can be any information representing data associated with any of the electronic content items, the sender-user's electronic account, the recipient-user's electronic account, and the communication platform that are available through the communication network and can be stored from the external data resources into the database.
  • Metadata associated with any of the sender-user's and recipient-user's electronic accounts may include: demographic information of the user such as name data, age data, location data, gender data, marital status data, and the like; social media information of the user such as social media activity data; downloaded multimedia information such as song data and movie data; and search preference information of the user from a search history of an internet browsing application, among others.
  • the second method further comprises the step of determining, by the processor-executed code generating algorithm from the memory system, in the database data format of the communication platform.
  • the format of the communication platform may be the basis for assigning the fourth unique identifier data.
  • FIG. 3 there is shown a process flow for ranking a set of web pages, as illustrative examples of electronic content items, in accordance with a preferred embodiment of the present invention.
  • This process flow is carried out by the data ranking algorithm discussed in full detail in Figure 1.
  • the process flow starts with obtaining data associated with a web page, which is a form of electronic content item, as shown in block 300 from a content database such as that shown in database block 302, and then with assigning of a first unique identifier (UID1) data to the web page as shown in block 304.
  • UID1 first unique identifier
  • the process continues to obtain, from the electronic content items database as shown in the block 302, further data associated with a sender acting as a recommender of the web page as shown in block 306, and then with assigning of a second unique identifier (UID2) data to the sender data as shown in block 308.
  • the process then proceeds with obtaining, from the electronic content items database as shown in the block 302, further data associated with a recipient acting as a receiver of the web page recommended by the sender as shown in block 310 and then with assigning of a third unique identifier (UID3) data to the recipient data as shown in block 312.
  • UID2 second unique identifier
  • the process continues to obtain, from the electronic content items database as shown in the block 302, further data associated with the communication platform such as email client and more specifically the data format of the email client as shown in block 314, and then with assigning of a fourth unique identifier (UID4) data to the data format as shown in block 316.
  • further data associated with the communication platform such as email client and more specifically the data format of the email client as shown in block 314, and then with assigning of a fourth unique identifier (UID4) data to the data format as shown in block 316.
  • UID4 unique identifier
  • the process advances to concatenate the first, second, third, and fourth unique identifier data (e.g., UID1UID2UID3UID4) or simply merging the strings of characters representing each of the first, second, third, and fourth unique identifier data, as shown in block 318.
  • the concatenated or merged first, second, third, and fourth unique identifier data forms a combined or merged strings of characters.
  • the uniqueness of the combination is determined by the process in block 320 by checking if the concatenated or merged first, second, third, and fourth unique identifier data exists in the unique identifier (UID) database such as that represented by database block 322.
  • UID unique identifier
  • the process determines by the process whether or not the concatenated or merged first, second, third, and fourth unique identifier data exists in said database.
  • the existence of the concatenated or merged unique identifier data in the UID database as shown in the block 322 means that the same is no longer unique. In that case, the process proceeds to put the data in garbage or junk as shown in block 326. Otherwise, if the concatenated or merged unique identifier data does not exist in the UID database as shown in the block 322, the process proceeds to generate one recommendation count for the recommended web page and updating the value of recommendation count for the recommended web page as shown in block 328. This updating process requires access to the electronic content item database such as that represented by the database block 302.
  • the process finally concludes at block 330 wherein the set of web pages is ranked taking into consideration the updated value of the recommendation count for the web page belonging to the set of web pages.
  • the illustrated web page data may alternatively be replaced by the aforementioned business listing data, product catalog data, service catalog data, advertisement data, gaming score data, promotional data, an individual professional data, or any suitable combination thereof.
  • FIG. 4 there is shown a process flow for multi-level ranking of search engine results in accordance with one preferred embodiment of the present invention.
  • the disclosed methods and system of the present invention are well suitable for use in ranking search results that are usually generated by a search engine based upon the keywords used by a user.
  • the illustrated process starts in block 400 by gathering relevance factors from a relevance factor database such as that represented by database block 402.
  • the relevance factors may include frequency of occurrence of a particular search result included in the set of search results, location data associated with a particular search result and generated using a location based service, and semantic values of the search results in relation to one another.
  • the frequency of occurrence of a particular search result included in the set of search results indicates may be calculated using suitable algorithms, and it indicates strong correlation between the particular search result and the remaining search results to which the particular search result belongs.
  • suitable algorithms such as traditional hand paintings, to the exclusion of all other merchants that supply a difference range of art products such as printed photographs and posters.
  • the location data associated with each of the search results and generated using a location based service which may be selected from any of a wireless communication network, an external positioning method, and a Wireless Fidelity access point.
  • a location based service which may be selected from any of a wireless communication network, an external positioning method, and a Wireless Fidelity access point.
  • a wireless communication network an external positioning method
  • a Wireless Fidelity access point a Wireless Fidelity access point.
  • GPS Global Positioning System
  • the system detects, for example, that the user is searching for merchants and that the same user is located in geographical area A based on the geographical location associated with the Internet Protocol (IP) address of the computer used by the user in performing the search or of the network adapters with which the same computer is connected, it will proceed to identify the listing of merchants whose business addresses correspond to geographical locations that are proximate to the area A.
  • Searching for business addresses and their coordinates within a certain radius with the geographical location of area A as the originating reference point can be accomplished using suitable algorithms cooperating with any standard GPS device coupled to the system of the present invention.
  • the semantic values of the search results in relation to one another provides relevance of the search results based on meaning of a keyword or a group of keywords.
  • Semantic searching is well known in the art for enhancing the value of search results with respect to purpose or intent of the user desiring to get access to internet-based information, and may perform indexing operations for indexing meanings of, for example, a sentence containing two or more keywords.
  • the syntactical structure of the sentence may be analyzed by the system of the present invention in order to provide relevant search results on the meaning of the sentence.
  • the process moves to block 404, wherein the search results are filtered by applying one or more of the relevance factors from the relevance factors database such as that represented by the database block 402.
  • the process advances to block 406 wherein the recommendation count tagged to each of the search results is gathered, and then to block 408 wherein the search results are ranked or sorted, preferably from highest to lowest, according to the value of recommendation count tagged to each of the search results.
  • the process progresses to decision block 410 wherein it is determined whether there are two or more of the ranked search results having the same value of recommendation count.
  • the process is terminated and, in which case, the search results ranked according to the value of the recommendation count for each of the search results are final. Otherwise, the process continues to block 412 wherein the lexical value of each of the search results is determined and then to block 414 wherein the search results are further arranged based on the lexical value of each of the search results or, in other words, based on alphabetical order. The block 414 concludes the process.
  • the first unique identifier data corresponds to data associated with an electronic content item
  • the second unique identifier data (UID2) to the data the associated with a first communication device such as a sender-user's electronic account
  • the third unique identifier data (UID3) to the data associated with a second communication device such as a recipient-user's electronic account
  • the fourth unique identifier data (UID4) to the data associated with the communication platform such as an email client account.
  • the system and methods of the present invention make use of the unique combination of all the UID2, UID3, and UID4 corresponding to UID1, as shown in block 500. It should be understood however that a unique combination of two or three of UIDl, UID2, UID3, and UID4 may also be employed. The unique combinations of three UIDs are shown in blocks 502, 504, and 506 while the unique combinations of two UIDs are shown in blocks 508, 510, and 512. Referring to Figure 6, there is shown a computer program product for providing ranked recommendation data based upon a search of a database in accordance with one preferred embodiment of the present invention.
  • the computer program product 600 comprises a non-transitory computer readable storage medium 602 having computer readable program code 604 encoded therein, wherein the computer readable program code 604 is arranged to perform the various functions.
  • the first function as shown in block 604a, is concerned with the retrieval of a set of electronic content items from a database satisfying at least one search criterion provided by a user of the database.
  • the second function as shown in block 604b, deals with ranking the retrieved set of electronic content items in an initial ranking order based on relevance factors.
  • the third function serves to determine value of recommendation count for each electronic content item included in the set of electronic content items and shared in a communication platform from a sender-user's electronic account to a recipient-user's electronic account, wherein the recommendation count is generated based on a unique combination of any two or more unique identifier data representing data associated with the sender-user's electronic account, the recipient-user's electronic account, and the communication platform corresponding to unique identifier data representing data associated with the shared electronic content item.
  • the fourth function deals with modifying the initial ranking order by applying the determined value of the recommendation count for the each electronic content item included in the set of electronic content items thereby producing a modified ranking order.
  • the fifth and final function serves to provide as search results the retrieved set of electronic contents items in accordance with the modified ranking order.
  • the relevance factors included in the computer program product 600 may either be a frequency of occurrence of the each electronic content item in the set of electronic content items, a location data associated with the each electronic content items and generated using a location based service, or semantic values of the electronic content items in relation to one another.
  • FIG. 7 there is shown an illustrative referral message delivery process in accordance with the system of the present invention.
  • This illustrative referral message delivery process is preferably implemented using a mobile-based application.
  • the delivery process starts at block 800 wherein the system presents to the sender-user the listing of, for example, businesses to refer.
  • the system receives the selected business by the sender-user.
  • the system presents to the sender-user the available referral format.
  • decision blocks 806, 808, 810, and 812 the system iteratively determines the referral format chosen by the sender-user.
  • SMS short messaging service
  • the block 814 is followed by block 822 wherein the system initiates sending of the referral message to a module for in-application chat and then by block 824 wherein the referral message is sent to the recipient-user via the in-application chat module.
  • the block 816 is followed by block 826 wherein the system initiates sending of the referral message to SMS carrier and then by block 828 wherein the referral message is sent to the recipient-user of via the SMS carrier.
  • the block 818 is followed by block 830 wherein the system initiates sending of the referral message to email client and then by block 832 wherein the referral message is sent to the recipient-user via the email client.
  • the block 820 is followed by block 834 wherein the system initiates opening of a third party social media application and then by block 836 wherein the referral message is delivered to the recipient-user by displaying the message to a social media page associated with the opened third party social media application.
  • the system determines whether the sending of the referral message to any recipient-user using any format is successful. If the sending of the referral message is unsuccessful, the system prompts the sender-user with an error message as shown in block 840 and renders an invalid recommendation count as shown in block 842. Otherwise, if the sending of the referral message is successful, the system further determines at decision block 844 whether the combination of the data associated with the sender-user, the format, and the recipient-user is unique.
  • the system renders an invalid recommendation count as shown in the block 842. If said combination is unique, the system renders a valid recommendation count and subsequently store in the database, as shown in database block 846, one valid recommendation count for each of unique combinations of data associated with the listed and selected business, the sender-user, the chosen or entered recipient-user, and the selected format. Accessing or viewing the recommended business by the recipient-user may or may not be a pre-requisite for the system to generate the recommendation count based on the unique combination of the unique identifier data. In the illustrated delivery process, however, it is preferable that the recommendation is generated as soon as the referral message is delivered to the recipient-user's electronic account. In other words, the system does not require the recipient-user to access or view the referred message before a successful recommendation count can be generated and stored in the database.
  • LIST_OF_REFERRALS [ company_id, referred_by_user_id,
  • REFERRAL [ company_id, referred_by_user_id, referred_to_user_id, referral_channel ]
  • referral_channel ⁇ Facebook I Twitter I Chat I Email I SMS ⁇

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • General Engineering & Computer Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Game Theory and Decision Science (AREA)
  • Data Mining & Analysis (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

Computer-based system, computer-implemented methods, and a computer program product are disclosed such that ranked recommendation data in a database is provided while performance of the same database remains optimized. A data aggregating algorithm and the database are in communication with one another. When executed by a processor from a memory system, the data aggregating algorithm is arranged to aggregate unique identifier data and store in the database one recommendation count for each electronic content item shared by a user of a first user-operable communication device with a user of a second user-operable communication device in a communication platform, wherein the recommendation count is generated based on a unique combination of any two or more unique identifier data representing data associated with the first communication device acting as a sender, the second communication device acting as a recipient, and the communication platform corresponding to unique identifier data representing data associated with the shared electronic content item.

Description

A COMPUTER-BASED SYSTEM, COMPUTER-IMPLEMENTED METHODS, AND A COMPUTER PROGRAM PRODUCT FOR PROVIDING RANKED
RECOMMENDATION DATA
Technical Field The present invention relates in general to a database of electronic content items arranged in a ranked order and in particular to a computer-based system, computer-implemented methods, and a computer program product for providing in the database ranked electronic content items serving as recommendation data.
Background of the Invention Owing to the dynamic nature of computer and internet technologies, the diversity and volume of information that can be accessed from the internet using a computer continue to increase at a rapid rate. It has been reported that web-accessible information such as systems of databases, dynamic pages, and intranet sites have once reached an overwhelming count of more or less 550 billion (How Much Information, Regents of the University of California, 2000). This has caused the process of locating useful information to be not only time-consuming but also labour-intensive and inaccurate. It is for these reasons that computer-implemented frameworks are highly desirable for ranking internet-based information based on factors that are at least relevant to the purpose, circumstances, and need of a user desiring to access and view the information.
Such frameworks are described, for example, by Yuval and Oren Kaplan in their United States Patent Publication No. 20090307344 entitled "Web Page Ranking Method and System Based on User Referrals," filed with the United States Patent and Trademark Office on 04 June 2008 and subsequently published on 10 December 2009. The described frameworks include, among others, a method for ranking web pages, comprising the steps of: (i) detecting when a first user sends a referral message referring a web page to a second user; (ii) detecting when said second user opens said referred web page; and (iii) ranking web pages according to the number of times that each web page was referred and/or accessed by the second user. In an attempt to address potential fraud and abuse in the course of implementing said method and in view of potential manipulative activities of human users, it is further described that the ranking of web pages is made according to different criteria such as: (i) the number of times a URL has been referred with a challenge-response test to determine that the referral is not generated by a computer, as opposed to a referral message sent without such a test; (ii) the number of recipients per referring message (e.g., the higher the number of recipients per message, the lower the ranking); (iii) the number of times a referred URL has been accessed by the receiving party; (iv) the number and formation in which referral messages are resent by recipients to others; and (v) the number of times a referred and accessed URL involved compensation to the referring party. A problem with these criteria, although they arguably reduce the likelihood of fraudulence occurring during a computer-assisted referral or recommendation process, is that the database storing all the information associated with each of said criteria is flooded with voluminous copies of referral messages having the same attributes such as the referring and receiving parties. Other data that are associated with each of the enumerated criteria may also cause of flooding of the database. Further, implementing the aforesaid criteria in turn requires a significant amount of investment in terms of both money and people since higher costs for computing resources including hardware and software and for manpower are usually necessary in ensuring optimization of database performance.
In view of the foregoing, there remains an outstanding need to arrange at least a computer-based system, computer-implemented methods, and a computer program product such that ranked recommendation data in a database is provided while performance of the same database remains optimized. Summary of the Invention
The present invention mainly provides a computer-based system for providing ranked recommendation data. The system comprises: (i) a database layer having a database for storing data; (ii) a data access layer in communication with the database layer for retrieving and representing data from the database based on processor- executed algorithms from a memory system and in accordance with a view; (iii) a network interface layer in communication with the data access layer for enabling one of communication devices of suitable configurations to retrieve, over a communication network, a set of electronic content items from the database, and to cause one or more electronic content items included in the set of electronic content items to be shared, over the communication network, with another of the communication devices through a communication platform upon the request of the user of the one of the communication devices, wherein the shared one or more electronic content items are at least an indication of recommendation data; (iv) a code generating algorithm which, when executed by the processor from the memory system, is arranged to generate and store in the database a first unique identifier data assigned to data associated with each shared electronic content item included in the set of electronic content items, the first unique identifier data associated with the electronic content items being distinct from one another, a second and third unique identifier data assigned, respectively, to data associated with the one and data associated with the another of the communication devices, and a fourth unique identifier data assigned to data associated with the communication platform; (v) a data aggregating algorithm which, when executed by the processor from the memory system, is arranged to aggregate the first, second, third, and fourth unique identifier data and store in the database one recommendation count for the each electronic content item shared by the user of the one of the communication devices with the user of the another of the communication devices, wherein the recommendation count is generated based on a unique combination of any two or more of the second, third, and fourth unique identifier data corresponding to the first unique identifier data; (vi) a data ranking algorithm which, when executed by the processor from the memory system, is arranged to rank the set of electronic content items according to value of the recommendation count for the each shared electronic content item; and (vii) a data displaying algorithm which, when executed by the processor from the memory system, is arranged to display on a display component of any of the communication devices upon the request of any user thereof the ranked set of electronic content items.
The provision of the recommendation count being generated based the unique combination of any two or more of the second, third, and fourth unique identifier data corresponding to the first unique identifier data not only ensures ranking of the electronic content items serving as recommendation data based on factors that are at least relevant to the purpose, circumstances, and need of the users of the communication devices desiring to access and view the electronic content items but also ensures that the likelihood of fraudulence in view of potential manipulative activities of the human users are prevented from occurring during the recommendation process and, most importantly, that only a minimum amount of investment in terms of both money and people is required. This is so because the disclosed computer-based system of the present invention are arranged to ignore or disregard combinations of said second, third, and fourth unique identifier data corresponding to the first unique identifier data that are not unique or, in other words, are not previously stored in the disclosed database. Put differently, the shared or referred electronic content items having the same attributes are set by said system to be provided with no recommendation count and, consequently, all the data associated with the electronic content items and their attributes may be set to be disregarded by the disclosed computing resources such as the data ranking algorithm, i.e., only the valid recommendation count which is a lightweight data is considered by the same computing resources. This means that even after a long period of using the database in storing all such information, costs for the computing resources including hardware and software and as well as manpower are deemed to be still at the minimum level while the optimization of the performance of the database is ensured. Further, the present invention provides a first computer-implemented method for providing ranked recommendation data, wherein said method comprises: (i) providing a database layer having a database for storing data; (ii) providing a data access layer in communication with the database layer for retrieving and representing data from the database based on processor-executed algorithms from a memory system and in accordance with a view; (iii) providing a network interface layer in communication with the data access layer for enabling one of communication devices of suitable configurations to retrieve, over the communication network, a set of electronic content items from the database, and to cause one or more electronic content items included in the set of electronic content items to be shared, over the communication network, with another of the communication devices through the communication platform upon the request of the user of the one of the communication devices, wherein the shared one or more electronic content items are at least an indication of recommendation data; (iv) generating, by a processor-executed code generating algorithm from the memory system, in the database a first unique identifier data assigned to data associated with each shared electronic content item included in the set of electronic content items, wherein the first unique identifier data associated with the electronic content items are distinct from one another, a second and third unique identifier data assigned, respectively, to data associated with the one and data associated with the another of the communication devices, and a fourth unique identifier data assigned to data associated with the communication platform; (v) aggregating the first, second, third, and fourth unique identifier data and storing, by a processor-executed data aggregating algorithm from the memory system, in the database one recommendation count for the each electronic content item shared by the user of the one of the communication devices with the user of the another of the communication devices, wherein the recommendation count is generated based on a unique combination of any two or more of the second, third, and fourth unique identifier data corresponding to the first unique identifier data; (vi) ranking, by a processor-executed data ranking algorithm from the memory system, in the database the set of electronic content items according to value of the recommendation count for the each shared electronic content item; and (vii) displaying, by a processor-executed data displaying algorithm from the memory system, on a display component of any of the communication devices upon the request of any user thereof the ranked set of electronic content items.
Preferably, the first computer-implemented method further comprises the step of ordering, by a processor-executed data ordering algorithm from the memory system, in the database any two or more of the electronic content items having an identical value of the recommendation count according to lexical value thereof. By alphabetizing the electronic content items, it would be much easier for the users of the communication devices to view the same. It is likewise preferable that the data order algorithm orders in the database the set of electronic content items according to one or more relevance factors. Preferably, the first computer-implemented method further comprises the step of updating, by the processor-executed data ranking algorithm from the memory system, in the database the value of the recommendation count for the each shared electronic content item included in the set of electronic content items each time a successful recommendation count is determined. The updating step ensures that the ranking of the electronic content items is accurate to the change in the value of the recommendation count for each electronic content item. Preferably, the first computer-implemented method further comprises the step of providing a data mining layer in communication with the database layer for finding and analyzing in the database the each electronic content item based on its relevance to the set of electronic content items. The data mining layer may be arranged to include a data analytic algorithm having search query language (SQL) statements and programmatic iteration for retrieving the each electronic content item from the database.
Preferably, the first computer-implemented method further comprises steps of: (i) collecting, by the processor-executed code generating algorithm from the memory system, in the database metadata from external data resources; and (ii) displaying, by the processor-executed data displaying algorithm from the memory system, on a display device of any of the communication devices a further set of electronic content items based on the collected metadata.
Preferably, the first computer-implemented method further comprises step of determining, by the processor-executed code generating algorithm from the memory system, in the database data format of the communication platform. The format of the communication platform may be the basis for assigning the fourth unique identifier data.
Further, the present invention provides a second computer-implemented method for providing ranked recommendation data. This second method is based upon a search of a database and comprises the steps of: (i) receiving, by at least one processor, a query that includes at least one search criterion; (ii) retrieving, by the at least one processor, a set of electronic content items from the database satisfying the at least one search criterion provided by a user of the database; (iii) ranking, by the at least one processor, the retrieved set of electronic content items in an initial ranking order based on relevance factors; (iv) determining, by the at least one processor, value of recommendation count for each electronic content item included in the set of electronic content items and shared in a communication platform from a sender-user's electronic account to a recipient-user's electronic account, wherein the recommendation count is generated based on a unique combination of any two or more of unique identifier data assigned to data associated with the sender-user's electronic account, the recipient-user's electronic account, and the communication platform corresponding to the unique identifier data assigned to data associated with the shared electronic content item; (v) modifying, by the at least one processor, the initial ranking order by applying the determined value of the recommendation count for the each electronic content item included in the set of electronic content items thereby producing a modified ranking order; (vi) providing, by the at least one processor, as search results the retrieved set of electronic contents items in accordance with the modified ranking order.
Further, the present invention provides a computer program product for providing ranked recommendation data based upon a search of a database. This computer program product comprises a non-transitory computer readable storage medium having computer readable program code encoded therein. The computer readable program code is arranged to: (i) retrieve a set of electronic content items from the database satisfying at least one search criterion provided by a user of the database; (ii) rank the retrieved set of electronic content items in an initial ranking order based on relevance factors; (iii) determine value of recommendation count for the each electronic content item included in the set of electronic content items and shared in a communication platform from a sender-user's electronic account to a recipient-user's electronic account, wherein the recommendation count is generated based on a unique combination of any two or more of unique identifier data assigned to data associated with the sender-user's electronic account, the recipient-user's electronic account, and the communication platform corresponding to the unique identifier data assigned to data associated with the shared electronic content item; (iv) modify the initial ranking order by applying the determined value of the recommendation count for the each electronic content item included in the set of electronic content items thereby producing a modified ranking order; (v) provide as search results the retrieved set of electronic contents items in accordance with the modified ranking order.
In accordance with preferred embodiments of the disclosed computer-based system, computer-implemented methods, and computer program product of the present invention, the relevance factors may include frequency of occurrence of the each electronic content item in the set of electronic content items, location data associated with the each electronic content items and generated using a location based service, or semantic values of the electronic content items in relation to one another. It is also preferable that the location-based service may be a wireless communication network, an external positioning method, and Wireless Fidelity (WiFi) access point, that the wireless communication network may include any of a CDMA (Code Division Multiple Access) network, a 3G (Third Generation) network, a 4G/LTE (Fourth Generation/Long Term Evolution) network, a 5G (Fifth Generation) network, and the like, and that the external positioning method may include the use of at least one Global Positioning System (GPS) device.
In accordance with further preferred embodiments of the disclosed system, methods, and product of the present invention, each of the second and the third unique identifier data may be a mobile phone account data, an email account data, a social media account data, or a third party messaging service account data while the communication platform may be an SMS-based application, an MMS based application, a mobile-based application, a web-based application, an electronic mailing application, a social media application, or a third party messaging application. It is also preferable that the communication platform is a peer-to-peer platform, and that the set of electronic content items may include a business listing data, a product catalog data, a service catalog data, an advertisement data, a web page data, a gaming score data, a promotional data, an individual professional data, or any suitable combination thereof.
For the better understanding of the invention and to show how the same may be performed, preferred embodiments thereof will now be described in great detail, by way of non-limiting examples only, with reference to the accompanying drawings. Brief Description of the Drawings
Figure 1 shows a block diagram of a computer-based system, incorporating an illustration of a first computer-implemented method, for providing ranked recommendation data according to preferred embodiments of the invention.
Figure 2 shows a process flow illustrating a second computer-implemented method for providing ranked recommendation data in accordance with one preferred embodiment of the invention.
Figure 3 shows a process flow for ranking a set of web pages in accordance with one preferred embodiment of the invention.
Figure 4 shows a process flow for multi-level ranking of search engine results in accordance with one preferred embodiment of the invention.
Figure 5 shows a diagram of possible combinations of unique identifiers employed in the system and methods of the invention according to preferred embodiments.
Figure 6 shows an illustration of a computer program product for providing ranked recommendation data based upon a search of a database in accordance with one preferred embodiment of the invention.
Figure 7 shows an illustrative referral message delivery process in accordance with preferred embodiments of the system of the invention.
Detailed Description of the Preferred Embodiments
Referring to Figure 1, there is shown a block diagram of a system for providing ranked recommendation data according to an embodiment of the present invention, wherein said system is computer-based. The computer-based system, which is designated by reference numeral 100 generally includes at least a database layer 102 having a database 104, a data access layer 106, and a network interface layer 108. The database layer 102 provides computer-executable programs arranged to hold and query data tables and lookup tables contained in the database 104 which is preferably of a relational database type. Various operations in the database 104 can be made through the database layer 102, and they include dynamic storage and deletion of data and as well as modification of previously added data in the database 104. The database layer 102 responds to requests for information from the data access layer 106 based on demand and on predetermined database access protocols. The data access layer 106, which is in communication with the database layer 102, provides various services relevant to data management. These services include, for example, extracting of data from the database 104 and then processing and reformatting them in response to requests for data by various applications, local services or third party services. Aside from retrieving and representing data from the database 104 based on algorithms executable by at least one processor 110 from a memory system 112 and in accordance with a view, additional capabilities of the data access layer 106 may range from reading, writing, and deleting data to caching the data for extended periods of time which is very useful in instances where data communication between the database layer 102 and the data access layer 106 fails. An electronic address 114 is likewise provided in the system 100 and is accessible, over a communication network 116, to each of user-operable communication devices 118, 120 of suitable configurations for communications between each of the communication devices 118, 120 and the database 104 and for enabling users of the communication devices 118, 120 to view the data retrieved and represented by the data access layer 106 through a communication platform 122.
The network interface layer 108, moving forward, is in communication with the data access layer 106 for enabling one of the communication devices 118 to retrieve, over the communication network 116 which is preferably an Internet Protocol (IP) network, a set of electronic content items 124 from the database 104, and to cause one or more electronic content items included in the set of electronic content items 124 to be shared, over the communication network 116, with another of the communication devices 120 using the communication platform 122 upon the request of the user of the one of the communication devices 118, wherein the shared one or more electronic content items 124 are at least an indication of recommendation data. The network interface layer 108 generally interacts directly with the communication platform 122 through the electronic address 114 such that the users of the communication devices 118, 120 are enabled to view, over the communication network 116, the set of electronic content items 124 rendered on the communication platform 122. The set of electronic content items 124 may include items that can be provided by various parties such as merchants, advertisers, and even the users of the communication devices 118, 120. The network interface layer 108 may specifically include at least two sub-layers, namely, a physical sub-layer (not illustrated) and a data link sub-layer (not illustrated). In order to render the set of electronic content items 124 on display components 126, 128 of the communication devices 118, 120, respectively, using the communication platform 122 over the communication network 116, transmission of both signals and data across the communication network 116 is required. The signals are transmitted across the communication network 116 using the physical sub-layer while the data are shared from the database 104 to the communication devices 118, 120 across the communication network 116 using the data link sub-layer. These physical and data link sub-layers define the parameters by which, respectively, signals are transmitted and data are shared. Moreover, the electronic address 114 is employed in the system 100 so as to enable seamless communications over, the communication network 116, between the communication platform 122 and the network interface layer 108. The electronic address 114 is preferably an Internet Protocol (IP) network address. The programs included in and governed by the database layer 102, the data access layer 106, and the network interface layer 108 are all executed by the processor 110 from the memory system 112. Still in Figure 1, the system 100 further includes a code generating algorithm
130 which, when executed by the processor 110 from the memory system 112, is arranged to generate and store in the database 104 a first unique identifier data 124a assigned to data associated with each shared electronic content item included in the set of electronic content items 124, wherein the first unique identifier data 124a corresponding to the data associated with different electronic content items 124 are distinct from one another, a second and third unique identifier data 118a, 120a assigned, respectively, to data associated with the communication devices 118, 120 and a fourth unique identifier data 122a assigned to data associated with the communication platform 122. The code generating algorithm 130 are specifically computer-executable instructions that are arranged to assign the first unique identifier data 124a to the data representing the shared electronic content item included in the set of electronic content items 124, the second unique identifier data 118a to the data representing the communication device 118, the third unique identifier data 120a to the data representing the communication device 120, and the fourth unique identifier data 122a to the data representing the communication platform 122.
The code generating algorithm 130, as can be gleaned from above, relies on the exact information representing each of the electronic content items 124, the communication devices 118, 120, and the communication platform 122. The code generating algorithm 130 preferably generates digital codes which serve as the unique identifier data 124a, 118a, 120a, 122a. These digital codes may be generated when the database 104 receives the information representing each of the electronic content items 124, the communication devices 118, 120, and the communication platform 122 which may occur if and when, for example, the communication device 118 retrieves the set of electronic items 124 from the database 104 over the communication network 116 and share at least one of the electronic content items 124 with the communication device 120 through the communication platform 122. In that particular case, the communication device 118 acts as the sender of the shared electronic content item 124 while the communication device 120 acts as the recipient of the same electronic content item 124.
The digital codes ensure that the unique identifier data 124a, 118a, 120a, 122a will remain consistent for every information to which they are assigned and that they represent, and are arranged in such a manner that they cannot be altered by any unauthorized third party. The digital codes associated with the unique identifier data 124a, 118a, 120a, 122a may be based on the information themselves. For example, if the information associated with the communication device 118 is an email address information such as xxx@xxx.com, then the codes may be the "xxx@xxx.com" itself. Alternatively, pseudo-random numeric or alphanumeric character generation methodologies may be employed in generating the unique identifier data 124a, 118a, 120a, 122a based on the respective information that they represent. Preferably, any of the second and third unique identifier data 118a, 120a is selected from a mobile phone account data, an email account data, a social media account data, and a third party messaging service account data; whereas, the communication platform 122 which is preferably of the peer-to-peer type of platform is selected from an SMS-based application, an MMS based application, a mobile-based application, a web-based application, an electronic mailing application, a social media application, and a third party messaging application.
Still in Figure 1, the system 100 further includes a data aggregating algorithm 132 which, when executed by the processor 110 from the memory system 112, is arranged to aggregate the first, second, third, and fourth unique identifier data 124a, 118a, 120a, 122a and store in the database 104 one recommendation count for the each electronic content item 124 shared by the user of the communication device 118 with the user of the communication device 120. The recommendation count is generated based on a unique combination of any two or more of the second, third, and fourth unique identifier data 118a, 120a, 122a corresponding to the first unique identifier data 124a. The data aggregating algorithm 132 is primarily configured to prevent redundant combination of the first, second, third, and fourth unique identifier data 124a, 118a, 120a, 122a, and to cause the database layer 102 to store in the database 104 only the count, in a lightweight format, that indicates a unique combination of said first, second, third, and fourth identifier data 124a, 118a, 120a, 122a.
A data ranking algorithm 134 is also included in the system 100. When executed by the processor 110 from the memory system 112, the data ranking algorithm 134 is configured to rank the set of electronic content items 124 according to value of the recommendation count for the each shared electronic content item included in the set of electronic content items 124. The data ranking algorithm 134 may be arranged to determine the discrete recommendation count for each electronic content item included in the set of electronic content items 124 through an iterative process and on a periodic basis. The system 100 also includes a data displaying algorithm 136 which, when executed by the processor 110 from the memory system 112, is arranged to display on a display component 126, 128 of any of the communication devices 118, 120 upon the request of any user thereof the ranked set of electronic content items 124.
The processor 110 executing all the computer-executable instructions associated with the database layer 102, the data access layer 106, and the network interface layer 108, the code generating algorithm 130, the data aggregating algorithm 132, the data ranking algorithm 134, and the data displaying algorithm 136 may refer to one or more processors which may include a central processing unit, a memory processing unit, a graphic processing unit, and the like. The processor 110 may be a processor of the general purpose type or a special purpose type. Alternatively, the processor 110 may be hardware suitable for use in purpose-specific digital computing such as a programmable logic controller. The memory system 112 may include one or more computer readable media, each of which containing one or more computer executable instructions, and is preferably a non-volatile type thereby ensuring that electronic data remain stored even when there is no power supply. Some of the non- volatile memories known in the art include random access memory (RAM), magnetic random access memory (MRAM), and ferroelectric random access memory (FRAM). Each of the communication devices 118, 120 may be a desktop computer, a laptop computer, a tablet, a smartphone, a personal digital assistant, and the like, all of which are known to be capable of processing and viewing electronic data such as the set of electronic content items 124 which may include a business listing data, a product catalog data, a service catalog data, an advertisement data, a web page data, a gaming score data, a promotional data, an individual professional data, and the like. Any suitable combination of these data may also constitute the set of electronic content items 124. Although not illustrated in Figure 1, the system 100 preferably comprises a data ordering algorithm which, when executed by the processor 110 from the memory system 112, is arranged to order the set of electronic content items 124 according to one or more relevance factors selected from frequency of occurrence of the each electronic content item in the set of electronic content items 124, location data associated with the each electronic content items 124 and generated using a location based service, and semantic values of the electronic content items 124 in relation to one another. The location-based service may include a wireless communication network, an external positioning method, or a Wireless Fidelity access point. Possible selections for the wireless communication network may include a CDMA (Code Division Multiple Access) network, a 3G (Third Generation) network, a 4G/LTE (Fourth Generation/Long Term Evolution) network, a 5G (Fifth Generation) network, and the like. For the external positioning method, the use of at least one Global Positioning System (GPS) device may be included in the system 100. It is likewise preferable that the system 100 further comprises a data mining layer which includes a data analytic algorithm having search query language (SQL) statements and programmatic iteration for enabling the users of the communication devices 118, 120 to retrieve the each electronic content item 124 from the database 104 instantaneously. The data analytic algorithm may be arranged to adopt a range of database solutions including, but not limited to, MySQL (an open-source relational database management system), MongoDB (an open- source NoSQL database), PostgreSQL (an object-relational database management system (ORDBMS), and Redis (an in-memory database). The aforementioned data ordering algorithm which, when executed by the processor 110 from the memory system 112, is further arranged to order any two or more of the electronic content items 124 having an identical value of the recommendation count according to lexical value thereof. This refers to ordering the electronic content items 124 in an alphabetical order. By alphabetizing the electronic content items 124, it would be much easier for the users of the communication devices 118, 120 to view the same electronic content items 124.
Still in Figure 1, there is further shown a first computer- implemented method which corresponds to system 100 for providing ranked recommendation data. The steps of the method are indicated by encircled uppercase letters A - G. The method starts with encircled uppercase letter "A" by providing the database layer 102 having the database 104 for storing data and proceeds with encircled uppercase letter "B" by providing the data access layer 106 in communication with the database layer 102 for retrieving and representing data from the database 104 based on processor-executed algorithms from the memory system 112 and in accordance with a view. After which, the step represented by the encircled uppercase letter "C" follows, and this particular step is concerned with providing the network interface layer 108 in communication with the data access layer 106 for enabling the communication device 118 to retrieve, over the communication network 116, the set of electronic content items 124 from the database 104, and to cause one or more electronic content items included in the set of electronic content items 124 to be shared, over the communication network 116, with the communication device 120, which is remotely located from the communication device 118, through the communication platform 122 upon the request of the user of the communication device 118, wherein the shared one or more electronic content items 124 are at least an indication of recommendation data. An electronic address 114 may likewise be provided and can be accessible, over the communication network 116, to each of the communication devices 118, 120 for communications between each of the communication devices 118, 120 and the database 104 and for enabling the users of the communication devices 118, 120 to view the data retrieved and represented by the data access layer 106 through the communication platform 122. At encircled uppercase letter "D," there is shown the subsequent step of generating, by the processor-executed code generating algorithm 130 from the memory system 112, and storing in the database 104 the first unique identifier data 124a assigned to data associated with each shared electronic content item included in the set of electronic content items 124, wherein the first unique identifier data 124a corresponding to the data associated with different electronic content items 124 are distinct from one another, the second and third unique identifier data 118a, 120a assigned, respectively, to the data associated with the communication devices 118, 120, and the fourth unique identifier data 122a assigned to the data associated with the communication platform 122. Thereafter, there is shown the encircled uppercase letter "E" corresponding to the step of aggregating the first, second, third, and fourth unique identifier data 124a, 118a, 120a, 122a and storing, by the processor-executed data aggregating algorithm 132 from the memory system 112, in the database 104 one recommendation count for the each electronic content item 124 shared by the user of the communication device 118 with the user of the communication device 120, wherein the recommendation count is generated based on a unique combination of any two or more of the second, third, and fourth unique identifier data 118a, 120a, 122a corresponding to the first unique identifier 124a. This is followed by second to the last step represented by the encircled uppercase letter "F" and is embodied by ranking, by the processor-executed data ranking algorithm 134 from the memory system 112, in the database 104 the set of electronic content items 124 according to value of the recommendation count for the each shared electronic content item included in the set of electronic content items 124. At a final step represented by the encircled uppercase letter "G," involved is the displaying, by the processor-executed data displaying algorithm 136 from the memory system 112, on a display component 126, 128 of any of the communication devices 118, 120 upon the request of any user thereof the ranked set of electronic content items 124.
The provision of the recommendation count being generated based on the unique combination of any two or more of the second, third, and fourth unique identifier data 118a, 120a, 122a corresponding to the first unique identifier 124a data not only ensures ranking of the electronic content items 124 serving as recommendation data based on factors that are at least relevant to the purpose, circumstances, and need of the users of the communication devices 118, 120 desiring to access and view the electronic content items 124 but also ensures that the likelihood of fraudulence in view of potential manipulative activities of human users are prevented from occurring during the recommendation or referral process and, most importantly, that only a minimum amount of investment in terms of both money and people is required. This is so because the disclosed computer-based system and computer-implemented method of the present invention are arranged to ignore or disregard combinations of said first, second, third, and fourth unique identifier data 124a, 118a, 120a, 122a that are not unique or, in other words, are not previously stored in the disclosed database 104. Put differently, the shared, recommended or referred electronic content items 124 having the same attributes are set by said system and method to be provided with no recommendation count and, consequently, all the data associated with the communication platform 122 and the communication devices 118, 120 and their respective attributes may set to be disregarded by the disclosed computing resources such as the data ranking algorithm 134, i.e., only the recommendation count based on the unique combination of the unique identifier data 124a, 118a, 120a, 122a which are lightweight data is considered by the same computing resources. This means that even after a long period of using the database in storing all such information, costs for the computing resources including hardware and software and as well as manpower are deemed to be still at the minimum level while the optimization of the performance of the database is ensured. Referring to Figure 2, there is shown a process flow by which a second computer-implemented method for providing ranked recommendation data is illustrated in accordance with one preferred embodiment of the present invention. The method starts at block 200 in which it is shown the step of receiving, by at least one processor such as the processor illustrated in Figure 1, a query that includes at least one search criterion. This means that two or more criteria may be provided by a user, and the criteria preferably represent keywords. These keywords form part of the query as search strings. The method subsequently proceeds to block 202 in which disclosed is the step of retrieving, by the processor, a set of electronic content items from a database, as shown in database block 204, satisfying the search criteria provided by the user of the database. The data access layer, as shown in block 206, accomplishes the function of retrieving the electronic content items from the database as shown in the database block 204. After the step in block 202, the method advances to block 208 in which disclosed is the step of ranking, by the processor, the retrieved set of electronic content items in an initial ranking order based on relevance factors. This initial ranking order may be carried out by a data ordering algorithm as shown in block 210 which, when executed by the processor from the memory system, is arranged to order the set of electronic content items according to said relevance factors which may be predetermined and pre- stored in a relevance factor database as shown in database block 212. The relevance factors affecting the initial ranking order may include frequency of occurrence of the each electronic content item in the set of electronic content items, location data associated with the each electronic content items and generated using a location based service, and semantic values of the electronic content items in relation to one another. The location-based service may be a wireless communication network, an external positioning method, or a Wireless Fidelity access point. The wireless communication network may include a CDMA network, a 3G network, a 4G/LTE network, a 5G network, or the like. The external positioning method includes the use of at least one Global Positioning System (GPS) device. After ranking the retrieved set of electronic content items in the initial ranking order as shown in the block 208, the method progressively moves to block 214 showing the step of determining, by the processor, value of recommendation count for each electronic content item included in the set of electronic content items and shared in a communication platform from a sender-user's electronic account to a recipient- user's electronic account, wherein the recommendation count is generated based on a unique combination of any two or more unique identifier data representing data associated with the sender-user's electronic account, the recipient-user's electronic account, and the communication platform corresponding to unique identifier data representing data associated with the shared electronic content item. This step of determining the value of the recommendation count is accomplished by the data aggregating algorithm as shown in block 216. After block 214, the method moves to block 218 showing the step of modifying, by the processor, the initial ranking order by applying the determined value of the recommendation count for the each electronic content item included in the set of electronic content items thereby producing a modified ranking order. Producing the modified ranking order is effected by processor-executed data ranking algorithm as shown in block 220. The method concludes at block 222 showing the final step of providing, by the processor, as search results the retrieved set of electronic contents items in accordance with the modified ranking order. This concluding step may cause the search results to be displayed accordingly as shown in block 224.
Other suitable steps may likewise be incorporated in the above illustrated second method for providing ranked recommendation data in accordance with alternative embodiments of the present invention. In one alternative embodiment of the second method, the second method may comprise the step of ordering, by a processor-executed data ordering algorithm from the memory system, in the database the set of electronic content items according to one or more relevance factors. In another embodiment, the second method may comprise the step of ordering, by the processor-executed data ordering algorithm from the memory system, in the database any two or more of the electronic content items having an identical value of the recommendation count according to lexical value thereof. In a further embodiment, the second method may comprise the step of updating, by the processor-executed data ranking algorithm from the memory system, in the database the value of the recommendation count for the each shared electronic content item included in the set of electronic content items each time a successful recommendation count is determined. In another embodiment, the second method further comprises the step of providing a data mining layer in communication with the database layer for finding and analyzing in the database the each electronic content item based on its relevance to the set of electronic content items., wherein the data mining layer includes a data analytic algorithm having SQL statements and programmatic iteration for retrieving the each electronic content item from the database. In another embodiment, the second method further comprises the steps of: collecting, by the processor-executed code generating algorithm from the memory system, in the database metadata from external data resources; and displaying, by the processor-executed data displaying algorithm from the memory system, on a display device of any of the communication devices a further set of electronic content items based on the collected metadata. These metadata can be any information representing data associated with any of the electronic content items, the sender-user's electronic account, the recipient-user's electronic account, and the communication platform that are available through the communication network and can be stored from the external data resources into the database. For example, metadata associated with any of the sender-user's and recipient-user's electronic accounts may include: demographic information of the user such as name data, age data, location data, gender data, marital status data, and the like; social media information of the user such as social media activity data; downloaded multimedia information such as song data and movie data; and search preference information of the user from a search history of an internet browsing application, among others. In another embodiment, the second method further comprises the step of determining, by the processor-executed code generating algorithm from the memory system, in the database data format of the communication platform. The format of the communication platform may be the basis for assigning the fourth unique identifier data.
Referring to Figure 3, there is shown a process flow for ranking a set of web pages, as illustrative examples of electronic content items, in accordance with a preferred embodiment of the present invention. This process flow is carried out by the data ranking algorithm discussed in full detail in Figure 1. The process flow starts with obtaining data associated with a web page, which is a form of electronic content item, as shown in block 300 from a content database such as that shown in database block 302, and then with assigning of a first unique identifier (UID1) data to the web page as shown in block 304. After which, the process continues to obtain, from the electronic content items database as shown in the block 302, further data associated with a sender acting as a recommender of the web page as shown in block 306, and then with assigning of a second unique identifier (UID2) data to the sender data as shown in block 308. The process then proceeds with obtaining, from the electronic content items database as shown in the block 302, further data associated with a recipient acting as a receiver of the web page recommended by the sender as shown in block 310 and then with assigning of a third unique identifier (UID3) data to the recipient data as shown in block 312. Subsequently, the process continues to obtain, from the electronic content items database as shown in the block 302, further data associated with the communication platform such as email client and more specifically the data format of the email client as shown in block 314, and then with assigning of a fourth unique identifier (UID4) data to the data format as shown in block 316.
Subsequently, the process advances to concatenate the first, second, third, and fourth unique identifier data (e.g., UID1UID2UID3UID4) or simply merging the strings of characters representing each of the first, second, third, and fourth unique identifier data, as shown in block 318. The concatenated or merged first, second, third, and fourth unique identifier data forms a combined or merged strings of characters. The uniqueness of the combination is determined by the process in block 320 by checking if the concatenated or merged first, second, third, and fourth unique identifier data exists in the unique identifier (UID) database such as that represented by database block 322. At decision block 324, it is determined by the process whether or not the concatenated or merged first, second, third, and fourth unique identifier data exists in said database. The existence of the concatenated or merged unique identifier data in the UID database as shown in the block 322 means that the same is no longer unique. In that case, the process proceeds to put the data in garbage or junk as shown in block 326. Otherwise, if the concatenated or merged unique identifier data does not exist in the UID database as shown in the block 322, the process proceeds to generate one recommendation count for the recommended web page and updating the value of recommendation count for the recommended web page as shown in block 328. This updating process requires access to the electronic content item database such as that represented by the database block 302. The process finally concludes at block 330 wherein the set of web pages is ranked taking into consideration the updated value of the recommendation count for the web page belonging to the set of web pages. It should be understood that the illustrated web page data may alternatively be replaced by the aforementioned business listing data, product catalog data, service catalog data, advertisement data, gaming score data, promotional data, an individual professional data, or any suitable combination thereof.
Referring to Figure 4, there is shown a process flow for multi-level ranking of search engine results in accordance with one preferred embodiment of the present invention. The disclosed methods and system of the present invention are well suitable for use in ranking search results that are usually generated by a search engine based upon the keywords used by a user. In providing such search engine results, the illustrated process starts in block 400 by gathering relevance factors from a relevance factor database such as that represented by database block 402. The relevance factors may include frequency of occurrence of a particular search result included in the set of search results, location data associated with a particular search result and generated using a location based service, and semantic values of the search results in relation to one another. The frequency of occurrence of a particular search result included in the set of search results indicates may be calculated using suitable algorithms, and it indicates strong correlation between the particular search result and the remaining search results to which the particular search result belongs. In an illustrative example, if the name of merchant A being engaged with the business of selling art products frequently appears in a list of search results comprising the names of merchants B, C, D, E, F, and G that are likewise engaged in selling art merchandises, for example, then it is likely that there is a strong correlation between merchant A and merchants B, C, D, E, F, and G in terms of supplying the same specific range of art products such as traditional hand paintings to the exclusion of all other merchants that supply a difference range of art products such as printed photographs and posters. The location data associated with each of the search results and generated using a location based service which may be selected from any of a wireless communication network, an external positioning method, and a Wireless Fidelity access point. Taking the external positioning method as an illustrative example, one or more Global Positioning System (GPS) devices may be used in conjunction with the processor of the system of the present invention in order to gather search results that are relevant to the search keywords of the user based on the location of the user. If the system detects, for example, that the user is searching for merchants and that the same user is located in geographical area A based on the geographical location associated with the Internet Protocol (IP) address of the computer used by the user in performing the search or of the network adapters with which the same computer is connected, it will proceed to identify the listing of merchants whose business addresses correspond to geographical locations that are proximate to the area A. Searching for business addresses and their coordinates within a certain radius with the geographical location of area A as the originating reference point can be accomplished using suitable algorithms cooperating with any standard GPS device coupled to the system of the present invention. The semantic values of the search results in relation to one another provides relevance of the search results based on meaning of a keyword or a group of keywords. Semantic searching is well known in the art for enhancing the value of search results with respect to purpose or intent of the user desiring to get access to internet-based information, and may perform indexing operations for indexing meanings of, for example, a sentence containing two or more keywords. The syntactical structure of the sentence may be analyzed by the system of the present invention in order to provide relevant search results on the meaning of the sentence.
After gathering the above mentioned relevance factors, the process moves to block 404, wherein the search results are filtered by applying one or more of the relevance factors from the relevance factors database such as that represented by the database block 402. Once the search results have been filtered successfully, the process advances to block 406 wherein the recommendation count tagged to each of the search results is gathered, and then to block 408 wherein the search results are ranked or sorted, preferably from highest to lowest, according to the value of recommendation count tagged to each of the search results. Upon successful ranking of the search results, the process progresses to decision block 410 wherein it is determined whether there are two or more of the ranked search results having the same value of recommendation count. If there is no such similar value of recommendation count for any two or more of the search results, then the process is terminated and, in which case, the search results ranked according to the value of the recommendation count for each of the search results are final. Otherwise, the process continues to block 412 wherein the lexical value of each of the search results is determined and then to block 414 wherein the search results are further arranged based on the lexical value of each of the search results or, in other words, based on alphabetical order. The block 414 concludes the process.
Referring to Figure 5, there is shown a diagram of possible combinations of unique identifier data employed in the system and methods of the present invention according to preferred embodiments. As described above, at least four unique identifier data may be generated to represent various data. Specifically, the first unique identifier data (UID1) corresponds to data associated with an electronic content item, the second unique identifier data (UID2) to the data the associated with a first communication device such as a sender-user's electronic account, the third unique identifier data (UID3) to the data associated with a second communication device such as a recipient-user's electronic account, and the fourth unique identifier data (UID4) to the data associated with the communication platform such as an email client account. It is highly preferable that the system and methods of the present invention make use of the unique combination of all the UID2, UID3, and UID4 corresponding to UID1, as shown in block 500. It should be understood however that a unique combination of two or three of UIDl, UID2, UID3, and UID4 may also be employed. The unique combinations of three UIDs are shown in blocks 502, 504, and 506 while the unique combinations of two UIDs are shown in blocks 508, 510, and 512. Referring to Figure 6, there is shown a computer program product for providing ranked recommendation data based upon a search of a database in accordance with one preferred embodiment of the present invention. The computer program product 600 comprises a non-transitory computer readable storage medium 602 having computer readable program code 604 encoded therein, wherein the computer readable program code 604 is arranged to perform the various functions. The first function, as shown in block 604a, is concerned with the retrieval of a set of electronic content items from a database satisfying at least one search criterion provided by a user of the database. The second function, as shown in block 604b, deals with ranking the retrieved set of electronic content items in an initial ranking order based on relevance factors. The third function, as shown in block 604c, serves to determine value of recommendation count for each electronic content item included in the set of electronic content items and shared in a communication platform from a sender-user's electronic account to a recipient-user's electronic account, wherein the recommendation count is generated based on a unique combination of any two or more unique identifier data representing data associated with the sender-user's electronic account, the recipient-user's electronic account, and the communication platform corresponding to unique identifier data representing data associated with the shared electronic content item. The fourth function, as shown in block 604d, deals with modifying the initial ranking order by applying the determined value of the recommendation count for the each electronic content item included in the set of electronic content items thereby producing a modified ranking order. The fifth and final function, as shown in block 604e, serves to provide as search results the retrieved set of electronic contents items in accordance with the modified ranking order. The relevance factors included in the computer program product 600 may either be a frequency of occurrence of the each electronic content item in the set of electronic content items, a location data associated with the each electronic content items and generated using a location based service, or semantic values of the electronic content items in relation to one another.
Referring to Figure 7, there is shown an illustrative referral message delivery process in accordance with the system of the present invention. This illustrative referral message delivery process is preferably implemented using a mobile-based application. The delivery process starts at block 800 wherein the system presents to the sender-user the listing of, for example, businesses to refer. At subsequent block 802, the system receives the selected business by the sender-user. At block 804, the system presents to the sender-user the available referral format. At decision blocks 806, 808, 810, and 812, the system iteratively determines the referral format chosen by the sender-user. At block 806 alone, if the system receives from the sender-user an indication of, for example, an in-application chat referral format, then the process moves to block 814 wherein the system prompts the sender-user to choose or enter a recipient-user of the in-application chat. At block 808 alone, if the system receives from the sender-user an indication of, for example, a short messaging service (SMS) referral format, then the process moves to block 816 wherein the system prompts the sender-user to choose or enter a recipient-user of the SMS. At block 810 alone, if the system receives from the sender-user an indication of, for example, electronic mail referral format, then the process moves to block 818 wherein the system prompts the sender-user to choose or enter a recipient-user of the electronic mail. At block 812 alone, if the system receives from the sender-user an indication of, for example, social media format, then the process moves to block 820 wherein the system prompts the sender-user to choose or enter a recipient-user of the social media account.
The block 814 is followed by block 822 wherein the system initiates sending of the referral message to a module for in-application chat and then by block 824 wherein the referral message is sent to the recipient-user via the in-application chat module. The block 816 is followed by block 826 wherein the system initiates sending of the referral message to SMS carrier and then by block 828 wherein the referral message is sent to the recipient-user of via the SMS carrier. The block 818 is followed by block 830 wherein the system initiates sending of the referral message to email client and then by block 832 wherein the referral message is sent to the recipient-user via the email client. The block 820 is followed by block 834 wherein the system initiates opening of a third party social media application and then by block 836 wherein the referral message is delivered to the recipient-user by displaying the message to a social media page associated with the opened third party social media application. At decision block 838, the system determines whether the sending of the referral message to any recipient-user using any format is successful. If the sending of the referral message is unsuccessful, the system prompts the sender-user with an error message as shown in block 840 and renders an invalid recommendation count as shown in block 842. Otherwise, if the sending of the referral message is successful, the system further determines at decision block 844 whether the combination of the data associated with the sender-user, the format, and the recipient-user is unique. If said combination is not unique, then the system renders an invalid recommendation count as shown in the block 842. If said combination is unique, the system renders a valid recommendation count and subsequently store in the database, as shown in database block 846, one valid recommendation count for each of unique combinations of data associated with the listed and selected business, the sender-user, the chosen or entered recipient-user, and the selected format. Accessing or viewing the recommended business by the recipient-user may or may not be a pre-requisite for the system to generate the recommendation count based on the unique combination of the unique identifier data. In the illustrated delivery process, however, it is preferable that the recommendation is generated as soon as the referral message is delivered to the recipient-user's electronic account. In other words, the system does not require the recipient-user to access or view the referred message before a successful recommendation count can be generated and stored in the database.
Appropriate pseudo-codes may be developed to provide the illustrative referral message delivery process depicted in Figure 7. According to one embodiment, an example of a referral ranking pseudo-code suitable for use in the aforementioned referral message delivery process is shown below:
Inputs:
LIST_OF_REFERRALS = [ company_id, referred_by_user_id,
referred_to_user_id ]
LIST_OF_COMPANIES = [ company_id, trade_name, ... ] Procedure:
RETRIEVE LIS T_OF_REFERRALS FROM DATABASE
RETRIEVE LIST_OF_COMPANIES FROM DATABASE
LET COUNT_OF_REFERRALS = [company_id, trade_name (FROM
LIST_OF_COMPANIES), C OUNT(LIS T_OF_REFERR ALS by
company_id)] SORT COUNT_OF_REFERRALS BY COUNT(LIST_OF_REFERRALS) IN DESCENDING ORDER
Output:
SORTED COUNT_OF_REFERRALS = [ company_id, trade_name, referral_count ] (in descending order)
Meanwhile, in one embodiments, an example of a referral pseudo-code suitable for use in the aforementioned referral message delivery process is shown below:
Inputs:
REFERRAL = [ company_id, referred_by_user_id, referred_to_user_id, referral_channel ]
— Where: referral_channel = { Facebook I Twitter I Chat I Email I SMS }
Procedure:
READ REFERRAL FROM USER
RETRIEVE LIS T_OF_REFERR ALS FROM DATABASE
IF REFERRAL DOES NOT EXIST IN LIST_OF_REFERRALS THEN /* make sure that all combination of referral info does not exist in database before adding it to list of referrals */
ADD REFERRAL TO LIS T_OF_REFERR ALS
SAVE LIS T_OF_REFERR ALS TO DATABASE
END IF Outputs:
New Referral in List of Referrals (if not yet existing in the list)
It should be understood that other pseudo-codes may be alternatively or additionally developed to provide the aforementioned referral message delivery process or any equivalent thereof.

Claims

Claims
1. A computer-based system for providing ranked recommendation data, the system comprising: a database layer having a database for storing data; a data access layer in communication with the database layer for retrieving and representing data from the database based on processor-executed algorithms from a memory system and in accordance with a view; a network interface layer in communication with the data access layer for enabling one of user-operable communication devices of suitable configurations to retrieve, over a communication network, a set of electronic content items from the database, and to cause one or more electronic content items included in the set of electronic content items to be shared, over the communication network, with another of the communication devices through a communication platform upon the request of the user of the one of the communication devices, wherein the shared one or more electronic content items are at least an indication of recommendation data; a code generating algorithm which, when executed by the processor from the memory system, is arranged to generate and store in the database a first unique identifier data assigned to data associated with each shared electronic content item included in the set of electronic content items, the first unique identifier data associated with the electronic content items being distinct from one another, a second and third unique identifier data assigned, respectively, to data associated with the one and data associated the another of the communication devices, and a fourth unique identifier data assigned to data associated with the communication platform; data aggregating algorithm which, when executed by the processor from the memory system, is arranged to aggregate the first, second, third, and fourth unique identifier data and store in the database one recommendation count for the each electronic content item shared by the user of the one of the communication devices with the user of the another of the communication devices, the recommendation count being generated based on a unique combination of any two or more of the second, third, and fourth unique identifier data corresponding to the first unique identifier data; a data ranking algorithm which, when executed by the processor from the memory system, is arranged to rank the set of electronic content items according to value of the recommendation count for the each shared electronic content item; and a data displaying algorithm which, when executed by the processor from the memory system, is arranged to display on a display component of any of the communication devices upon the request of any user thereof the ranked set of electronic content items.
The computer-based system according to claim 1, further comprising a data ordering algorithm which, when executed by the processor from the memory system, is arranged to order the set of electronic content items according to one or more relevance factors.
The computer-based system according to claim 2, the data ordering algorithm which, when executed by the processor from the memory system, is arranged to order any two or more of the electronic content items having an identical value of the recommendation count according to lexical value thereof.
The computer-based system according to claim 2, wherein the relevance factors include any of the following: frequency of occurrence of the each electronic content item in the set of electronic content items; (ii) location data associated with the each electronic content items and generated using a location based service; and (iii) semantic values of the electronic content items in relation to one another.
5. The computer-based system according to claim 1, further comprising a data mining layer which includes a data analytic algorithm having SQL statements and programmatic iteration for enabling the users of the communication devices to retrieve the each electronic item from the database.
6. The computer-based system according to claim 1, wherein any of the second and third unique identifier data is selected from any of the following: mobile phone account data, email account data, social media account data, and third party messaging service account data.
7. The computer-based system according to claim 1, wherein the communication platform is selected from any of the following: an SMS -based application, an MMS based application, a mobile-based application, a web-based application, an electronic mailing application, a social media application, and a third party messaging application.
8. A computer-implemented method for providing ranked recommendation data, the method comprising: providing a database layer having a database for storing data; providing a data access layer in communication with the database layer for retrieving and representing data from the database based on processor- executed algorithms from a memory system and in accordance with a view; providing a network interface layer in communication with the data access layer for enabling one of user-operable communication devices of suitable configurations to retrieve, over a communication network, a set of electronic content items from the database, and to cause one or more electronic content items included in the set of electronic content items to be shared, over the communication network, with another of the communication devices through the communication platform upon the request of the user of the one of the communication devices, wherein the shared one or more electronic content items are at least an indication of recommendation data; generating and storing, by a processor-executed code generating algorithm from the memory system, in the database a first unique identifier data assigned to data associated with each shared electronic content item included in the set of electronic content items, the first unique identifier data associated with the electronic content items being distinct from one another, a second and third unique identifier data assigned, respectively, to data associated with the one and data associated with the another of the communication devices, and a fourth unique identifier data assigned to data associated with the communication platform; aggregating the first, second, third, and fourth unique identifier data and storing, by a processor-executed data aggregating algorithm from the memory system, in the database one recommendation count for the each electronic content item shared by the user of the one of the communication devices with the user of the another of the communication devices, the recommendation count being generated based on a unique combination of any two or more of the second, third, and fourth unique identifier data corresponding to the first unique identifier; ranking, by a processor-executed data ranking algorithm from the memory system, in the database the set of electronic content items according to value of the recommendation count for the each shared electronic content item; and
displaying, by a processor-executed data displaying algorithm from the memory system, on a display component of any of the communication devices upon the request of any user thereof the ranked set of electronic content items.
The computer-implemented method according to claim 8, further comprising the step of ordering, by a processor-executed data ordering algorithm from the memory system, in the database the set of electronic content items according to one or more relevance factors.
10. The computer-implemented method according to claim 8, further comprising the step of ordering, by a processor-executed data ordering algorithm from the memory system, in the database any two or more of the electronic content items having an identical value of the recommendation count according to lexical value thereof.
11. The computer-implemented method according to claim 8, further comprising the step of providing a data mining layer in communication with the database layer for finding and analyzing in the database the each electronic content item based on its relevance to the set of electronic content items.
12. The computer- implemented method according to claim 11, wherein the data mining layer includes a data analytic algorithm having SQL statements and programmatic iteration for retrieving the each electronic content item from the database.
13. The computer-implemented method according to claim 8, further comprising the steps of: collecting, by the processor-executed code generating algorithm from the memory system, in the database metadata from external data resources; and displaying, by the processor-executed data displaying algorithm from the memory system, on a display device of any of the communication devices a further set of electronic content items based on the collected metadata.
14. A computer-implemented method for providing ranked recommendation data based upon a search of a database, the method comprising: receiving, by at least one processor, a query that includes at least one search criterion; retrieving, by the at least one processor, a set of electronic content items from the database satisfying the at least one search criterion provided by a user of the database; ranking, by the at least one processor, the retrieved set of electronic content items in an initial ranking order based on relevance factors; determining, by the at least one processor, value of recommendation count for each electronic content item included in the set of electronic content items and shared in a communication platform from a sender-user's electronic account to a recipient-user's electronic account, wherein the recommendation count is generated based on a unique combination of any two or more unique identifier data representing data associated with the sender-user's electronic account, the recipient-user's electronic account, and the communication platform corresponding to unique identifier data representing data associated with the shared electronic content item; modifying, by the at least one processor, the initial ranking order by applying the determined value of the recommendation count for the each electronic content item included in the set of electronic content items thereby producing a modified ranking order; and providing, by the at least one processor, as search results the retrieved set of electronic contents items in accordance with the modified ranking order.
A computer program product for providing ranked recommendation data based upon a search of a database, the computer program product comprising a non-transitory computer readable storage medium having computer readable program code encoded therein, the computer readable program code being arranged to: retrieve a set of electronic content items from the database satisfying at least one search criterion provided by a user of the database; rank the retrieved set of electronic content items in an initial ranking order based on relevance factors; determine value of recommendation count for each electronic content item included in the set of electronic content items and shared in a communication platform from a sender-user's electronic account to a recipient-user's electronic account, wherein the recommendation count is generated based on a unique combination of any two or more unique identifier data representing data associated with the sender-user's electronic account, the recipient-user's electronic account, and the communication platform corresponding to unique identifier data representing data associated with the shared electronic content item; modify the initial ranking order by applying the determined value of the recommendation count for the each electronic content item included in the set of electronic content items thereby producing a modified ranking order; and provide as search results the retrieved set of electronic contents items in accordance with the modified ranking order.
PCT/IB2014/065108 2014-10-07 2014-10-07 A computer-based system, computer-implemented methods, and a computer program product for providing ranked recommendation data WO2016055832A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/IB2014/065108 WO2016055832A1 (en) 2014-10-07 2014-10-07 A computer-based system, computer-implemented methods, and a computer program product for providing ranked recommendation data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/IB2014/065108 WO2016055832A1 (en) 2014-10-07 2014-10-07 A computer-based system, computer-implemented methods, and a computer program product for providing ranked recommendation data

Publications (1)

Publication Number Publication Date
WO2016055832A1 true WO2016055832A1 (en) 2016-04-14

Family

ID=51897399

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/IB2014/065108 WO2016055832A1 (en) 2014-10-07 2014-10-07 A computer-based system, computer-implemented methods, and a computer program product for providing ranked recommendation data

Country Status (1)

Country Link
WO (1) WO2016055832A1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090307344A1 (en) 2008-06-04 2009-12-10 Kaplan Yuval Web page ranking method and system based on user referrals
EP2750054A1 (en) * 2012-12-26 2014-07-02 HTC Corporation Content recommendation method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090307344A1 (en) 2008-06-04 2009-12-10 Kaplan Yuval Web page ranking method and system based on user referrals
EP2750054A1 (en) * 2012-12-26 2014-07-02 HTC Corporation Content recommendation method

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ASIM ANSARI ET AL: "Internet Recommendation Systems", 1 July 1999 (1999-07-01), USA, pages 1 - 42, XP055194438, Retrieved from the Internet <URL:http://www.haas.berkeley.edu/Courses/Spring2000/BA269D/AnsariEssegaierKohli99.pdf> [retrieved on 20150609] *
JIE BAO ET AL: "Location-based and preference-aware recommendation using sparse geo-social networking data", ADVANCES IN GEOGRAPHIC INFORMATION SYSTEMS, ACM, 2 PENN PLAZA, SUITE 701 NEW YORK NY 10121-0701 USA, 6 November 2012 (2012-11-06), pages 199 - 208, XP058010687, ISBN: 978-1-4503-1691-0, DOI: 10.1145/2424321.2424348 *

Similar Documents

Publication Publication Date Title
CN107172151B (en) Method and device for pushing information
US10387505B2 (en) Generating advertisements using functional clusters
US9424247B1 (en) Associating one or more terms in a message trail with a task entry
US10372791B2 (en) Content customization
US8700540B1 (en) Social event recommendations
US9183515B2 (en) Share box for endorsements
US9111291B2 (en) System and method for providing sponsored applications in email
US9064212B2 (en) Automatic event categorization for event ticket network systems
US20110082848A1 (en) Systems, methods and computer program products for search results management
US20150186841A1 (en) Providing steps for a product return
EP2854048B1 (en) Method of operating a mobile telecommunications device
KR20190114016A (en) Dynamically loading contextual ontologies for predictive typing
CN105324771A (en) Personal search result identifying a physical location previously interacted with by a user
CN108369709A (en) Network-based ad data service delay reduces
EP2622515A1 (en) Collecting and presenting information
US11263664B2 (en) Computerized system and method for augmenting search terms for increased efficiency and effectiveness in identifying content
WO2016101811A1 (en) Information arrangement method and apparatus
US20130091130A1 (en) Systems and methods that utilize preference shields as data filters
CN105359140A (en) Variable search query vertical access
CN105162697A (en) Microblog system and data control method thereof
EP3465586A1 (en) Providing travel or promotion based recommendation associated with social graph
CN107924413A (en) Bifurcated is searched for
US20160239533A1 (en) Identity workflow that utilizes multiple storage engines to support various lifecycles
US20230281695A1 (en) Determining and presenting information related to a semantic context of electronic message text or voice data
US20170161816A1 (en) Creating secure social applications with extensible types

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14796901

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14796901

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 14796901

Country of ref document: EP

Kind code of ref document: A1

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 02.11.2017)