An item authority system is provided. The item authority system uses rules to identify item definitions that match or potentially match an item description. When a unique match is found, then the item authority system may indicate that the item description describes the same item as the item definition. If multiple matches or only potential matches are identified, then the item authority system may allow a user to manually indicate which item definition matches.
|
19. A computer system for matching item descriptions to item definitions, comprising:
a matching engine subsystem that identifies candidate item definitions for an item description, that calculates similarity scores for candidate item definitions, and that indicates candidate item definitions that match or potentially match an item description based on the similarity scores, wherein a score is assigned to the attributes of the item definition and the item description, and scores of the attributes are aggregated to derive the similarity score; and
a manual matching subsystem that allows a user to designate a potentially matching item definition as matching an item description.
45. A computer system for identifying an item definition that matches an item description, comprising:
means for providing one or more rules that specify how to generate a similarity score based on similarity between the item definition and an item description;
means for generating a similarity score for the item definition and the item description and each of a plurality of item definitions in accordance with the rules, wherein a score is assigned to the attributes of the item definition and the item description, and scores of the attributes are aggregated to derive the similarity score; and
means for selecting the item definition whose generated similarity score indicates it is most similar to the item description as the matching item definition.
28. A computer-readable medium containing instructions for identifying an item definition that matches an item description, by a method comprising:
providing one or more rules that specify how to generate a similarity score based on similarity between the item definition and an item description;
for each of a plurality of item definitions, generating a similarity score for the item definition and the item description in accordance with the rules, wherein a score is assigned to the attributes of the item definition and the item description, and scores of the attributes are aggregated to derive the similarity score; and
selecting the item definition whose generated similarity score indicates it is most similar to the item description as the matching item definition.
1. A method in a computer system for identifying an item definition that matches an item description, the item definition and item description having attributes with values, the method comprising:
providing one or more rules that specify how to generate a similarity score based on similarity between the values of the attributes of an item definition and an item description;
for each of a plurality of item definitions, generating a similarity score for the item definition and the item description in accordance with the rules, wherein a score is assigned to the attributes of the item definition and the item description, and scores of the attributes are aggregated to derive the similarity score; and
selecting the item definition whose generated similarity score indicates it is most similar to the item description as the matching item definition.
18. A method in a computer system for determining whether an item description matches an item definition in a collection of item definitions, the method comprising:
providing one or more rules for use in determining whether the item description matches an item definition, each rule having one or more filters specifying a scoring metric for calculating a similarity score indicating similarity between an item description and an item definition, wherein a score is assigned to the attributes of the item definition and the item description, and scores of the attributes are aggregated to derive the similarity score;
selecting candidate item definitions that may match the item description;
for each rule,
for each filter in the rule,
calculating similarity scores for candidate item definitions in accordance with the scoring metric of the filter; and
selecting based on the calculated similarity scores the candidate item definition that most closely matches the item description as the matching item definition.
2. The method of
3. The method of
4. The method of
5. The method of
6. The method of
7. The method of
8. The method of
9. The method of
10. The method of
11. The method of
12. The method of
13. The method of
14. The method of
15. The method of
16. The method of
generating indexes for attributes, each index for an attribute mapping values of that attribute to item definitions; and
using the indexes to identify candidate item definitions.
17. The method of
20. The computer system of
21. The computer system of
22. The computer system of
23. The computer system of
24. The computer system of
25. The computer system of
26. The computer system of
27. The computer system of
29. The computer-readable medium of
30. The computer-readable medium of
31. The computer-readable medium of
32. The computer-readable medium of
33. The computer-readable medium of
34. The computer-readable medium of
35. The computer-readable medium of
36. The computer-readable medium of
37. The computer-readable medium of
38. The computer-readable medium of
39. The computer-readable medium of
40. The computer-readable medium of
41. The computer-readable medium of
42. The computer-readable medium of
43. The computer-readable medium of
44. The computer-readable medium of
generating indexes for attributes, each index for an attribute mapping values of that attribute to item definitions; and
using the indexes to identify candidate item definitions.
46. The computer system of
47. The computer system of
48. The computer system of
49. The computer system of
50. The computer system of
51. The computer system of
52. The computer system of
53. The computer system of
|
The described technology relates generally to matching item descriptions to item definitions.
Some electronic commerce web sites allow many merchants to advertise and sell their products and services, referred to as items, through a single web site. The web site may maintain a product catalog that describes all the products of all the merchants that are available to be purchased through the web site. In addition, the web site may maintain a record of the inventory for each merchant. A customer who desires to purchase a product through the web site may browse or use a search engine to search the product catalog for a product of interest. When a product of interest is found, the web site may identify from an inventory table the merchants who have the product of interest in stock, their price for the product of interest, shipping terms, and so on. The customer can then purchase the product of interest from a merchant who, for example, is offering the lowest price. The web site may coordinate the collecting of payment information and shipping information from the customer. The web site then notifies the merchant, who ships the product according to the shipping information. The web site may collect the payment from a financial institution, such as a credit card company. The web site may then keep a commission on the sale of the product and pay the rest to the merchant. The web site may also update the inventory for the merchant to reflect the sale of the product.
These web sites may provide various services that allow a merchant to update its inventory information maintained by the web site. For example, the web site may provide a bulk loader that uploads a file of current inventory information from a merchant. The bulk loader may scan the inventory information to ensure that it is in the correct format before updating the existing inventory information for that merchant. The inventory information needs to be mapped to the product in the product catalog associated with each product whose inventory information is being uploaded. For example, if a product is a book, then the inventory information may include the international standard book number (“ISBN”) for that book. The product catalog will contain an entry with that ISBN that describes the book. If each product in inventory is mapped to a product in the product catalog, then, when a customer browses the product catalog, the web site can identify and display the corresponding inventory of that product.
Unfortunately, there may not be an industry standard way to uniquely identify each product that is in inventory. As a result, the uploaded inventory information may not correctly or uniquely be associated with a product in the product catalog. The uploaded inventory information may, nevertheless, include attributes of the product, such as title, publisher, manufacturer, part number, and price, that may help to uniquely identify a corresponding product in the product catalog. Even if there was an industry standard way to uniquely identify each product, the merchants might not use that unique identification in their own databases and thus have no easy way for providing that unique identification when uploading their inventory information. In addition, since there may be hundreds of thousands of products in the product catalog, even if each merchant attempted to use the unique identification, it would be expected that various errors in the identification itself would occur. For example, a data entry operator for a merchant may mistype the unique identification or simply enter the wrong identification. In addition, merchants may attempt to upload information relating to new products that have not yet been defined in the product catalog. It would be desirable to have a system that would automatically match products in inventory to products in the product catalog and, when not possible, to facilitate the manual matching of products in inventory to products within the product catalog.
A method and system for automatically identifying item definitions that match item descriptions is provided. In one embodiment, the item authority system provides a matching engine that receives an item description (e.g., corresponding to an item in inventory) and compares that item description to various item definitions (e.g., corresponding to products in the product catalog). The item definitions provide what are considered authoritative definitions of each item. For example, an item definition may include an industry standard unique identifier for the item or may include values for attributes (e.g., title) that uniquely identify the item. The matching engine identifies the item definition that is most similar to the item description as the matching item definition. The item definition may improve over time as the definition is augmented by additional information or corrected with more accurate information.
The matching engine, in one embodiment, uses rules that specify how the similarity between an item definition and an item description is to be determined. These rules specify how to calculate a similarity score for an item definition and an item description based on a comparison of their attributes. A rule may also specify a threshold similarity score that is to be met in order for an item definition to match an item description. For example, if the similarity score between an item definition and an item description is 0.8 and the threshold similarity score is 0.75, then the item definition and the item description may be considered a match. If the threshold similarity score is 0.9, however, then the item definition and the item description would not be considered a match. In one embodiment, a rule may specify multiple ways, referred to as “filters,” to calculate similarity scores. For example, if the item is a book, then one similarity score may be calculated based on the similarity between the ISBNs in the item description and the item definition, and another similarity score may be calculated based on the similarity between title and author attributes of the item description and item definition. In one embodiment, when a similarity score is calculated based on multiple attributes, the similarity score may be a weighted combination of the similarity scores for each attribute. For example, the weight for the title attribute may be 0.75 and the weight for the author attribute may be 0.25, which indicates that the similarity between the titles is more indicative of a match than the similarity between the authors. Each way to calculate a similarity score, that is, each filter, may have its own threshold similarity score that indicates whether the item description and item definition match. Thus, in this example, if the ISBNs are identical, then the item description and item definition may be considered a match. If, however, the ISBN is missing from the item description, then the item description and the item definition may be considered a match when the title and author are very similar.
When the matching engine identifies only one item definition with a similarity score above the threshold similarity score, then the matching engine indicates that the item definition matches the item description. In such case, the item described by the item description may be added to the inventory corresponding to the matching item definition. If, however, the matching engine identifies more than one item definition with a similarity score above the threshold similarity score, then the matching engine identifies the item description as ambiguous. In such case, the item authority system may provide a manual matching subsystem through which a user can resolve the ambiguity. If the similarity score of no item definition exceeds the threshold similarity score, but at least one item definition has a similarity score that indicates it is a potential match (i.e., above a nearly matched threshold similarity score), then the matching engine may provide the item description and the potential matching item definitions to the manual matching subsystem so that a user can manually identify a matching item definition, as appropriate. These potential matching item definitions are placed in a “resolution queue” waiting for manual intervention.
If the matching engine does not identify any potential matching item definitions, then the matching engine determines whether the item description qualifies as a new item for which a new item definition should be defined. If the item description qualifies, then a new item definition is added to the product catalog. If the item description does not qualify, then the matching engine may place it in the resolution queue waiting for manual intervention. In such a case, a user would need to manually indicate a matching item definition or indicate that a new item definition is to be defined. Alternatively, the matching engine may discard the item description if it does not match any item definition and does not qualify for addition to the product catalog. In this way, the item authority system automatically identifies the matching item definition for an item description when possible, and when not possible it provides potential matching item definitions to assist in manual matching or discards the item description. The collection of item definitions (e.g., a product catalog) may be considered the “item authority” since it is the authoritative definition of the items.
The item authority system, in one embodiment, includes a manual matching subsystem that facilitates the matching of item descriptions to item definitions that cannot be automatically matched. The matching engine provides to the manual matching subsystem the item descriptions for which a match cannot be identified along with any ambiguous matching or potential matching item definitions that have been identified. The manual matching subsystem provides a user interface that allows a user to view the unmatched item descriptions (i.e., those in the resolution queue) along with the ambiguous matching and potential matching item definitions. The user can request detailed information about the item definitions and manually indicate which item definition, if any, matches the item description. When none of the ambiguous or potential matching item definitions match the item description, the manual matching subsystem may allow the user to search for other item definitions that may match the item description. The manual matching system may also allow a user to merge item definitions into a single item definition or to update existing item definitions with additional information. It is possible that multiple item definitions may refer to the same underlying item. This may occur, for example, because the matching engine incorrectly identified that an item description represented a new item definition. The manual matching engine may also allow the user to review the automatic matches made by the matching engine and to override the matches when appropriate. Thus, the item authority system provides for the automatic matching of item description and item definitions when possible and, when not possible, provides for manual matching.
The rules table 211 of the matching engine contains various rules for each category of items. For example, the rules table may contain a set of rules for a book category of items and a separate set of rules for a consumer electronics category of items. In one embodiment, each rule contains one or more filters that specify a criterion for an item description to match an item definition. Each filter specifies one or more attributes and a scoring algorithm for quantitatively representing the similarity between an item description and an item definition.
The indexes 212 allow rapid access to entries of the item definition table 101 that match certain values. In one embodiment, an index for each attribute represented by a filter of a rule is generated. For example, if a rule for a category of books has a filter that specifies an ISBN attribute and a title attribute, then an index for the ISBN attribute and another index for the title attribute is created. The matching engine uses the indexes to quickly identify item definitions corresponding to a given attribute value. In one embodiment, the indexes may be updated on a periodic basis, such as daily, to reflect changes in the item definition table. With only periodic updating, the indexes may not represent the current state of the item definition table. In particular, item definitions may have been added to the item definition table after the indexes were last generated. Because the indexes may be out of date, after searching the indexes the matching engine may search all newly defined items in the item definition table (i.e., those items defined after the last index update) before adding a new item definition to the item definition table to ensure that a duplicate item definition for the same item is not created.
The item matcher component 201 controls the overall processing of the matching engine. The item matcher component receives an item description and outputs the item description and its status along with an indication of any matching or potentially matching item definitions. The item matcher component initially uses categorizer 202 to identify the category associated with the item description. The category is identified by looking at certain data fields in the item description. For example, the categorizer may examine a field representative of product type (e.g., consumer electronics, toys) and a second field representative of product sub-type (e.g., DVDs, stuffed animals). The values of these fields are mapped to different user-defined categories. The item matcher component then retrieves the rules for the identified category from the rules table 211. The item matcher component then invokes the match to item definitions component 203 to identify item definitions that match the item description based on the rules for that category.
The item matcher component 201 sets the status for the item description based on the identified category rules and the matching and potential matching item definitions. The match to item definitions component initially identifies candidate item definitions using the identify candidate item definitions component 204. The candidate item definitions represent the set of item definitions that are selected for detailed analysis as to whether they match the item description. Since there may be hundreds of thousands of item definitions, it may be impractical to perform a detailed analysis on each item definition. The candidate item definitions represent an initial selection of item definitions that most likely include the matching item definitions, and which may be a fraction of the total number of item definitions in the item definition table 101. The identify candidate item definitions component, in one embodiment, uses a designated filter of each rule of the identified category to retrieve candidate item definitions based on the indexes. The match to item definitions component 203 then invokes the identify rule matches component 205 for each rule passing the candidate item definitions and receiving matching or potentially matching item definitions in return. When a matching item definition is identified, then the match to item definitions component returns that matching item definition without evaluating any other rule. If no matching item definition is found, then the match to item definitions component returns any potentially matching item definitions that were identified. As further described herein, the identify rule matches component applies a rule to the candidate item definitions to calculate similarity scores for the item definitions. The identify rule matches component 205 invokes the identify filter matches component 206 to calculate a similarity score for each candidate item definition for each filter. The identify filter matches component invokes the apply filter component 207 for each filter to calculate scores. The apply filter component invokes various scoring methods 208 designated by the filters to calculate a similarity score for an attribute. For example, there may be a scoring method for comparing attributes and generating a similarity score indicating the similarity. In one embodiment, the similarity scores vary between zero and one, with zero indicating very dissimilar and one indicating very similar.
Table 1 contains an example set of rules for the category of books in one embodiment.
TABLE 1
1.
<BOOKS resolution_threshold=“.8”>
2.
<RULE name=“isbn” search_size=“100”>
3.
<FILTER>
4.
<isbn method=“wordmatch” criteria=“.99” weight=“1.00” present=“true” valid=“true”/>
5.
<SIZE> 10 </SIZE>
6.
<THRESHOLD> .99 </THRESHOLD>
7.
</FILTER>
8.
<FILTER>
9.
<isbn method=“wordmatch” criteria=“.99” weight=“.75” present=“true” valid=“true”/>
10.
<author method=“edit_distance” criteria=“.60” weight=“.25” present=“true” valid=“true”/>
11.
<SIZE> 4 </SIZE>
12.
<THRESHOLD> .90 </THRESHOLD>
13.
</FILTER>
14.
<FILTER>
15.
<isbn method=“wordmatch” criteria=“.99” weight=“.75” present=“true” valid=“true”/>
16.
<title method=“edit_distance” criteria=“.25” weight=“.25” present=“true” valid=“true”/>
17.
<SIZE> 4 </SIZE>
18.
<THRESHOLD> .90 </THRESHOLD>
19.
</FILTER>
20.
</RULE>
21.
<RULE name=“title” search_size=“100”>
22.
<FILTER>
23.
<title method=“edit_distance” criteria=“.25” weight=“.5” present=“true” valid=“true”/>
24.
<product_type_id method=“edit_distance” criteria=“.99” weight=“.50” present=“true”
25.
valid=“true”/>
26.
<SIZE> 100 </SIZE>
27.
<THRESHOLD> .60 </THRESHOLD>
28.
</FILTER>
29.
<FILTER>
30.
<title method=“edit_distance” criteria=“.25” weight=“.30” present=“true” valid=“true”/>
31.
<author method=“edit_distance” criteria=“.25” weight=“.25” present=“true” valid=“true”/>
32.
<brand method=“edit_distance” criteria=“.5” weight=“.25” present=“true” valid=“true”/>
33.
<book_format method=“edit_distance” criteria=“.5” weight=“.20” present=“true”
34.
valid=“true”/>
35.
<SIZE> 50 </SIZE>
36.
<THRESHOLD> .80 </THRESHOLD>
37.
</FILTER>
38.
<FILTER>
39.
<title method=“edit_distance” criteria=“.25” weight=“.50” present=“true” valid=“true”/>
40.
<author method=“edit_distance” criteria=“.25” weight=“.25” present=“true” valid=“true”/>
41.
<brand method=“edit_distance” criteria=“.5” weight=“.25” present=“true” valid=“true”/>
42.
<SIZE> 50 </SIZE>
43.
<THRESHOLD> .90 </THRESHOLD>
44.
</FILTER>
45.
</RULE>
46.
<NEW>
47.
<isbn present=“true” valid=“true”/>
48.
<title present=“true” valid=“true”/>
49.
<brand present=“true” valid=“true”/>
50.
<UNIQUE>
51.
<ATTRIBUTE>isbn</ATTRIBUTE>
52.
</UNIQUE>
53.
</NEW>
54.
</BOOKS>
The rules are specified using the extensible markup language (“XML”). In this example, the books category has a set of rules delimited by the books tags (lines 1 and 54). The category includes two rules (lines 2-20 and lines 21-45) along with a new item definition criterion (lines 46-53). The “books” tag (line 1) includes a “resolution_threshold” field that indicates the resolution queue threshold is 0.8 (i.e., a potentially matching threshold similarity score). That is, only those candidate item definitions whose similarity scores are above 0.8 are considered as potential matches. The first rule delineated by the “rule” tags (lines 2-20) contains three filters delineated by the “filter” tags (lines 3-7, 8-13, 14-19). The “rule” tag includes a “name” field and a “search_size” field (line 2). The name of the first rule is “ISBN,” and the search size is 100. The search size for a rule indicates the number of the candidate item definitions that are identified from the item definition table. Each filter identifies one or more attributes that are to be used in calculating the similarity score. For example, the second filter (lines 8-13) indicates an attribute scoring technique for the ISBN attribute (line 9) and the author attribute (line 10) that is to be used in calculating the similarity score associated with that filter. The “criteria” field indicates that the resulting attribute similarity score has to be above 0.99, or else the filter similarity score is set to zero. The “weight” field indicates the weight of the attribute similarity score given to this attribute when calculating the filter similarity score. In this example, the ISBN attribute has a weight of 0.75, and the author attribute has a weight of 0.25. Thus, the filter similarity score is calculated by adding 0.75 of the ISBN similarity score and 0.25 of the author similarity score. The “present” field indicates that this attribute needs to be present in the item definition to calculate a similarity score. The “valid” field indicates that this attribute value needs to be valid in the item definition to calculate a similarity score. The “present” and “valid” fields are also used to test the integrity of the data of an item description. If an item description does not have an attribute that should be present or if its attribute value is invalid when it should be valid, then the item authority system identifies no item definitions as matching or potentially matching for that filter. The “threshold” tag of a filter indicates the minimum filter similarity score to be considered a match. If the filter similarity score is above the threshold similarity score, then the item definition is designated a match. An attribute similarity score is calculated using the scoring method specified by the attribute tags. For example, the ISBN attribute has a “method” field that identifies that the “wordmatch” method is to be used when generating the attribute similarity score. The wordmatch method removes punctuation, creates tokens, and compares the collection of tokens in the item description and item definition to identify the intersection of the two token sets. Those skilled in the art will recognize that many other techniques exist for comparing two text strings, including, for example, comparing the strings for an exact match (“exactmatch” method), measuring how many changes are necessary to modify one string to equal the second string (“editdistance” method), and determining the number, order, and identity of words that are detected (“order sequence” method). If the filter similarity score is above the resolution threshold similarity score, then the item definition is designated as potentially matching, assuming it has not already been designated as a match. The “size” tag of a filter indicates the maximum number of item definitions to be identified as having filter similarity scores above the threshold similarity score. The size tags and the search size fields thus place a limit on the number of item definitions that are checked by the matching engine. If a match is found for an item description, then any potentially matching item definitions can be disregarded. It is also possible that a single item definition may be indicated as a match or a potential match based on different filters. In such a case, the matching engine may set the similarity score for the item definition to the highest similarity score of a match, or, when a match is not found, to the highest similarity score of a potential match.
The new tag of the books rule indicates the criteria that an item description is to satisfy for it to be considered as representing a new item definition. In the example of Table 1, the ISBN, title, and brand tags should each be present in the item description and their attribute values should be valid. In addition, the value of the ISBN attribute of the item description should not be a duplicate of an ISBN that is already in the item definition table. If no matching or potential matching item definitions are found for an item description and the item description passes the new criteria, then the item authority system automatically adds a new item definition to the item definition table. Alternatively, the new item definition may be added only after confirmation by a system user.
The manual matching component 301 provides a user interface through which a user can select the function of the item resolution component 302, the inventory match component 303, and the review history component 304. The item resolution component 302 allows a user to view the unmatched item descriptions whose status is resolution queue and match those item descriptions with one of the item definitions in the potentially matching item definition table. The inventory match component 303 allows a user to review item definitions and to match unmatched item descriptions of the inventory table (i.e., those item descriptions that have no potential matches) with item definitions. The review history component 304 allows a user to view and override changes that have been made to the inventory table and item definition table.
In block 601, the component selects the next attribute of the first filter of the rule. In decision block 602, if all the attributes of the first filter have already been selected, then the component continues at block 604, else the component continues at block 603. In block 603, the component adds a “where” statement to the query indicating the attribute and the attribute value of the item description. The component then loops to block 601 to select the next attribute. In block 604, the component executes the query limited to the search size number of results specified by the rule. In one embodiment, the query is executed against the indexes generated by the matching engine. The component then returns the query results as the candidate item definitions.
From the foregoing, it will be appreciated that although embodiments of the item authority system have been described for purposes of illustration, various modifications may be made without deviating from the spirit and scope of the invention. For example, the manual matching system may be modified to allow the user to specify new item definitions that are based on a received and unmatched item description. Accordingly, the invention is not limited except by the appended claims.
Bicknell, Nicholas, Bohn, Shawn, Paralkar, Anmol, Arora, Anuvrata
Patent | Priority | Assignee | Title |
10331691, | Jun 17 2013 | Ebay Inc. | Metadata refinement using behavioral patterns |
9558501, | Sep 05 2008 | Sony Corporation | Content recommendation system, content recommendation method, content recommendation apparatus, program, and information storage medium |
9582823, | Jun 17 2013 | eBay Inc | Metadata refinement using behavioral patterns |
9881067, | Jun 17 2013 | Ebay Inc. | Metadata refinement using behavioral patterns |
Patent | Priority | Assignee | Title |
5659742, | Sep 15 1995 | BHW INFO EDCO COM, LLC | Method for storing multi-media information in an information retrieval system |
5819291, | Aug 23 1996 | General Electric Company | Matching new customer records to existing customer records in a large business database using hash key |
6266649, | Sep 18 1998 | Amazon Technologies, Inc | Collaborative recommendations using item-to-item similarity mappings |
6405175, | Jul 27 1999 | CBS INTERACTIVE INC | Shopping scouts web site for rewarding customer referrals on product and price information with rewards scaled by the number of shoppers using the information |
6601075, | Jul 27 2000 | GOOGLE LLC | System and method of ranking and retrieving documents based on authority scores of schemas and documents |
6625581, | Apr 22 1994 | PERKOWSKI, THOMAS J | METHOD OF AND SYSTEM FOR ENABLING THE ACCESS OF CONSUMER PRODUCT RELATED INFORMATION AND THE PURCHASE OF CONSUMER PRODUCTS AT POINTS OF CONSUMER PRESENCE ON THE WORLD WIDE WEB (WWW) AT WHICH CONSUMER PRODUCT INFORMATION REQUEST (CPIR) ENABLING SERVLET TAGS ARE EMBEDDED WITHIN HTML-ENCODED DOCUMENTS |
6785671, | Dec 08 1999 | A9 COM, INC | System and method for locating web-based product offerings |
20030069880, | |||
20030097357, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Jan 22 2003 | Amazon Technologies, Inc. | (assignment on the face of the patent) | / | |||
Apr 07 2003 | BOHN, SHAWN | AMAZON COM, INC | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 014038 | /0750 | |
Apr 07 2003 | ARORA, ANUVRATA | AMAZON COM, INC | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 014038 | /0750 | |
Apr 07 2003 | BICKNELL, NICHOLAS | AMAZON COM, INC | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 014038 | /0750 | |
Apr 20 2003 | PARALKAR, ANMOL | AMAZON COM, INC | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 014038 | /0750 | |
Jul 14 2008 | AMAZON COM, INC | Amazon Technologies, Inc | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 021240 | /0448 |
Date | Maintenance Fee Events |
Apr 04 2016 | M1551: Payment of Maintenance Fee, 4th Year, Large Entity. |
Apr 02 2020 | M1552: Payment of Maintenance Fee, 8th Year, Large Entity. |
Apr 02 2024 | M1553: Payment of Maintenance Fee, 12th Year, Large Entity. |
Date | Maintenance Schedule |
Oct 02 2015 | 4 years fee payment window open |
Apr 02 2016 | 6 months grace period start (w surcharge) |
Oct 02 2016 | patent expiry (for year 4) |
Oct 02 2018 | 2 years to revive unintentionally abandoned end. (for year 4) |
Oct 02 2019 | 8 years fee payment window open |
Apr 02 2020 | 6 months grace period start (w surcharge) |
Oct 02 2020 | patent expiry (for year 8) |
Oct 02 2022 | 2 years to revive unintentionally abandoned end. (for year 8) |
Oct 02 2023 | 12 years fee payment window open |
Apr 02 2024 | 6 months grace period start (w surcharge) |
Oct 02 2024 | patent expiry (for year 12) |
Oct 02 2026 | 2 years to revive unintentionally abandoned end. (for year 12) |