US9449056B1 - Method and system for creating and updating an entity name alias table - Google Patents
Method and system for creating and updating an entity name alias table Download PDFInfo
- Publication number
- US9449056B1 US9449056B1 US13666760 US201213666760A US9449056B1 US 9449056 B1 US9449056 B1 US 9449056B1 US 13666760 US13666760 US 13666760 US 201213666760 A US201213666760 A US 201213666760A US 9449056 B1 US9449056 B1 US 9449056B1
- Authority
- US
- Grant status
- Grant
- Patent type
- Prior art keywords
- entity
- name
- data
- search
- string
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active, expires
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRICAL DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/30—Information retrieval; Database structures therefor ; File system structures therefor
- G06F17/30286—Information retrieval; Database structures therefor ; File system structures therefor in structured data stores
- G06F17/30386—Retrieval requests
- G06F17/30424—Query processing
- G06F17/30533—Other types of queries
- G06F17/30539—Query processing support for facilitating data mining operations in structured databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRICAL DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/30—Information retrieval; Database structures therefor ; File system structures therefor
- G06F17/3061—Information retrieval; Database structures therefor ; File system structures therefor of unstructured textual data
- G06F17/30634—Querying
- G06F17/30657—Query processing
- G06F17/30675—Query execution
Abstract
Description
In accordance with one embodiment, a system and method for creating an entity name alias table includes obtaining initial identification data for one or more entities representing a list or table of known names, and/or aliases, associated with one or more entities.
In one embodiment, historical entity name search data is obtained representing entity names entered by one or more searching parties in an attempt to identify, and/or search for, one or more entities, and/or data associated with the one or more entities.
In accordance with one embodiment, a search time window is defined. In one embodiment, all the historical entity name search data entered by the searching parties during the search time window is obtained and the historical entity name search data entered by each specific individual searching party in the search time window is aggregated. In one embodiment, for each searching party, the aggregated historical entity name search data entered during the search time window is analyzed to identify pairs of potentially related entity name searches requested/made during the search time window, e.g., to identify pairs of potentially related entity name searches that represent two attempts by the same searching party to identify, and/or search for, the same entity.
In one embodiment, when a pair of potentially related entity name searches made by the same searching party in the search time window are identified, the data representing the potentially related entity name searches is analyzed and/or compared with the initial identification data to identify a matched entity name in the list of known names, and/or aliases, represented by the initial identification data that matches one of the entity names of the pair of potentially related entity name searches made by the searching party in the search time window.
In one embodiment, if a matched entity name in the list of known names, and/or aliases, represented by the initial identification data matches one of the entity names of the pair of potentially related entity name searches made by the searching party in the search time window, both of the entity names of the pair of potentially related entity name searches made by the searching party in the search time window are added to an alias list or table associated with the matched entity name.
Common reference numerals are used throughout the FIGS. and the detailed description to indicate like elements. One skilled in the art will readily recognize that the above FIGS. are examples and that other architectures, modes of operation, orders of operation and elements/functions can be provided and implemented without departing from the characteristics and features of the invention, as set forth in the claims.
Embodiments will now be discussed with reference to the accompanying FIGS., which depict one or more exemplary embodiments. Embodiments may be implemented in many different forms and should not be construed as limited to the embodiments set forth herein, shown in the FIGS., and/or described below. Rather, these exemplary embodiments are provided to allow a complete disclosure that conveys the principles of the invention, as set forth in the claims, to those of skill in the art.
In accordance with one embodiment, a system and method for creating an entity name alias table includes a process for creating an entity name alias table implemented, at least in part, by one or more processors associated with one or more computing systems.
As used herein, the term “computing system”, includes, but is not limited to, a desktop computing system; a portable computing system; a mobile computing system; a laptop computing system; a notebook computing system; a tablet computing system; a workstation; a server computing system; a mobile phone; a smart phone; a wireless telephone; a two-way pager; a Personal Digital Assistant (PDA); a media player, i.e., an MP3 player and/or other music and/or video player; an Internet appliance; or any device that includes components that can execute all, or part, of any one of the processes and/or operations as described herein. In addition, as used herein, the term computing system, can denote, but is not limited to, systems made up of multiple desktop computing systems; portable computing systems; mobile computing systems; laptop computing systems; notebook computing systems; tablet computing systems; workstations; server computing systems; smart phones; wireless telephones; two-way pagers; Personal Digital Assistants (PDAs); media players; Internet appliances; or any devices that can be used to perform the processes and/or operations as described herein.
In one embodiment, one or more computing systems are connected by one or more communications channels, such as, but not limited to: any general network, communications network, or general network/communications network system; a cellular network; a wireless network; a combination of different network types; a public network; a private network; a satellite network; a cable network; or any other network capable of allowing communication between two or more computing systems, as discussed herein, and/or available or known at the time of filing, and/or as developed after the time of filing.
As used herein, the term “network” includes, but is not limited to, any network or network system such as, but not limited to, a peer-to-peer network, a hybrid peer-to-peer network, a Local Area Network (LAN), a Wide Area Network (WAN), a public network, such as the Internet, a private network, a cellular network, any general network, communications network, or general network/communications network system; a wireless network; a wired network; a wireless and wired combination network; a satellite network; a cable network; any combination of different network types; or any other system capable of allowing communication between two or more computing systems, whether available or known at the time of filing or as later developed.
In accordance with one embodiment, the process for creating an entity name alias table is part of, implemented by, and/or otherwise associated with, one or more data management systems, such as, but not limited to, a financial management system.
Herein, a financial management system can be, but is not limited to, any data management system implemented on a computing system and/or accessed through a network that gathers financial data, including financial transactional data, from one or more sources and/or has the capability to analyze and categorize at least part of the financial data.
For instance, financial management systems include, but are not limited to: computing system implemented, and/or online, personal and/or business financial management systems, packages, programs, modules, or applications; computing system implemented, and/or online, personal and/or business tax preparation systems, packages, programs, modules, or applications; computing system implemented, and/or online, personal and/or business accounting and/or invoicing systems, packages, programs, modules, or applications; and various other personal and/or business electronic data management systems, packages, programs, modules, or applications, whether known at the time of filling or as developed later.
In one embodiment, initial identification data for one or more entities is obtained. Herein the term “entity” includes but is not limited to, any individual; party; group of individuals or parties; organization; merchant; business; institution; corporation, or other legal entity. For instance, as a specific illustrative example, in one embodiment, the term “entity” includes a financial institution such as a bank, credit card company, credit union, or any other financial institution as discussed herein, and/or as known in the art at the time of filing, and/or as recognized after the time of filing.
In one embodiment, the initial identification data for one or more entities is data representing a list, or table, or any other data organizational scheme, of known names, and/or aliases, associated with one or more entities. For example, as a specific illustrative example, in one embodiment, the initial identification data for one or more entities is a list of names and associated aliases for one or more financial institutions.
In one embodiment, the initial identification data for one or more entities is an initial implementation of an entity name alias table, including an alias list or table associated with the matched entity name, provided prior to modification by a current application of the process for creating an entity name alias table. In one embodiment, the initial identification data for one or more entities is stored in, or on, one or more memories, computing systems, networks, and/or databases using any method, means, process, or procedure, as discussed herein, and/or as known in the art at the time of filing, and/or as developed/made available after the time of filing.
As used herein, the term “database” includes, but is not limited to, any data storage mechanism known at the time of filing, or as developed thereafter, such as, but not limited to, a hard drive or memory; a designated server system or computing system, or a designated portion of one or more server systems or computing systems; a server system network; a distributed database; or an external and/or portable hard drive. Herein, the term “database” can refer to a dedicated mass storage device implemented in software, hardware, or a combination of hardware and software. Herein, the term “database” can refer to a web-based function. Herein, the term “database” can refer to any data storage means that is part of, or under the control of, any computing system, as discussed herein, known at the time of filing, or as developed thereafter.
Many data processing systems provide data associated with a given entity, such as the entity's mailing address, that is stored in a memory location associated with the entity's name. In these instances, a searching party can access the data associated with a given entity by entering entity name search data that matches the entity's name as listed. However, entity names can often be associated with multiple versions of entity name search data. Consequently, currently, alias tables listing entity names, and/or logical aliases for the entity names, e.g., entity name search data deemed to be logically associated with the entity names, must be largely manually created, maintained, and updated. This currently is a resource intensive and very expensive process.
As a more specific illustrative example, some financial management systems have an associated financial institution database that includes a list of financial institutions and their associated data, such as mailing addresses, etc. In these cases, a searching party can access the financial institution data, and use it to auto-fill various data entry fields within the financial management system, by providing the correct entity name search data associated with the financial institution, e.g., by providing entity name search data that matches the entity name listed. However, many financial institution's names can be represented by slightly different entity name search data.
For instance, a searching party can enter entity name search data for bank whose name in the entity name list/table is “Cash*One” as “Cash 1”, or “$1”, or “$one”, or “cashone” or as “cash-one”, or as the technically correct “cash*one”. In addition, the searching party may enter entity name data with a typo, misspelling, or transposition of letters.
As noted, to address this issue, some financial management systems include alias tables listing financial institution names and logical alias for the financial institution names, e.g., logical financial institution name search data associated with the financial institution names in initial identification data. As also noted above, these alias tables must currently be largely manually created, maintained, and updated which is a resource intensive and very expensive process. In addition, currently, even when the resources are devoted to creating an alias table, the alias table typically does not cover instances where the searching party may enter entity name search data with a typo, misspelling, or transposition of letters.
To help address the issues described above, in one embodiment, historical entity name search data is obtained. In one embodiment, the historical entity name search data represents entity names/data entered by one or more searching parties in an attempt to identify, and/or search for, one or more entities, and/or data associated with the one or more entities.
In one embodiment a search time window is defined. In various embodiments, the search time window can be, but is not limited to, a window of a few seconds, a few minutes, an hour, multiple hours, a day, or even multiple days. In one embodiment, the search time window period is chosen to attempt to limit the search time window to an interval of time during which a searching party is likely to attempt to make multiple related entity name searches that represent two or more attempts by the searching party to identify, and/or search for, the same entity.
In one embodiment, all the historical entity name search data entered by the searching parties during the search time window is obtained. In one embodiment, the historical entity name search data entered by the searching parties during the search time window is then analyzed by one or more processors associated with one or more computing systems to identify all the historical entity name search data entered by each specific individual searching party in the search time window. In one embodiment, all the historical entity name search data entered by an individual searching party in the search time window is then aggregated.
In one embodiment, for each searching party, the aggregated historical entity name search data entered during the search time window by that searching party is analyzed by one or more processors associated with one or more computing systems to identify entity name search data entered by the searching party representing pairs of potentially related entity name searches requested/made during the search time window, e.g., to identify pairs of potentially related entity name searches that represent two attempts by the searching party to identify, and/or search for, the same entity.
In one embodiment, the pairs of potentially related entity name searches requested/made by the searching party during the search time window are identified by first transforming entity name search data into “strings” of entity name search data, e.g., strings of entered character data. In one embodiment, the “raw string distance” between entity name search data strings submitted by the searching party during the search time window is then calculated.
In one embodiment, the raw string distance between two strings of entity name search data is defined as the number of different characters in the two strings of entity name search data, e.g., the number of characters in a first string of entity name search data that must be changed to make the first string of entity name search data identical to the second string of entity name search data.
As a specific illustrative example, assume a financial institution named “Cash*One” is listed in initial identification data of a financial institution database as “cash*one”. Further assume that in a given search time window a searching party submitted the following three strings of entity name search data: “cash-one”, “cash*one”, and “bank-one”. For the entity name search data strings “cash-one” and “cash*one”, the dash character “-” must be replaced with an asterisk “*” to make the entity name search data string “cash-one” identical to the second entity name search data string “cash*one”. Consequently, the raw string distance for the entity name search data strings “cash-one” and “cash*one” is one.
For the entity name search data strings “cash-one” and “bank-one”, the characters “c”, “a”, “s” and “h”, in the “cash-one” entity name search data string must be replaced with “b”, “a”, “n”, and “k” to make the “cash-one” entity name search data string identical to the “bank-one” entity name search data string. Consequently, the raw string distance for the entity name search data strings “cash-one” and “bank-one” is four. Similarly, the raw string distance for the entity name search data strings “cash*one” and “bank-one” is five.
While the raw string distance, calculated as discussed above, does provide a rough indication of how close two strings of entity name search data are, e.g., how close two entered entity names are, the raw string distance can be deceptive. This is because the raw string distance indicates the number of mismatched characters in two strings of entity name search data but it does not take into account the length of the two strings of entity name search data. For example, a raw string distance of 4 is far more significant for two strings of entity name search data having 5 and 6 characters each than it is for two strings of entity name search data having 25 and 27 characters each. That is to say, 4 mismatched characters out of 6, a 66% mismatch, is a far greater mismatch that 4 mismatched characters out of 27, a 14% mismatch.
To address this potential inaccuracy, in one embodiment, a normalized string distance score is calculated for each pair of entity name search data strings. In one embodiment, the normalized string distance score is calculated using the following relationship:
The normalized string distance score for two entity name search data stings is equal to the raw string distance between the first entity name search data string and the second entity name search data string divided by the square root of the length of the first entity name search data string multiplied by the length of the second entity name search data sting.
Continuing with the specific illustrative example introduced above, recall that it was stipulated that in a first search time window a searching party submitted the following three strings of entity name search data: “cash-one”, “cash*one”, and “bank-one”. Consequently, the length of the “cash-one” entity name search data string is 8, the length of the “cash*one” entity name search data string is 8, and the length of the “bank-one” entity name search data string is also 8.
Further recall that, the raw string distance for the entity name search data strings “cash-one” and “cash*one” is 1; the raw string distance for the entity name search data strings “cash-one” and “bank-one” is 4; and the raw string distance for the entity name search data strings “cash*one” and “bank-one” is 5. Consequently, in this specific illustrative example, the normalized string distance score for the entity name search data strings “cash-one” and “cash*one” is 1 divided by the square root of 8 times 8, or ⅛ (0.125). Likewise, the normalized string distance score for the entity name search data strings “cash-one” and “bank-one” is 4 divided by the square root of 8 times 8, or 4/8 (0.5). Similarly, the normalized string distance score for the entity name search data strings “cash*one” and “bank-one” is 5 divided by the square root of 8 times 8, or ⅝ (0.625).
In one embodiment, a threshold normalized string distance score is defined such that if the calculated normalized string distance score for a pair of entity name search data strings is greater than the threshold normalized string distance score, the pair of entity name searches represented by the pair of entity name search data strings are determined not to be a pair of potentially related entity name searches directed to the same entity, e.g., the pair of potentially related entity name searches associated with the pair of entity name search data strings are determined not to represent two attempts by the searching party to identify, and/or search for, the same entity.
On the other hand, in one embodiment, if the calculated normalized string distance score for a pair of entity name search data strings is less than, or equal to, the threshold normalized string distance score, the pair of entity name searches represented by the pair of entity name search data strings are determined to be a pair of potentially related entity name searches directed to the same entity, e.g., the pair of potentially related entity name searches associated with the pair of entity name search data strings are determined to represent two attempts by the searching party to identify, and/or search for, the same entity.
Continuing with the specific illustrative example introduced above, assume the threshold normalized string distance score is defined as 0.2. Recall that, in this specific illustrative example, the normalized string distance score for the entity name search data strings “cash-one” and “cash*one” is 0.125; the normalized string distance score for the entity name search data strings “cash-one” and “bank-one” is 0.5; and the normalized string distance score for the entity name search data strings “cash*one” and “bank-one” is 0.625. Consequently, in this specific illustrative example, only the entity name search data strings “cash-one” and “cash*one” would be determined to be a pair of potentially related entity name searches directed to the same entity, e.g., the pair of potentially related entity name searches associated with the pair of entity name search data strings “cash-one” and “cash*one” are determined to represent two attempts by the searching party to identify, and/or search for, the same entity.
In one embodiment, when a pair of potentially related entity name searches made by the same searching party in the search time window are identified, the data representing the potentially related entity name searches is analyzed and/or compared with the initial identification data to identify an entity name in the list of known names, and/or aliases, associated with one or more entities represented by the initial identification data that matches one of the entity names of the pair of potentially related entity name searches.
In one embodiment, a matched entity name in the list of known names, and/or aliases, associated with one or more entities represented by the initial identification data is identified that matches one of the entity names of the pair of potentially related entity name searches. In one embodiment, the entity names of the pair of potentially related entity name searches and the matched entity name of the initial identification data are then linked/associated with one another.
In one embodiment, both of the entity names of the pair of potentially related entity name searches made by the searching party in the search time window are then added to an alias list or table associated with the matched entity name. Consequently, the alias list or table associated with the matched entity name is updated to include both entity names of the pair of potentially related entity name searches.
In one embodiment, the data representing the updated alias list or table associated with the matched entity name is then used to modify the initial identification data for one or more entities and the modified initial identification data for one or more entities is used as an initial implementation of an entity name alias table for the next application of the process for creating an entity name alias table.
Using the system and method for creating an entity name alias table discussed herein, data processing science is used to combine searching party behavior information and string distances to create, maintain, and update an entity name alias table without the need for extensive human and financial resources. Consequently, using the system and method for creating an entity name alias table discussed herein, a searching party is more likely to be directed to the desired entity name and data.
Indeed, it has been empirically determined that one million entity name searches from three hundred thousand different searching parties that returned no matches using a financial management system that did not implement the system and method for creating an entity name alias table discussed herein were matched with at least one relevant entity name when the system and method for creating an entity name alias table was implemented.
Hardware System Architecture
As seen in
In various embodiments, searching party systems 100A and 100B can be any computing systems discussed herein, and/or as known in the art at the time of filing, and/or as developed after the time of filing.
As discussed above, many data processing systems provide data associated with a given entity, such as the entity's mailing address, that is stored in a memory location associated with the entity's name. In these instances, a searching party can access the data associated with a given entity by entering entity name search data, such as historical entity name search data 105A and 105B, which matches the entity's name as listed. However, entity names can often be associated with multiple versions of entity name search data. Consequently, currently, alias tables listing entity names, and/or logical aliases for the entity names, e.g., entity name search data deemed to be logically associated with the entity names, must be largely manually created, maintained, and updated. This currently is a resource intensive and very expensive process.
To help address the issues described above, in one embodiment, historical entity name search data 105A and 105B is obtained by process system 120 as discussed below. As discussed below, in one embodiment, historical entity name search data 105A and 105B represents entity names/data entered by one or more searching parties in an attempt to identify, and/or search for, one or more entities, and/or data associated with the one or more entities in a search time period defined by search time window data 124.
In various embodiments searching party systems 100A and 100B may further include standard user interface devices such as a keyboard (not shown), a mouse (not shown), a printer (not shown), as well as, one or more standard input/output (I/O) devices (not shown), such as a compact disk (CD) or Digital Video Disc (DVD) drive, floppy disk drive, or other digital or waveform port, or other device capable of inputting data to, and outputting data from, searching party systems 100A and 100B, whether available or known at the time of filing or as later developed.
While two searching party systems, searching party systems 100A and 100B, are shown in
As also seen in
Process system 120 can be any computing system as discussed herein, and/or as known in the art at the time of filing, and/or as developed thereafter, that includes components that can execute all, or part, of a process for creating an entity name alias table in accordance with at least one of the embodiments as described herein.
In one embodiment, memory 122 includes all, or part, of historical entity name search data 105A and 105B as received from one or more sources, including, but not limited to, searching party systems 100A and 100B, and/or one or more financial management systems (not shown).
In one embodiment, memory 122 includes all, or part, of initial identification data 123. As discussed below, in one embodiment, initial identification data 123 includes initial identification data for one or more entities. In one embodiment, initial identification data 123 is data representing a list, or table, or any other data organizational scheme, of known names, and/or aliases, associated with one or more entities. For example, as a specific illustrative example, in one embodiment, initial identification data 123 is a list of names and associated aliases for one or more financial institutions.
In one embodiment, initial identification data 123 is an initial implementation of an entity name alias table, including an alias list or table associated with a matched entity name, provided prior to modification by a current application of the process for creating an entity name alias table.
In one embodiment, memory 122 includes all, or part, of search time window data 124 including data indicating a selected search time window period.
In various embodiments, the search time window period of search time window data 124 can be, but is not limited to, a window of a few seconds, a few minutes, an hour, multiple hours, a day, or even multiple days. In one embodiment, the search time window period of search time window data 124 is chosen to attempt to limit the search time window period to an interval of time during which a searching party is likely to attempt to make multiple related entity name searches that represent two or more attempts by the searching party to identify, and/or search for, the same entity.
In one embodiment, memory 122 includes all, or part, of searching party aggregation module 125. In one embodiment, all the historical entity name search data 105A and 105B entered by the searching parties during the search time window period of search time window data 124 is provided to searching party aggregation module 125. In one embodiment, the historical entity name search data 105A and 105B entered by the searching parties during the search time window of search time window data 124 is then analyzed by searching party aggregation module 125 using one or more processors associated with one or more computing systems, such as CPUs 121, to identify all the historical entity name search data entered by each specific individual searching party in the search time window. In one embodiment, all the historical entity name search data 105A or 105B entered by each individual searching party in the search time window of search time window data 124 is then aggregated by searching party aggregation module 125 to generate aggregated entity name search data 126.
In one embodiment, for each searching party, e.g., for each of historical entity name search data 105A or 105B, the aggregated entity name search data 126 is analyzed by potentially related entity name search pair ID module 127 using one or more processors associated with one or more computing systems, such as CPUs 121, to identify pairs of potentially related entity name searches requested/made during the search time window of search time window data 124, e.g., to identify pairs of potentially related entity name searches that represent two attempts by the searching party to identify, and/or search for, the same entity.
In one embodiment, a pair of potentially related entity name searches made by the same searching party in the search time window of search time window data 124 is identified and is represented by potentially related entity name search pair data 128.
In one embodiment, memory 122 includes all, or part, of matching module 129 that uses one or more processors associated with one or more computing systems, such as CPUs 121, to analyze potentially related entity name search pair data 128 and initial identification data 123 to identify an entity name in the list of known names, and/or aliases, associated with one or more entities represented by initial identification data 123 that matches one of the entity names of the pair of potentially related entity name searches of potentially related entity name search pair data 128.
In one embodiment, if one or more entities represented by initial identification data 123 match one of the entity names of the pair of potentially related entity name searches of potentially related entity name search pair data 128, the matched entity name and both the entity names of the pair of potentially related entity name searches of potentially related entity name search pair data 128 are used to generate matched entity name and new entity name alias data 130.
In one embodiment, matched entity name and new entity name alias data 130 is then processed by initial identification data modification module 131 to generate modified identification data 132.
Process system 120 may further include standard user interface devices such as a keyboard (not shown), a mouse (not shown), a printer (not shown), as well as, one or more standard input/output (I/O) devices (not shown), such as a compact disk (CD) or Digital Video Disc (DVD) drive, floppy disk drive, or other digital or waveform port, or other device capable of inputting data to, and outputting data from, process system 120, whether available or known at the time of filing or as later developed.
In one embodiment, any, or both, of communications channels 171 and 172 can be, but are not limited to: any network; a mobile communication link, such as a mobile phone link; a land-line phone link; a cable-based communications channel; a satellite communications channel; the Internet, a cloud, or other network communications channel; and/or any other communications channel, or combination of communications channels, as discussed herein, and/or as known in the art at the time of filing, and/or as developed after the time of filing.
In one embodiment, searching party systems 100A and 100B, and/or process system 120, are part of a cloud computing environment.
Those of skill in the art will readily recognize that the components shown in
In various embodiments, the elements shown in
Referring to
As seen in
Referring back to
As seen in
As discussed below, in one embodiment, potentially related entity name search pair ID module 127 transforms part of aggregated entity name search data 126 into potentially related entity name search pair data 128 by first transforming aggregated entity name search data 126 into “strings” of entity name search data, e.g., strings of entered character data. In one embodiment, the “raw string distance” between entity name search data strings of aggregated entity name search data 126 is then calculated.
In one embodiment, the raw string distance between two strings of entity name search data is defined as the number of different characters in the two strings of entity name search data, e.g., the number of characters in a first string of entity name search data that must be changed to make the first string of entity name search data identical to the second string of entity name search data.
As a specific illustrative example, assume a financial institution named “Cash*One” is listed in initial identification data of a financial institution database as “cash*one”. Further assume that in a given search time window a searching party submitted the following three strings of entity name search data: “cash-one”, “cash*one”, and “bank-one”. For the entity name search data strings “cash-one” and “cash*one”, the dash character “-” must be replaced with an asterisk “*” to make the name search data string “cash-one” identical to the second data string “cash*one”. Consequently, the raw string distance for the entity name search data strings “cash-one” and “cash*one” is one.
For the entity name search data strings “cash-one” and “bank-one”, the characters “c”, “a”, “s” and “h”, in the “cash-one” entity name search data string must be replaced with “b”, “a”, “n”, and “k” to make the “cash-one” entity name search data string identical to the “bank-one” entity name search data string. Consequently, the raw string distance for the entity name search data strings “cash-one” and “bank-one” is four. Similarly, the raw string distance for the entity name search data strings “cash*one” and “bank-one” is five.
While the raw string distance calculated as discussed above does provide a rough indication of how close two strings of entity name search data are, e.g., how close two entered entity names are, the raw string distance can be deceptive. This is because the raw string distance indicates the number of mismatched characters in two strings of entity name search data but it does not take into account the length of the two strings of entity name search data. For example, a raw string distance of 4 is far more significant for two strings of entity name search data having 5 and 6 characters each than it is for two strings of entity name search data having 25 and 27 characters each. That is to say, 4 mismatched characters out of 6, a 66% mismatch, is a far greater mismatch that 4 mismatched characters out of 27, a 14% mismatch.
To address this potential inaccuracy, in one embodiment, a normalized string distance score is calculated for each pair of entity name search data strings by potentially related entity name search pair ID module 127. In one embodiment, the normalized string distance score is calculated using the following relationship:
The normalized string distance score for two entity name search data stings is equal to the raw string distance between the first entity name search data string and the second entity name search data string divided by the square root of the length of the first entity name search data string multiplied by the length of the second entity name search data sting.
Continuing with the specific illustrative example introduced above, recall that it was stipulated that in a first search time window a searching party submitted the following three strings of entity name search data: “cash-one”, “cash*one”, and “bank-one”. Consequently, the length of the “cash-one” entity name search data string is 8, the length of the “cash*one” entity name search data string is 8, and the length of the “bank-one” entity name search data string is also 8.
Further recall that, the raw string distance for the entity name search data strings “cash-one” and “cash*one” is 1; the raw string distance for the entity name search data strings “cash-one” and “bank-one” is 4; and the raw string distance for the entity name search data strings “cash*one” and “bank-one” is 5. Consequently, in this specific illustrative example, the normalized string distance score for the entity name search data strings “cash-one” and “cash*one” is 1 divided by the square root of 8 times 8, or ⅛ (0.125). Likewise, the normalized string distance score for the entity name search data strings “cash-one” and “bank-one” is 4 divided by the square root of 8 times 8, or 4/8 (0.5). Similarly, the normalized string distance score for the entity name search data strings “cash*one” and “bank-one” is 5 divided by the square root of 8 times 8, or ⅝ (0.625).
In one embodiment, a threshold normalized string distance score is defined such that if the calculated normalized string distance score for a pair of entity name search data strings is greater than the threshold normalized string distance score, the pair of entity name searches represented by the pair of entity name search data strings are determined not to be a pair of potentially related entity name searches directed to the same entity, e.g., the pair of potentially related entity name searches associated with the pair of entity name search data strings are determined not to represent two attempts by the searching party to identify, and/or search for, the same entity.
On the other hand, in one embodiment, if the calculated normalized string distance score for a pair of entity name search data strings is less than, or equal to, the threshold normalized string distance score, the pair of entity name searches represented by the pair of entity name search data strings are determined to be a pair of potentially related entity name searches directed to the same entity, e.g., the pair of potentially related entity name searches associated with the pair of entity name search data strings are determined to represent two attempts by the searching party to identify, and/or search for, the same entity.
Continuing with the specific illustrative example introduced above, assume the threshold normalized string distance score is defined as 0.2. Recall that, in this specific illustrative example, the normalized string distance score for the entity name search data strings “cash-one” and “cash*one” is 0.125; the normalized string distance score for the entity name search data strings “cash-one” and “bank-one” is 0.5; and the normalized string distance score for the entity name search data strings “cash*one” and “bank-one” is 0.625. Consequently, in this specific illustrative example, only the entity name search data strings “cash-one” and “cash*one” would be determined to be a pair of potentially related entity name searches directed to the same entity, e.g., the pair of potentially related entity name searches associated with the pair of entity name search data strings “cash-one” and “cash*one” are determined to represent two attempts by the searching party to identify, and/or search for, the same entity and are then used to generate potentially related entity name search pair data 128.
Referring back to
As seen in
In one embodiment, matching module 129 then generates matched entity name and new entity name alias data 130 that includes the matched entity name and both the entity names of the pair of potentially related entity name searches of potentially related entity name search pair data 128.
Referring back to
As seen in
In one embodiment, modified identification data 132 is then used as an initial implementation of an entity name alias table for the next application of the process for creating an entity name alias table, e.g., modified identification data 132 is used as initial identification data 123 for the next, and following, applications of the process for creating an entity name alias table.
In the discussion above, certain aspects of one embodiment include processes, sub-processes, steps, operations and/or instructions described herein for illustrative purposes in a particular order and/or grouping. However, the particular order and/or grouping shown and discussed herein are illustrative only and not limiting. Those of skill in the art will recognize that other orders and/or grouping of the processes, sub-processes, steps, operations and/or instructions are possible and, in some embodiments, one or more of the processes, sub-processes, steps, operations and/or instructions discussed above can be combined and/or deleted. In addition, portions of one or more of the processes, sub-processes, steps, operations and/or instructions can be re-grouped as portions of one or more other of processes, sub-processes, steps, operations and/or instructions discussed herein. Consequently, the particular order and/or grouping of the processes, sub-processes, steps, operations and/or instructions discussed herein do not limit the scope of the invention as claimed below.
Process
In accordance with one embodiment, a system and method for creating an entity name alias table includes obtaining initial identification data for one or more entities representing a list or table of known names, and/or aliases, associated with one or more entities.
In one embodiment, historical entity name search data is obtained representing entity names entered by one or more searching parties in an attempt to identify, and/or search for, one or more entities, and/or data associated with the one or more entities.
In accordance with one embodiment, a search time window is defined. In one embodiment, all the historical entity name search data entered by the searching parties during the search time window is obtained and the historical entity name search data entered by each specific individual searching party in the search time window is aggregated. In one embodiment, for each searching party, the aggregated historical entity name search data entered during the search time window is analyzed to identify pairs of potentially related entity name searches requested/made during the search time window, e.g., to identify pairs of potentially related entity name searches that represent two attempts by the same searching party to identify, and/or search for, the same entity.
In one embodiment, when a pair of potentially related entity name searches made by the same searching party in the search time window are identified, the data representing the potentially related entity name searches is analyzed and/or compared with the initial identification data to identify a matched entity name in the list of known names, and/or aliases, represented by the initial identification data that matches one of the entity names of the pair of potentially related entity name searches made by the searching party in the search time window.
In one embodiment, if a matched entity name in the list of known names, and/or aliases, represented by the initial identification data matches one of the entity names of the pair of potentially related entity name searches made by the searching party in the search time window, both of the entity names of the pair of potentially related entity name searches made by the searching party in the search time window are added to an alias list or table associated with the matched entity name.
In one embodiment, at OBTAIN AN INITIAL LIST OF NAMES, AND/OR ALIASES, ASSOCIATED WITH ONE OR MORE ENTITIES OPERATION 303, initial identification data for one or more entities is obtained.
Herein the term “entity” includes but is not limited to, any individual; party; group of individuals or parties; organization; merchant; business; institution; corporation, or other legal entity. For instance, as a specific illustrative example, in one embodiment, the term “entity” includes a financial institution such as a bank, credit card company, credit union, or any other financial institution as discussed herein, and/or as known in the art at the time of filing, and/or as recognized after the time of filing.
In one embodiment, the initial identification data for one or more entities of OBTAIN AN INITIAL LIST OF NAMES, AND/OR ALIASES, ASSOCIATED WITH ONE OR MORE ENTITIES OPERATION 303 is data representing a list, or table, or any other data organizational scheme, of known names, and/or aliases, associated with one or more entities. For example, as a specific illustrative example, in one embodiment, the initial identification data for one or more entities of OBTAIN AN INITIAL LIST OF NAMES, AND/OR ALIASES, ASSOCIATED WITH ONE OR MORE ENTITIES OPERATION 303 is a list of names and associated aliases for one or more financial institutions.
In one embodiment, the initial identification data for one or more entities of OBTAIN AN INITIAL LIST OF NAMES, AND/OR ALIASES, ASSOCIATED WITH ONE OR MORE ENTITIES OPERATION 303 is an initial implementation of an entity name alias table, including an alias list or table associated with the matched entity name, provided prior to modification by a current application of process 300 for creating an entity name alias table.
In one embodiment, the initial identification data for one or more entities of OBTAIN AN INITIAL LIST OF NAMES, AND/OR ALIASES, ASSOCIATED WITH ONE OR MORE ENTITIES OPERATION 303 is stored in, or on, one or more memories, computing systems, networks, and/or databases using any method, means, process, or procedure, as discussed herein, and/or as known in the art at the time of filing, and/or as developed/made available after the time of filing.
In one embodiment, once initial identification data for one or more entities is obtained at OBTAIN AN INITIAL LIST OF NAMES, AND/OR ALIASES, ASSOCIATED WITH ONE OR MORE ENTITIES OPERATION 303, process flow proceeds to OBTAIN HISTORICAL ENTITY NAME SEARCH DATA ENTERED BY ONE OR MORE SEARCHING PARTIES OPERATION 305.
In one embodiment, at OBTAIN HISTORICAL ENTITY NAME SEARCH DATA ENTERED BY ONE OR MORE SEARCHING PARTIES OPERATION 305 historical entity name search data is obtained.
In one embodiment, the historical entity name search data of at OBTAIN HISTORICAL ENTITY NAME SEARCH DATA ENTERED BY ONE OR MORE SEARCHING PARTIES OPERATION 305 represents entity names/data entered by one or more searching parties in an attempt to identify, and/or search for, one or more entities, and/or data associated with the one or more entities.
In one embodiment, once historical entity name search data is obtained at OBTAIN HISTORICAL ENTITY NAME SEARCH DATA ENTERED BY ONE OR MORE SEARCHING PARTIES OPERATION 305, process flow proceeds to DEFINE A SEARCH TIME WINDOW OPERATION 307.
In one embodiment, at DEFINE A SEARCH TIME WINDOW OPERATION 307, a search time window is defined.
In various embodiments, the search time window of DEFINE A SEARCH TIME WINDOW OPERATION 307 can be, but is not limited to, a window of a few seconds, a few minutes, an hour, multiple hours, a day, or even multiple days.
In one embodiment, the search time window period is chosen at DEFINE A SEARCH TIME WINDOW OPERATION 307 to attempt to limit the search time window period to an interval of time during which a searching party is likely to attempt to make multiple related entity name searches that represent two or more attempts by the searching party to identify, and/or search for, the same entity.
In one embodiment, data representing the search time window of DEFINE A SEARCH TIME WINDOW OPERATION 307 is stored in, or on, one or more memories, computing systems, networks, and/or databases using any method, means, process, or procedure, as discussed herein, and/or as known in the art at the time of filing, and/or as developed/made available after the time of filing.
In one embodiment, once a search time window is defined at DEFINE A SEARCH TIME WINDOW OPERATION 307, process flow proceeds to IDENTIFY ALL ENTITY NAME SEARCH DATA ENTERED BY THE SAME SEARCHING PARTY WITHIN THE ENTITY SEARCH TIME WINDOW OPERATION 309.
In one embodiment, at IDENTIFY ALL ENTITY NAME SEARCH DATA ENTERED BY THE SAME SEARCHING PARTY WITHIN THE ENTITY SEARCH TIME WINDOW OPERATION 309, all the historical entity name search data entered by an individual searching party in the search time window of DEFINE A SEARCH TIME WINDOW OPERATION 307 is identified and aggregated.
In one embodiment, at IDENTIFY ALL ENTITY NAME SEARCH DATA ENTERED BY THE SAME SEARCHING PARTY WITHIN THE ENTITY SEARCH TIME WINDOW OPERATION 309 all the historical entity name search data entered by the searching parties during the search time window of DEFINE A SEARCH TIME WINDOW OPERATION 307 is first obtained.
In one embodiment, at IDENTIFY ALL ENTITY NAME SEARCH DATA ENTERED BY THE SAME SEARCHING PARTY WITHIN THE ENTITY SEARCH TIME WINDOW OPERATION 309 the historical entity name search data entered by the searching parties during the search time window of DEFINE A SEARCH TIME WINDOW OPERATION 307 is analyzed to identify all the historical entity name search data entered by each specific individual searching party in the search time window.
In one embodiment, at IDENTIFY ALL ENTITY NAME SEARCH DATA ENTERED BY THE SAME SEARCHING PARTY WITHIN THE ENTITY SEARCH TIME WINDOW OPERATION 309 the historical entity name search data entered by the searching parties during the search time window is analyzed under the direction of one or more processors, such as CPU 121 of
Returning to
In one embodiment, once all the historical entity name search data entered by an individual searching party in the search time window is identified and aggregated at IDENTIFY ALL ENTITY NAME SEARCH DATA ENTERED BY THE SAME SEARCHING PARTY WITHIN THE ENTITY SEARCH TIME WINDOW OPERATION 309, process flow proceeds to ANALYZE THE ENTITY NAME SEARCH DATA ENTERED BY THE SAME SEARCHING PARTY WITHIN THE SEARCH TIME WINDOW TO IDENTIFY POTENTIALLY RELATED ENTITY NAME SEARCHES OPERATION 311.
In one embodiment, at ANALYZE THE ENTITY NAME SEARCH DATA ENTERED BY THE SAME SEARCHING PARTY WITHIN THE SEARCH TIME WINDOW TO IDENTIFY POTENTIALLY RELATED ENTITY NAME SEARCHES OPERATION 311 for each searching party, the aggregated historical entity name search data of IDENTIFY ALL ENTITY NAME SEARCH DATA ENTERED BY THE SAME SEARCHING PARTY WITHIN THE ENTITY SEARCH TIME WINDOW OPERATION 309 entered during the search time window by that searching party is analyzed to identify entity name search data entered by the searching party representing pairs of potentially related entity name searches requested/made during the search time window, e.g., to identify pairs of potentially related entity name searches that represent two attempts by the searching party to identify, and/or search for, the same entity.
In one embodiment, at ANALYZE THE ENTITY NAME SEARCH DATA ENTERED BY THE SAME SEARCHING PARTY WITHIN THE SEARCH TIME WINDOW TO IDENTIFY POTENTIALLY RELATED ENTITY NAME SEARCHES OPERATION 311 for each searching party, the aggregated historical entity name search data of IDENTIFY ALL ENTITY NAME SEARCH DATA ENTERED BY THE SAME SEARCHING PARTY WITHIN THE ENTITY SEARCH TIME WINDOW OPERATION 309 entered during the search time window by that searching party is analyzed under the direction of one or more processors, such as CPU 121 of
Returning to
In one embodiment, the raw string distance between two strings of entity name search data is defined as the number of different characters in the two strings of entity name search data, e.g., the number of characters in a first string of entity name search data that must be changed to make the first string of entity name search data identical to the second string of entity name search data.
As a specific illustrative example, assume a financial institution named “Cash*One” is listed in initial identification data of a financial institution database as “cash*one”. Further assume that in a given search time window a searching party submitted the following three strings of entity name search data: “cash-one”, “cash*one”, and “bank-one”. For the entity name search data strings “cash-one” and “cash*one”, the dash character “-” must be replaced with an asterisk “*” to make the name search data string “cash-one” identical to the second data string “cash*one”. Consequently, the raw string distance for the entity name search data strings “cash-one” and “cash*one” is one.
For the entity name search data strings “cash-one” and “bank-one”, the characters “c”, “a”, “s” and “h”, in the “cash-one” entity name search data string must be replaced with “b”, “a”, “n”, and “k” to make the “cash-one” entity name search data string identical to the “bank-one” entity name search data string. Consequently, the raw string distance for the entity name search data strings “cash-one” and “bank-one” is four. Similarly, the raw string distance for the entity name search data strings “cash*one” and “bank-one” is five.
While the raw string distance calculated as discussed above does provide a rough indication of how close two strings of entity name search data are, e.g., how close two entered entity names are, the raw string distance can be deceptive. This is because the raw string distance indicates the number of mismatched characters in two strings of entity name search data but it does not take into account the length of the two strings of entity name search data. For example, a raw string distance of 4 is far more significant for two strings of entity name search data having 5 and 6 characters each than it is for two strings of entity name search data having 25 and 27 characters each. That is to say, 4 mismatched characters out of 6, a 66% mismatch, is a far greater mismatch that 4 mismatched characters out of 27, a 14% mismatch.
To address this potential inaccuracy, in one embodiment, at ANALYZE THE ENTITY NAME SEARCH DATA ENTERED BY THE SAME SEARCHING PARTY WITHIN THE SEARCH TIME WINDOW TO IDENTIFY POTENTIALLY RELATED ENTITY NAME SEARCHES OPERATION 311 a normalized string distance score is calculated for each pair of entity name search data strings. In one embodiment, ANALYZE THE ENTITY NAME SEARCH DATA ENTERED BY THE SAME SEARCHING PARTY WITHIN THE SEARCH TIME WINDOW TO IDENTIFY POTENTIALLY RELATED ENTITY NAME SEARCHES OPERATION 311 the normalized string distance score is calculated using the following relationship:
The normalized string distance score for two entity name search data stings is equal to the raw string distance between the first entity name search data string and the second entity name search data string divided by the square root of the length of the first entity name search data string multiplied by the length of the second entity name search data sting.
Continuing with the specific illustrative example introduced above, recall that it was stipulated that in a first search time window a searching party submitted the following three strings of entity name search data: “cash-one”, “cash*one”, and “bank-one”. Consequently, the length of the “cash-one” entity name search data string is 8, the length of the “cash*one” entity name search data string is 8, and the length of the “bank-one” entity name search data string is also 8.
Further recall that, the raw string distance for the entity name search data strings “cash-one” and “cash*one” is 1; the raw string distance for the entity name search data strings “cash-one” and “bank-one” is 4; and the raw string distance for the entity name search data strings “cash*one” and “bank-one” is 5. Consequently, in this specific illustrative example, the normalized string distance score for the entity name search data strings “cash-one” and “cash*one” is 1 divided by the square root of 8 times 8, or ⅛ (0.125). Likewise, the normalized string distance score for the entity name search data strings “cash-one” and “bank-one” is 4 divided by the square root of 8 times 8, or 4/8 (0.5). Similarly, the normalized string distance score for the entity name search data strings “cash*one” and “bank-one” is 5 divided by the square root of 8 times 8, or ⅝ (0.625).
In one embodiment, at ANALYZE THE ENTITY NAME SEARCH DATA ENTERED BY THE SAME SEARCHING PARTY WITHIN THE SEARCH TIME WINDOW TO IDENTIFY POTENTIALLY RELATED ENTITY NAME SEARCHES OPERATION 311 a threshold normalized string distance score is defined such that if the calculated normalized string distance score for a pair of entity name search data strings is greater than the threshold normalized string distance score, then at ANALYZE THE ENTITY NAME SEARCH DATA ENTERED BY THE SAME SEARCHING PARTY WITHIN THE SEARCH TIME WINDOW TO IDENTIFY POTENTIALLY RELATED ENTITY NAME SEARCHES OPERATION 311 the pair of entity name searches represented by the pair of entity name search data strings are determined not to be a pair of potentially related entity name searches directed to the same entity, e.g., the pair of potentially related entity name searches associated with the pair of entity name search data strings are determined not to represent two attempts by the searching party to identify, and/or search for, the same entity.
On the other hand, in one embodiment, at ANALYZE THE ENTITY NAME SEARCH DATA ENTERED BY THE SAME SEARCHING PARTY WITHIN THE SEARCH TIME WINDOW TO IDENTIFY POTENTIALLY RELATED ENTITY NAME SEARCHES OPERATION 311 if the calculated normalized string distance score for a pair of entity name search data strings is less than, or equal to, the threshold normalized string distance score, the pair of entity name searches represented by the pair of entity name search data strings are determined to be a pair of potentially related entity name searches directed to the same entity, e.g., the pair of potentially related entity name searches associated with the pair of entity name search data strings are determined to represent two attempts by the searching party to identify, and/or search for, the same entity.
Continuing with the specific illustrative example introduced above, assume the threshold normalized string distance score is defined as 0.2. Recall that, in this specific illustrative example, the normalized string distance score for the entity name search data strings “cash-one” and “cash*one” is 0.125; the normalized string distance score for the entity name search data strings “cash-one” and “bank-one” is 0.5; and the normalized string distance score for the entity name search data strings “cash*one” and “bank-one” is 0.625. Consequently, in this specific illustrative example, only the entity name search data strings “cash-one” and “cash*one” would be determined to be a pair of potentially related entity name searches directed to the same entity, e.g., the pair of potentially related entity name searches associated with the pair of entity name search data strings “cash-one” and “cash*one” are determined to represent two attempts by the searching party to identify, and/or search for, the same entity.
In one embodiment, once the aggregated historical entity name search data entered during the search time window by a given searching party is analyzed to identify pairs of potentially related entity name searches that represent two attempts by the searching party to identify, and/or search for, the same entity at ANALYZE THE ENTITY NAME SEARCH DATA ENTERED BY THE SAME SEARCHING PARTY WITHIN THE SEARCH TIME WINDOW TO IDENTIFY POTENTIALLY RELATED ENTITY NAME SEARCHES OPERATION 311 process flow proceeds to IDENTIFY AT LEAST ONE PAIR OF POTENTIALLY RELATED ENTITY NAME SEARCHES FOR THE SAME ENTITY OPERATION 313.
In one embodiment, at IDENTIFY AT LEAST ONE PAIR OF POTENTIALLY RELATED ENTITY NAME SEARCHES FOR THE SAME ENTITY OPERATION 313 a pair of potentially related entity name searches made by the same searching party in the search time window is identified.
In one embodiment, at IDENTIFY AT LEAST ONE PAIR OF POTENTIALLY RELATED ENTITY NAME SEARCHES FOR THE SAME ENTITY OPERATION 313 the entity names of the pair of potentially related entity name searches made by the same searching party in the search time window are identified and entity name search data representing the potentially related entity name searches, including data representing the entity names of the pair of potentially related entity name searches, is stored in, or on, one or more memories, computing systems, networks, and/or databases using any method, means, process, or procedure, as discussed herein, and/or as known in the art at the time of filing, and/or as developed/made available after the time of filing.
In one embodiment, once a pair of potentially related entity name searches made by the same searching party in the search time window are identified at IDENTIFY AT LEAST ONE PAIR OF POTENTIALLY RELATED ENTITY NAME SEARCHES FOR THE SAME ENTITY OPERATION 313, process flow proceeds to SEARCH THE INITIAL LIST OF NAMES, AND/OR ALIASES, ASSOCIATED WITH ONE OR MORE ENTITIES FOR AN ENTITY NAME MATCHING THE NAME OF EITHER OF THE PAIR OF POTENTIALLY RELATED ENTITY NAME SEARCHES OPERATION 315.
In one embodiment, at SEARCH THE INITIAL LIST OF NAMES, AND/OR ALIASES, ASSOCIATED WITH ONE OR MORE ENTITIES FOR AN ENTITY NAME MATCHING THE NAME OF EITHER OF THE PAIR OF POTENTIALLY RELATED ENTITY NAME SEARCHES OPERATION 315 the data representing the potentially related entity name searches of IDENTIFY AT LEAST ONE PAIR OF POTENTIALLY RELATED ENTITY NAME SEARCHES FOR THE SAME ENTITY OPERATION 313 is analyzed and/or compared with the initial identification data of OBTAIN AN INITIAL LIST OF NAMES, AND/OR ALIASES, ASSOCIATED WITH ONE OR MORE ENTITIES OPERATION 303 to identify an entity name in the list of known names, and/or aliases, associated with one or more entities represented by the initial identification data of OBTAIN AN INITIAL LIST OF NAMES, AND/OR ALIASES, ASSOCIATED WITH ONE OR MORE ENTITIES OPERATION 303 that matches one of the entity names of the pair of potentially related entity name searches of IDENTIFY AT LEAST ONE PAIR OF POTENTIALLY RELATED ENTITY NAME SEARCHES FOR THE SAME ENTITY OPERATION 313.
In one embodiment, at SEARCH THE INITIAL LIST OF NAMES, AND/OR ALIASES, ASSOCIATED WITH ONE OR MORE ENTITIES FOR AN ENTITY NAME MATCHING THE NAME OF EITHER OF THE PAIR OF POTENTIALLY RELATED ENTITY NAME SEARCHES OPERATION 315 the data representing the potentially related entity name searches of IDENTIFY AT LEAST ONE PAIR OF POTENTIALLY RELATED ENTITY NAME SEARCHES FOR THE SAME ENTITY OPERATION 313 is analyzed and/or compared with the initial identification data of OBTAIN AN INITIAL LIST OF NAMES, AND/OR ALIASES, ASSOCIATED WITH ONE OR MORE ENTITIES OPERATION 303 under the direction of one or more processors, such as CPU 121 of
Returning to
In one embodiment, at IF A MATCHED ENTITY NAME IS FOUND IN THE INITIAL LIST OF NAMES, AND/OR ALIASES, THAT MATCHES EITHER OF THE NAMES OF THE PAIR OF POTENTIALLY RELATED ENTITY NAME SEARCHES, ADD BOTH NAMES OF THE PAIR OF POTENTIALLY RELATED ENTITY NAME SEARCHES TO AN ALIAS LIST ASSOCIATED WITH THE MATCHED ENTITY NAME OPERATION 317 if a matched entity name in the list of known names, and/or aliases, associated with one or more entities represented by the initial identification data is identified at SEARCH THE INITIAL LIST OF NAMES, AND/OR ALIASES, ASSOCIATED WITH ONE OR MORE ENTITIES FOR AN ENTITY NAME MATCHING THE NAME OF EITHER OF THE PAIR OF POTENTIALLY RELATED ENTITY NAME SEARCHES OPERATION 315 that matches one of the entity names of the pair of potentially related entity name searches of IDENTIFY AT LEAST ONE PAIR OF POTENTIALLY RELATED ENTITY NAME SEARCHES FOR THE SAME ENTITY OPERATION 313, both of the entity names of the pair of potentially related entity name searches are added to an alias list or table associated with the matched entity name.
In one embodiment, at IF A MATCHED ENTITY NAME IS FOUND IN THE INITIAL LIST OF NAMES, AND/OR ALIASES, THAT MATCHES EITHER OF THE NAMES OF THE PAIR OF POTENTIALLY RELATED ENTITY NAME SEARCHES, ADD BOTH NAMES OF THE PAIR OF POTENTIALLY RELATED ENTITY NAME SEARCHES TO AN ALIAS LIST ASSOCIATED WITH THE MATCHED ENTITY NAME OPERATION 317 if a matched entity name in the list of known names, and/or aliases, associated with one or more entities represented by the initial identification data is identified at SEARCH THE INITIAL LIST OF NAMES, AND/OR ALIASES, ASSOCIATED WITH ONE OR MORE ENTITIES FOR AN ENTITY NAME MATCHING THE NAME OF EITHER OF THE PAIR OF POTENTIALLY RELATED ENTITY NAME SEARCHES OPERATION 315 that matches one of the entity names of the pair of potentially related entity name searches, both the entity names of the pair of potentially related entity name searches and the matched entity name of the initial identification data are linked/associated with one another.
In one embodiment, data representing both the entity names of the pair of potentially related entity name searches and the matched entity name of the initial identification data is stored in, or on, one or more memories, computing systems, networks, and/or databases using any method, means, process, or procedure, as discussed herein, and/or as known in the art at the time of filing, and/or as developed/made available after the time of filing.
In one embodiment, at IF A MATCHED ENTITY NAME IS FOUND IN THE INITIAL LIST OF NAMES, AND/OR ALIASES, THAT MATCHES EITHER OF THE NAMES OF THE PAIR OF POTENTIALLY RELATED ENTITY NAME SEARCHES, ADD BOTH NAMES OF THE PAIR OF POTENTIALLY RELATED ENTITY NAME SEARCHES TO AN ALIAS LIST ASSOCIATED WITH THE MATCHED ENTITY NAME OPERATION 317 the data representing both of the entity names of the pair of potentially related entity name searches made by the searching party in the search time window are then added to an alias list or table associated with the matched entity name.
Consequently, the alias list or table associated with the matched entity name is updated to include both entity names of the pair of potentially related entity name searches.
In one embodiment, the data representing the updated alias list or table associated with the matched entity name of IF A MATCHED ENTITY NAME IS FOUND IN THE INITIAL LIST OF NAMES, AND/OR ALIASES, THAT MATCHES EITHER OF THE NAMES OF THE PAIR OF POTENTIALLY RELATED ENTITY NAME SEARCHES, ADD BOTH NAMES OF THE PAIR OF POTENTIALLY RELATED ENTITY NAME SEARCHES TO AN ALIAS LIST ASSOCIATED WITH THE MATCHED ENTITY NAME OPERATION 317 is then used to modify the initial identification data for one or more entities of OBTAIN AN INITIAL LIST OF NAMES, AND/OR ALIASES, ASSOCIATED WITH ONE OR MORE ENTITIES OPERATION 303 and the modified initial identification data for one or more entities is used as an initial implementation of an entity name alias table for the next application of process 300 for creating an entity name alias table.
In one embodiment, once both of the entity names of the pair of potentially related entity name searches and the matched entity name of the initial identification data are added to an alias list or table associated with the matched entity name at IF A MATCHED ENTITY NAME IS FOUND IN THE INITIAL LIST OF NAMES, AND/OR ALIASES, THAT MATCHES EITHER OF THE NAMES OF THE PAIR OF POTENTIALLY RELATED ENTITY NAME SEARCHES, ADD BOTH NAMES OF THE PAIR OF POTENTIALLY RELATED ENTITY NAME SEARCHES TO AN ALIAS LIST ASSOCIATED WITH THE MATCHED ENTITY NAME OPERATION 317, process flow proceeds to EXIT OPERATION 330.
In one embodiment, at EXIT OPERATION 330, process 300 for creating an entity name alias table is exited to await new data.
In the discussion above, certain aspects of one embodiment include process steps and/or operations and/or instructions described herein for illustrative purposes in a particular order and/or grouping. However, the particular order and/or grouping shown and discussed herein are illustrative only and not limiting. Those of skill in the art will recognize that other orders and/or grouping of the process steps and/or operations and/or instructions are possible and, in some embodiments, one or more of the process steps and/or operations and/or instructions discussed above can be combined and/or deleted. In addition, portions of one or more of the process steps and/or operations and/or instructions can be re-grouped as portions of one or more other of the process steps and/or operations and/or instructions discussed herein. Consequently, the particular order and/or grouping of the process steps and/or operations and/or instructions discussed herein do not limit the scope of the invention as claimed below.
Using process 300 for creating an entity name alias table discussed above, data science is used to combine searching party behavior information and string distances to create, maintain, and update an entity name alias table without the need for extensive human and financial resources. Consequently, using process 300 for creating an entity name alias table, a searching party is more likely to be directed to the desired entity name and data.
Indeed, it has been empirically determined that one million entity name searches from three hundred thousand different searching parties that returned no matches using a financial management system that did not implement process 300 for creating an entity name alias table were matched with at least one relevant entity name using process 300 for creating an entity name alias table.
As discussed in more detail above, using the above embodiments, with little or no modification and/or input, there is considerable flexibility, adaptability, and opportunity for customization to meet the specific needs of various parties under numerous circumstances.
The present invention has been described in particular detail with respect to specific possible embodiments. Those of skill in the art will appreciate that the invention may be practiced in other embodiments. For example, the nomenclature used for components, capitalization of component designations and terms, the attributes, data structures, or any other programming or structural aspect is not significant, mandatory, or limiting, and the mechanisms that implement the invention or its features can have various different names, formats, or protocols. Further, the system or functionality of the invention may be implemented via various combinations of software and hardware, as described, or entirely in hardware elements. Also, particular divisions of functionality between the various components described herein are merely exemplary, and not mandatory or significant. Consequently, functions performed by a single component may, in other embodiments, be performed by multiple components, and functions performed by multiple components may, in other embodiments, be performed by a single component.
Some portions of the above description present the features of the present invention in terms of algorithms and symbolic representations of operations, or algorithm-like representations, of operations on information/data. These algorithmic or algorithm-like descriptions and representations are the means used by those of skill in the art to most effectively and efficiently convey the substance of their work to others of skill in the art. These operations, while described functionally or logically, are understood to be implemented by computer programs or computing systems. Furthermore, it has also proven convenient at times to refer to these arrangements of operations as steps or modules or by functional names, without loss of generality.
Unless specifically stated otherwise, as would be apparent from the above discussion, it is appreciated that throughout the above description, discussions utilizing terms such as, but not limited to, “activating”, “accessing”, “applying”, “analyzing”, “associating”, “calculating”, “capturing”, “categorizing”, “classifying”, “comparing”, “creating”, “defining”, “detecting”, “determining”, “distributing”, “encrypting”, “extracting”, “filtering”, “forwarding”, “generating”, “identifying”, “implementing”, “monitoring”, “obtaining”, “processing”, “providing”, “receiving”, “requesting”, “saving”, “sending”, “storing”, “transferring”, “transforming”, “transmitting”, “using”, etc., refer to the action and process of a computing system or similar electronic device that manipulates and operates on data represented as physical (electronic) quantities within the computing system memories, resisters, caches or other information storage, transmission or display devices.
The present invention also relates to an apparatus or system for performing the operations described herein. This apparatus or system may be specifically constructed for the required purposes, or the apparatus or system can comprise a general purpose system selectively activated or configured/reconfigured by a computer program stored on a computer program product as discussed herein that can be accessed by a computing system or other device.
Those of skill in the art will readily recognize that the algorithms and operations presented herein are not inherently related to any particular computing system, computer architecture, computer or industry standard, or any other specific apparatus. Various general purpose systems may also be used with programs in accordance with the teaching herein, or it may prove more convenient/efficient to construct more specialized apparatuses to perform the required operations described herein. The required structure for a variety of these systems will be apparent to those of skill in the art, along with equivalent variations. In addition, the present invention is not described with reference to any particular programming language and it is appreciated that a variety of programming languages may be used to implement the teachings of the present invention as described herein, and any references to a specific language or languages are provided for illustrative purposes only and for enablement of the contemplated best mode of the invention at the time of filing.
The present invention is well suited to a wide variety of computer network systems operating over numerous topologies. Within this field, the configuration and management of large networks comprise storage devices and computers that are communicatively coupled to similar or dissimilar computers and storage devices over a private network, a LAN, a WAN, a private network, or a public network, such as the Internet.
It should also be noted that the language used in the specification has been principally selected for readability, clarity and instructional purposes, and may not have been selected to delineate or circumscribe the inventive subject matter. Accordingly, the disclosure of the present invention is intended to be illustrative, but not limiting, of the scope of the invention, which is set forth in the claims below.
In addition, the operations shown in the FIGS., or as discussed herein, are identified using a particular nomenclature for ease of description and understanding, but other nomenclature is often used in the art to identify equivalent operations.
Therefore, numerous variations, whether explicitly provided for by the specification or implied by the specification or not, may be implemented by one of skill in the art in view of this disclosure.
Claims (16)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13666760 US9449056B1 (en) | 2012-11-01 | 2012-11-01 | Method and system for creating and updating an entity name alias table |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13666760 US9449056B1 (en) | 2012-11-01 | 2012-11-01 | Method and system for creating and updating an entity name alias table |
Publications (1)
Publication Number | Publication Date |
---|---|
US9449056B1 true US9449056B1 (en) | 2016-09-20 |
Family
ID=56896081
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13666760 Active 2034-02-11 US9449056B1 (en) | 2012-11-01 | 2012-11-01 | Method and system for creating and updating an entity name alias table |
Country Status (1)
Country | Link |
---|---|
US (1) | US9449056B1 (en) |
Citations (95)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4989141A (en) | 1987-06-01 | 1991-01-29 | Corporate Class Software | Computer system for financial analyses and reporting |
US5680305A (en) | 1995-02-16 | 1997-10-21 | Apgar, Iv; Mahlon | System and method for evaluating real estate |
US5842185A (en) | 1993-02-18 | 1998-11-24 | Intuit Inc. | Method and system for electronically tracking financial transactions |
US5873251A (en) | 1995-09-13 | 1999-02-23 | Kabushiki Kaisha Toshiba | Plant operation control system |
US5956691A (en) | 1997-01-07 | 1999-09-21 | Second Opinion Financial Systems, Inc. | Dynamic policy illustration system |
US6021415A (en) | 1997-10-29 | 2000-02-01 | International Business Machines Corporation | Storage management system with file aggregation and space reclamation within aggregated files |
US6032134A (en) | 1998-11-18 | 2000-02-29 | Weissman; Steven I. | Credit card billing system for identifying expenditures on a credit card account |
US6073108A (en) | 1996-06-21 | 2000-06-06 | Paul, Hastings, Janofsky & Walker | Task-based classification and analysis system |
US6128602A (en) | 1997-10-27 | 2000-10-03 | Bank Of America Corporation | Open-architecture system for real-time consolidation of information from multiple financial systems |
US20020073114A1 (en) | 2000-10-30 | 2002-06-13 | Nicastro Cherisse M. | Business asset management system |
US6430539B1 (en) | 1999-05-06 | 2002-08-06 | Hnc Software | Predictive modeling of consumer financial behavior |
US20020169658A1 (en) | 2001-03-08 | 2002-11-14 | Adler Richard M. | System and method for modeling and analyzing strategic business decisions |
US20020173986A1 (en) | 2000-06-19 | 2002-11-21 | Microsoft Corporation | Automatic categorization of financial transactions |
US20020184043A1 (en) | 2001-06-04 | 2002-12-05 | Egidio Lavorgna | Systems and methods for managing business metrics |
US20020198775A1 (en) | 1999-08-20 | 2002-12-26 | Ryan Patrick Nicholas | Customer relationship management system and method |
US6542896B1 (en) | 1999-07-20 | 2003-04-01 | Primentia, Inc. | System and method for organizing data |
US20030065677A1 (en) | 2001-09-28 | 2003-04-03 | Culp Jerlyn R. | Electronic calendaring device |
US20030167253A1 (en) | 2002-03-04 | 2003-09-04 | Kelly Meinig | Method and system for identification and maintenance of families of data records |
US20030195780A1 (en) | 2001-12-13 | 2003-10-16 | Liquid Engines, Inc. | Computer-based optimization system for financial performance management |
US20040015381A1 (en) | 2002-01-09 | 2004-01-22 | Johnson Christopher D. | Digital cockpit |
US20040093281A1 (en) | 2002-11-05 | 2004-05-13 | Todd Silverstein | Remote purchasing system and method |
US20040122905A1 (en) | 2002-08-16 | 2004-06-24 | Smith Christopher D. | System and method for integrating electronic mail accounts |
US20040138934A1 (en) | 2003-01-09 | 2004-07-15 | General Electric Company | Controlling a business using a business information and decisioning control system |
US20040138936A1 (en) | 2003-01-09 | 2004-07-15 | Johnson Christopher D. | Performing what-if forecasts using a business information and decisioning control system |
US20040138935A1 (en) | 2003-01-09 | 2004-07-15 | Johnson Christopher D. | Visualizing business analysis results |
US20040138932A1 (en) | 2003-01-09 | 2004-07-15 | Johnson Christopher D. | Generating business analysis results in advance of a request for the results |
US6792422B1 (en) | 2000-06-19 | 2004-09-14 | Microsoft Corporation | Automatic categorization of financial transactions |
US20040236734A1 (en) | 2003-05-22 | 2004-11-25 | Pershing Investments, Llc | Rating system and method for identifying desirable customers |
US20040243489A1 (en) | 2003-05-27 | 2004-12-02 | International Business Machines Corporation | Expense accounting data management based on electronic expense document |
US20050013428A1 (en) | 2003-07-17 | 2005-01-20 | Walters James Frederick | Contact center optimization program |
US20050131815A1 (en) | 2000-03-01 | 2005-06-16 | Passgate Corporation | Method, system and computer readable medium for Web site account and e-commerce management from a central location |
US20050154617A1 (en) | 2000-09-30 | 2005-07-14 | Tom Ruggieri | System and method for providing global information on risks and related hedging strategies |
US20050154769A1 (en) | 2004-01-13 | 2005-07-14 | Llumen, Inc. | Systems and methods for benchmarking business performance data against aggregated business performance data |
US20050240881A1 (en) | 1998-10-22 | 2005-10-27 | Rush Gary W | Navigational interface for ERP system |
US20050252963A1 (en) | 2004-04-30 | 2005-11-17 | Adams Neil P | System and method of operation control on an electronic device |
US20050289024A1 (en) | 2004-06-09 | 2005-12-29 | Hahn-Carlson Dean W | Automated transaction accounting processing engine and approach |
US20060004746A1 (en) | 1998-09-04 | 2006-01-05 | Kalido Limited | Data processing system |
US20060123461A1 (en) | 2004-12-02 | 2006-06-08 | Xerox Corporation | Systems and methods for protecting privacy |
US20060178961A1 (en) | 2000-09-01 | 2006-08-10 | Intuit Inc. | Automated Tax Return With Universal Data Import |
US20060293945A1 (en) | 2005-05-27 | 2006-12-28 | France Telecom | Method and device for building and using table of reduced profiles of paragons and corresponding computer program |
US20070022025A1 (en) | 2005-06-29 | 2007-01-25 | Joel Litman | System and method for identifying accounting anomalies to help investors better assess investment risks and opportunities |
US20070055597A1 (en) | 2005-09-08 | 2007-03-08 | Visa U.S.A. | Method and system for manipulating purchase information |
US20070061187A1 (en) | 2005-09-09 | 2007-03-15 | Marlene Laskowski-Bender | Modular system for determining return on investment from marketing communications |
US20070150139A1 (en) | 2005-12-14 | 2007-06-28 | Cynthia Hardy | Apparatus and method for tracking vehicle travel and expenditures |
US20070162445A1 (en) | 2005-11-23 | 2007-07-12 | Dun And Bradstreet | System and method for searching and matching data having ideogrammatic content |
US20070208503A1 (en) | 2006-03-02 | 2007-09-06 | James Harnsberger | System and method for documenting a travel event |
US20070233565A1 (en) | 2006-01-06 | 2007-10-04 | Jeff Herzog | Online Advertising System and Method |
US20070239799A1 (en) * | 2006-03-29 | 2007-10-11 | Anirudh Modi | Analyzing log files |
US20070250258A1 (en) | 2005-07-21 | 2007-10-25 | Iimap, Llc | Method and System for Accurate Reconstruction of Mileage Reports |
US20070265995A1 (en) | 2005-12-27 | 2007-11-15 | Dun And Bradstreet | Method and system for providing enhanced matching from customer driven queries |
US20080004924A1 (en) | 2006-06-28 | 2008-01-03 | Rong Zeng Cao | Business transformation management |
US7321869B1 (en) | 2000-06-29 | 2008-01-22 | Ncr Corp. | Allocated balances in a net interest revenue implementation for financial processing in a relational database management system |
US20080065491A1 (en) | 2006-09-11 | 2008-03-13 | Alexander Bakman | Automated advertising optimizer |
US20080147425A1 (en) | 2006-12-15 | 2008-06-19 | American Express Travel Related Services Company, Inc. | Strategic Partner Recognition |
US20080208638A1 (en) | 2007-01-20 | 2008-08-28 | Davidson Charles E | Methods and systems for administration of funds |
US20080301162A1 (en) | 2007-05-31 | 2008-12-04 | Bank Of America Corporation | Data conversion environment |
US20090043637A1 (en) | 2004-06-01 | 2009-02-12 | Eder Jeffrey Scott | Extended value and risk management system |
US20090048884A1 (en) | 2007-08-14 | 2009-02-19 | Jeffrey Rolland Olives | Merchant benchmarking tool |
US20090144201A1 (en) | 2007-11-30 | 2009-06-04 | Data Logix, Inc. | Targeting messages |
US20090193046A1 (en) | 2008-01-24 | 2009-07-30 | Oracle International Corporation | Match rules to identify duplicate records in inbound data |
US20090234826A1 (en) | 2005-03-19 | 2009-09-17 | Activeprime, Inc. | Systems and methods for manipulation of inexact semi-structured data |
US20090240737A1 (en) | 2004-12-11 | 2009-09-24 | Smapper Technologies Gmbh | Process and appliance for data processing and computer programme product |
US20090282010A1 (en) * | 2008-05-07 | 2009-11-12 | Sudharsan Vasudevan | Creation and enrichment of search based taxonomy for finding information from semistructured data |
US20090283591A1 (en) | 2006-12-07 | 2009-11-19 | Specialty Acquirer Llc | Public transit system fare processor for transfers |
US20100005048A1 (en) | 2008-07-07 | 2010-01-07 | Chandra Bodapati | Detecting duplicate records |
US20100057742A1 (en) | 2008-08-28 | 2010-03-04 | Visa Usa, Inc. | Mrw interface and method for support of merchant data processing |
US20100076812A1 (en) | 2008-09-24 | 2010-03-25 | Bank Of America Corporation | Business performance measurements |
US7801987B2 (en) | 2008-06-25 | 2010-09-21 | Microsoft Corporation | Dynamic infrastructure for monitoring service level agreements |
US7912842B1 (en) | 2003-02-04 | 2011-03-22 | Lexisnexis Risk Data Management Inc. | Method and system for processing and linking data records |
US20110087575A1 (en) | 2008-06-18 | 2011-04-14 | Consumerinfo.Com, Inc. | Personal finance integration system and method |
US20110191191A1 (en) | 2010-02-01 | 2011-08-04 | Yahoo! Inc. | Placeholder bids in online advertising |
US20110231246A1 (en) | 2010-03-18 | 2011-09-22 | Yahoo! Inc. | Online and offline advertising campaign optimization |
US20110289109A1 (en) * | 2010-05-21 | 2011-11-24 | Sony Corporation | Information processing apparatus, information processing method, and program |
US20120016738A1 (en) | 2010-07-15 | 2012-01-19 | My World, Inc. | Performance based pricing, promotion, and personalized offer management |
US20120102036A1 (en) | 2010-10-20 | 2012-04-26 | Microsoft Corporation | Automatically creating data hierarchy in crm applications based on imported contact data |
US20120109734A1 (en) | 2009-10-15 | 2012-05-03 | Visa U.S.A. Inc. | Systems and Methods to Match Identifiers |
US8175908B1 (en) | 2003-09-04 | 2012-05-08 | Jpmorgan Chase Bank, N.A. | Systems and methods for constructing and utilizing a merchant database derived from customer purchase transactions data |
US8177121B2 (en) | 2006-01-13 | 2012-05-15 | Intuit Inc. | Automated aggregation and comparison of business spending relative to similar businesses |
US20120173397A1 (en) | 2011-01-03 | 2012-07-05 | Joseph Elwell | Method and system for obtaining user data from third parties |
US20120173250A1 (en) | 2010-12-31 | 2012-07-05 | Microsoft Corporation | Behavior based loyalty system to deliver personalized benefits |
US20120189186A1 (en) | 1996-05-29 | 2012-07-26 | Csulits Frank M | Apparatus and system for imaging currency bills and financial documents and method for using the same |
US8243074B1 (en) | 2008-11-13 | 2012-08-14 | Intuit Inc. | Method and system for providing a personalized and dynamic financial caricature graphic |
US8250008B1 (en) | 2009-09-22 | 2012-08-21 | Google Inc. | Decision tree refinement |
US20120226583A1 (en) | 2000-04-26 | 2012-09-06 | Computer Applications Co., Ltd. | Method for managing buyer transactions and settlements using communication network between computers, and method for relaying information following buyer consumption trends to the buyer |
US20120284105A1 (en) | 2009-10-13 | 2012-11-08 | Ezsav Inc. | Apparatuses, methods, and computer program products enabling association of related product data and execution of transaction |
US8346661B2 (en) | 2010-03-24 | 2013-01-01 | Bank Of America Corporation | Aggregation of customer transaction data |
US20130085910A1 (en) | 2011-10-04 | 2013-04-04 | Peter Alexander Chew | Flexible account reconciliation |
US20130132410A1 (en) | 2011-11-18 | 2013-05-23 | Brian Carl Rineer | Systems And Methods For Identifying Potential Duplicate Entries In A Database |
US8554592B1 (en) | 2003-03-13 | 2013-10-08 | Mastercard International Incorporated | Systems and methods for transaction-based profiling of customer behavior |
US20130291060A1 (en) | 2006-02-01 | 2013-10-31 | Newsilike Media Group, Inc. | Security facility for maintaining health care data pools |
US20130297381A1 (en) | 2012-05-07 | 2013-11-07 | Logistimo India Private Limited | Method and system for managing a low-resource supply chain |
US8612262B1 (en) | 2003-11-19 | 2013-12-17 | Allstate Insurance Company | Market relationship management |
US20130339311A1 (en) | 2012-06-13 | 2013-12-19 | Oracle International Corporation | Information retrieval and navigation using a semantic layer |
US20140101004A1 (en) | 2012-10-08 | 2014-04-10 | Tina Marseille | Aggregation of related data items |
US8732055B1 (en) | 2008-11-21 | 2014-05-20 | Intuit Inc. | Method and system for performing a financial rewind |
Patent Citations (96)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4989141A (en) | 1987-06-01 | 1991-01-29 | Corporate Class Software | Computer system for financial analyses and reporting |
US5842185A (en) | 1993-02-18 | 1998-11-24 | Intuit Inc. | Method and system for electronically tracking financial transactions |
US5680305A (en) | 1995-02-16 | 1997-10-21 | Apgar, Iv; Mahlon | System and method for evaluating real estate |
US5873251A (en) | 1995-09-13 | 1999-02-23 | Kabushiki Kaisha Toshiba | Plant operation control system |
US20120189186A1 (en) | 1996-05-29 | 2012-07-26 | Csulits Frank M | Apparatus and system for imaging currency bills and financial documents and method for using the same |
US6073108A (en) | 1996-06-21 | 2000-06-06 | Paul, Hastings, Janofsky & Walker | Task-based classification and analysis system |
US5956691A (en) | 1997-01-07 | 1999-09-21 | Second Opinion Financial Systems, Inc. | Dynamic policy illustration system |
US6128602A (en) | 1997-10-27 | 2000-10-03 | Bank Of America Corporation | Open-architecture system for real-time consolidation of information from multiple financial systems |
US6021415A (en) | 1997-10-29 | 2000-02-01 | International Business Machines Corporation | Storage management system with file aggregation and space reclamation within aggregated files |
US20060004746A1 (en) | 1998-09-04 | 2006-01-05 | Kalido Limited | Data processing system |
US20050240881A1 (en) | 1998-10-22 | 2005-10-27 | Rush Gary W | Navigational interface for ERP system |
US6032134A (en) | 1998-11-18 | 2000-02-29 | Weissman; Steven I. | Credit card billing system for identifying expenditures on a credit card account |
US6430539B1 (en) | 1999-05-06 | 2002-08-06 | Hnc Software | Predictive modeling of consumer financial behavior |
US6542896B1 (en) | 1999-07-20 | 2003-04-01 | Primentia, Inc. | System and method for organizing data |
US20020198775A1 (en) | 1999-08-20 | 2002-12-26 | Ryan Patrick Nicholas | Customer relationship management system and method |
US20050131815A1 (en) | 2000-03-01 | 2005-06-16 | Passgate Corporation | Method, system and computer readable medium for Web site account and e-commerce management from a central location |
US20120226583A1 (en) | 2000-04-26 | 2012-09-06 | Computer Applications Co., Ltd. | Method for managing buyer transactions and settlements using communication network between computers, and method for relaying information following buyer consumption trends to the buyer |
US6792422B1 (en) | 2000-06-19 | 2004-09-14 | Microsoft Corporation | Automatic categorization of financial transactions |
US20020173986A1 (en) | 2000-06-19 | 2002-11-21 | Microsoft Corporation | Automatic categorization of financial transactions |
US7321869B1 (en) | 2000-06-29 | 2008-01-22 | Ncr Corp. | Allocated balances in a net interest revenue implementation for financial processing in a relational database management system |
US20060178961A1 (en) | 2000-09-01 | 2006-08-10 | Intuit Inc. | Automated Tax Return With Universal Data Import |
US20050154617A1 (en) | 2000-09-30 | 2005-07-14 | Tom Ruggieri | System and method for providing global information on risks and related hedging strategies |
US20020073114A1 (en) | 2000-10-30 | 2002-06-13 | Nicastro Cherisse M. | Business asset management system |
US20020169658A1 (en) | 2001-03-08 | 2002-11-14 | Adler Richard M. | System and method for modeling and analyzing strategic business decisions |
US20020184043A1 (en) | 2001-06-04 | 2002-12-05 | Egidio Lavorgna | Systems and methods for managing business metrics |
US20030065677A1 (en) | 2001-09-28 | 2003-04-03 | Culp Jerlyn R. | Electronic calendaring device |
US20030195780A1 (en) | 2001-12-13 | 2003-10-16 | Liquid Engines, Inc. | Computer-based optimization system for financial performance management |
US20040015381A1 (en) | 2002-01-09 | 2004-01-22 | Johnson Christopher D. | Digital cockpit |
US20030167253A1 (en) | 2002-03-04 | 2003-09-04 | Kelly Meinig | Method and system for identification and maintenance of families of data records |
US20040122905A1 (en) | 2002-08-16 | 2004-06-24 | Smith Christopher D. | System and method for integrating electronic mail accounts |
US20040093281A1 (en) | 2002-11-05 | 2004-05-13 | Todd Silverstein | Remote purchasing system and method |
US20040138932A1 (en) | 2003-01-09 | 2004-07-15 | Johnson Christopher D. | Generating business analysis results in advance of a request for the results |
US20040138936A1 (en) | 2003-01-09 | 2004-07-15 | Johnson Christopher D. | Performing what-if forecasts using a business information and decisioning control system |
US20040138934A1 (en) | 2003-01-09 | 2004-07-15 | General Electric Company | Controlling a business using a business information and decisioning control system |
US20040138935A1 (en) | 2003-01-09 | 2004-07-15 | Johnson Christopher D. | Visualizing business analysis results |
US7912842B1 (en) | 2003-02-04 | 2011-03-22 | Lexisnexis Risk Data Management Inc. | Method and system for processing and linking data records |
US8554592B1 (en) | 2003-03-13 | 2013-10-08 | Mastercard International Incorporated | Systems and methods for transaction-based profiling of customer behavior |
US20040236734A1 (en) | 2003-05-22 | 2004-11-25 | Pershing Investments, Llc | Rating system and method for identifying desirable customers |
US20040243489A1 (en) | 2003-05-27 | 2004-12-02 | International Business Machines Corporation | Expense accounting data management based on electronic expense document |
US20050013428A1 (en) | 2003-07-17 | 2005-01-20 | Walters James Frederick | Contact center optimization program |
US8175908B1 (en) | 2003-09-04 | 2012-05-08 | Jpmorgan Chase Bank, N.A. | Systems and methods for constructing and utilizing a merchant database derived from customer purchase transactions data |
US8612262B1 (en) | 2003-11-19 | 2013-12-17 | Allstate Insurance Company | Market relationship management |
US20050154769A1 (en) | 2004-01-13 | 2005-07-14 | Llumen, Inc. | Systems and methods for benchmarking business performance data against aggregated business performance data |
US20050252963A1 (en) | 2004-04-30 | 2005-11-17 | Adams Neil P | System and method of operation control on an electronic device |
US20050257209A1 (en) | 2004-04-30 | 2005-11-17 | Adams Neil P | System and method of owner application control of electronic devices |
US20090043637A1 (en) | 2004-06-01 | 2009-02-12 | Eder Jeffrey Scott | Extended value and risk management system |
US20050289024A1 (en) | 2004-06-09 | 2005-12-29 | Hahn-Carlson Dean W | Automated transaction accounting processing engine and approach |
US20060123461A1 (en) | 2004-12-02 | 2006-06-08 | Xerox Corporation | Systems and methods for protecting privacy |
US20090240737A1 (en) | 2004-12-11 | 2009-09-24 | Smapper Technologies Gmbh | Process and appliance for data processing and computer programme product |
US20090234826A1 (en) | 2005-03-19 | 2009-09-17 | Activeprime, Inc. | Systems and methods for manipulation of inexact semi-structured data |
US20060293945A1 (en) | 2005-05-27 | 2006-12-28 | France Telecom | Method and device for building and using table of reduced profiles of paragons and corresponding computer program |
US20070022025A1 (en) | 2005-06-29 | 2007-01-25 | Joel Litman | System and method for identifying accounting anomalies to help investors better assess investment risks and opportunities |
US20070250258A1 (en) | 2005-07-21 | 2007-10-25 | Iimap, Llc | Method and System for Accurate Reconstruction of Mileage Reports |
US20070055597A1 (en) | 2005-09-08 | 2007-03-08 | Visa U.S.A. | Method and system for manipulating purchase information |
US20070061187A1 (en) | 2005-09-09 | 2007-03-15 | Marlene Laskowski-Bender | Modular system for determining return on investment from marketing communications |
US20070162445A1 (en) | 2005-11-23 | 2007-07-12 | Dun And Bradstreet | System and method for searching and matching data having ideogrammatic content |
US20070150139A1 (en) | 2005-12-14 | 2007-06-28 | Cynthia Hardy | Apparatus and method for tracking vehicle travel and expenditures |
US20070265995A1 (en) | 2005-12-27 | 2007-11-15 | Dun And Bradstreet | Method and system for providing enhanced matching from customer driven queries |
US20070233565A1 (en) | 2006-01-06 | 2007-10-04 | Jeff Herzog | Online Advertising System and Method |
US8177121B2 (en) | 2006-01-13 | 2012-05-15 | Intuit Inc. | Automated aggregation and comparison of business spending relative to similar businesses |
US20130291060A1 (en) | 2006-02-01 | 2013-10-31 | Newsilike Media Group, Inc. | Security facility for maintaining health care data pools |
US20070208503A1 (en) | 2006-03-02 | 2007-09-06 | James Harnsberger | System and method for documenting a travel event |
US20070239799A1 (en) * | 2006-03-29 | 2007-10-11 | Anirudh Modi | Analyzing log files |
US20080004924A1 (en) | 2006-06-28 | 2008-01-03 | Rong Zeng Cao | Business transformation management |
US20080065491A1 (en) | 2006-09-11 | 2008-03-13 | Alexander Bakman | Automated advertising optimizer |
US20090283591A1 (en) | 2006-12-07 | 2009-11-19 | Specialty Acquirer Llc | Public transit system fare processor for transfers |
US20080147425A1 (en) | 2006-12-15 | 2008-06-19 | American Express Travel Related Services Company, Inc. | Strategic Partner Recognition |
US20080208638A1 (en) | 2007-01-20 | 2008-08-28 | Davidson Charles E | Methods and systems for administration of funds |
US20080301162A1 (en) | 2007-05-31 | 2008-12-04 | Bank Of America Corporation | Data conversion environment |
US20090048884A1 (en) | 2007-08-14 | 2009-02-19 | Jeffrey Rolland Olives | Merchant benchmarking tool |
US20090144201A1 (en) | 2007-11-30 | 2009-06-04 | Data Logix, Inc. | Targeting messages |
US20090193046A1 (en) | 2008-01-24 | 2009-07-30 | Oracle International Corporation | Match rules to identify duplicate records in inbound data |
US20090282010A1 (en) * | 2008-05-07 | 2009-11-12 | Sudharsan Vasudevan | Creation and enrichment of search based taxonomy for finding information from semistructured data |
US20110087575A1 (en) | 2008-06-18 | 2011-04-14 | Consumerinfo.Com, Inc. | Personal finance integration system and method |
US7801987B2 (en) | 2008-06-25 | 2010-09-21 | Microsoft Corporation | Dynamic infrastructure for monitoring service level agreements |
US20100005048A1 (en) | 2008-07-07 | 2010-01-07 | Chandra Bodapati | Detecting duplicate records |
US20100057742A1 (en) | 2008-08-28 | 2010-03-04 | Visa Usa, Inc. | Mrw interface and method for support of merchant data processing |
US20100076812A1 (en) | 2008-09-24 | 2010-03-25 | Bank Of America Corporation | Business performance measurements |
US8243074B1 (en) | 2008-11-13 | 2012-08-14 | Intuit Inc. | Method and system for providing a personalized and dynamic financial caricature graphic |
US8732055B1 (en) | 2008-11-21 | 2014-05-20 | Intuit Inc. | Method and system for performing a financial rewind |
US8250008B1 (en) | 2009-09-22 | 2012-08-21 | Google Inc. | Decision tree refinement |
US20120284105A1 (en) | 2009-10-13 | 2012-11-08 | Ezsav Inc. | Apparatuses, methods, and computer program products enabling association of related product data and execution of transaction |
US20120109734A1 (en) | 2009-10-15 | 2012-05-03 | Visa U.S.A. Inc. | Systems and Methods to Match Identifiers |
US20110191191A1 (en) | 2010-02-01 | 2011-08-04 | Yahoo! Inc. | Placeholder bids in online advertising |
US20110231246A1 (en) | 2010-03-18 | 2011-09-22 | Yahoo! Inc. | Online and offline advertising campaign optimization |
US8346661B2 (en) | 2010-03-24 | 2013-01-01 | Bank Of America Corporation | Aggregation of customer transaction data |
US20110289109A1 (en) * | 2010-05-21 | 2011-11-24 | Sony Corporation | Information processing apparatus, information processing method, and program |
US20120016738A1 (en) | 2010-07-15 | 2012-01-19 | My World, Inc. | Performance based pricing, promotion, and personalized offer management |
US20120102036A1 (en) | 2010-10-20 | 2012-04-26 | Microsoft Corporation | Automatically creating data hierarchy in crm applications based on imported contact data |
US20120173250A1 (en) | 2010-12-31 | 2012-07-05 | Microsoft Corporation | Behavior based loyalty system to deliver personalized benefits |
US20120173397A1 (en) | 2011-01-03 | 2012-07-05 | Joseph Elwell | Method and system for obtaining user data from third parties |
US20130085910A1 (en) | 2011-10-04 | 2013-04-04 | Peter Alexander Chew | Flexible account reconciliation |
US20130132410A1 (en) | 2011-11-18 | 2013-05-23 | Brian Carl Rineer | Systems And Methods For Identifying Potential Duplicate Entries In A Database |
US20130297381A1 (en) | 2012-05-07 | 2013-11-07 | Logistimo India Private Limited | Method and system for managing a low-resource supply chain |
US20130339311A1 (en) | 2012-06-13 | 2013-12-19 | Oracle International Corporation | Information retrieval and navigation using a semantic layer |
US20140101004A1 (en) | 2012-10-08 | 2014-04-10 | Tina Marseille | Aggregation of related data items |
Non-Patent Citations (1)
Title |
---|
Bose, Ranjit, "Knowledge management-enabled health care management systems: capabilities, infrastructure, and decision-support," Expert Systems with Applications 24 (2003) 59-71, 2002, Elsevier Science Ltd. |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Hurwitz et al. | Big data for dummies | |
Chen et al. | Business intelligence and analytics: from big data to big impact | |
US20100100371A1 (en) | Method, System, and Apparatus for Message Generation | |
Rizzo et al. | NERD: a framework for unifying named entity recognition and disambiguation extraction tools | |
US7844520B1 (en) | Method and apparatus for monitoring credit reports using a computing system implemented financial management system | |
US20140214871A1 (en) | Generation of synthetic context frameworks for dimensionally constrained hierarchical synthetic context-based objects | |
US20080082539A1 (en) | Systems and methods for provisioning content from multiple sources to a computing device | |
US20130290710A1 (en) | System and method for a cloud-based electronic communication vault | |
Spagnuolo et al. | Bitiodine: Extracting intelligence from the bitcoin network | |
US8060423B1 (en) | Method and system for automatic categorization of financial transaction data based on financial data from similarly situated users | |
US8688573B1 (en) | Method and system for identifying a merchant payee associated with a cash transaction | |
US20140074885A1 (en) | Generation of synthetic context objects | |
US20140074833A1 (en) | User-specific synthetic context object matching | |
US20060179039A1 (en) | Method and system for performing secondary search actions based on primary search result attributes | |
US20120084373A1 (en) | Computer device for reading e-book and server for being connected with the same | |
US20140142923A1 (en) | Text prediction using environment hints | |
US20090030754A1 (en) | Methods, systems and computer software utilizing xbrl to identify, capture, array, manage, transmit and display documents and data in litigation preparation, trial and regulatory filings and regulatory compliance | |
Preotiuc-Pietro et al. | Trendminer: An architecture for real time analysis of social media text | |
US8346664B1 (en) | Method and system for modifying financial transaction categorization lists based on input from multiple users | |
US20140114941A1 (en) | Search activity prediction | |
US8566578B1 (en) | Method and system for ensuring compliance in public clouds using fine-grained data ownership based encryption | |
US20150379429A1 (en) | Interactive interfaces for machine learning model evaluations | |
US20130198268A1 (en) | Generation of a music playlist based on text content accessed by a user | |
US20140280318A1 (en) | Method and System for Generating a Geocode Trie and Facilitating Reverse Geocode Lookups | |
US8386487B1 (en) | Clustering internet messages |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: INTUIT INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:DENG, HOUTAO;ROUMELIOTIS, GEORGE;REEL/FRAME:029229/0144 Effective date: 20121029 |