WO2014052570A1 - Dimensional translator - Google Patents

Dimensional translator Download PDF

Info

Publication number
WO2014052570A1
WO2014052570A1 PCT/US2013/061893 US2013061893W WO2014052570A1 WO 2014052570 A1 WO2014052570 A1 WO 2014052570A1 US 2013061893 W US2013061893 W US 2013061893W WO 2014052570 A1 WO2014052570 A1 WO 2014052570A1
Authority
WO
WIPO (PCT)
Prior art keywords
item
entity
target
data structure
category
Prior art date
Application number
PCT/US2013/061893
Other languages
French (fr)
Inventor
Paul Tang
Jeffrey R. Mount
Kelly Carrigan
Brad Schulz
Original Assignee
Catalina Marketing Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Catalina Marketing Corporation filed Critical Catalina Marketing Corporation
Publication of WO2014052570A1 publication Critical patent/WO2014052570A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0255Targeted advertisements based on user history
    • G06Q30/0256User search
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • G06Q10/087Inventory or stock management, e.g. order filling, procurement or balancing against orders
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • G06Q10/087Inventory or stock management, e.g. order filling, procurement or balancing against orders
    • G06Q10/0875Itemisation or classification of parts, supplies or services, e.g. bill of materials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0257User requested

Definitions

  • the invention relates generally to translating a dimension between data structures of different entities and more particularly to a system and method for determining categories of items between different retailers.
  • Entities such as manufacturers, retailers, service providers, and others generally catalog items such as a product, a service, or a coupon that they make available.
  • a catalog may be stored using a data structure having data elements with multiple dimensions.
  • a dimension may include information known about the particular data element being described so that various data about the object may be ascertained. For example, dimensions such as a category, a location (e.g., a location where a product, service, or coupon is offered by an entity), and/or other information known about the item can be associated with the item.
  • entities may store and retrieve information about the items that they make available.
  • the data structures and dimensions of the catalogs vary from one entity to another entity and, in some cases, may be proprietary. As a result, correlating a dimension of a data structure to another dimension of another data structure may be difficult.
  • a resulting problem is that adding an item to a given catalog or determining a category to which the item belongs for a given entity can be a time-consuming and difficult process. For example, a manufacturer wishing to promote a new item across different online and brick-and-mortar retailers may find it difficult to determine how these retailers and other entities categorize the new item because the various retailers have different data structures and catalogs.
  • Conventionally, such determinations are a manual process by those having knowledge of the data structures used by an entity.
  • a dimension may describe a data element stored by a data structure.
  • the data element may represent, for example, an item such as a product, a service, a coupon, and/or other offering made by an entity.
  • the dimension may include, for example, a Universal Product Code ("UPC") or other item identifier that identifies the item, a location of the item, an inventory/availability of the item, and/or other information known about the item.
  • UPC Universal Product Code
  • a multidimensional view of the item (such as its UPC, location, etc.) may be obtained using the data structure.
  • the system may include a dimensional translator that can be used to translate different dimensions from different data structures of the various entities.
  • the dimensional translator may configure a computer to perform various operations, which may include receiving a dimension to be translated from a provider entity, a property of the dimension, and an identification of a target entity.
  • the provider entity may include an entity that wishes to translate a dimension from its data structure to another dimension in another data structure.
  • the provider entity may include a manufacturer that wishes to offer for sale a new item via various retail channels and determine how the target entity would categorize the new item.
  • the target entity may include an entity whose data structure is to be processed so that a dimension of the provider entity may be translated thereto.
  • the target entity may include a retailer that categorizes items that it sells using a data structure.
  • the dimensional translator may automatically translate a dimension to another dimension by comparing attributes of the input dimension (the dimension to be translated) to attributes of a target data structure.
  • An attribute can include information that describes a data element, a dimension, a hierarchy, a relationship and/or other information related to the data structure. The information may include descriptive text, keywords, and/or other information that describes the data structure or portions thereof. Attributes may be stored in association with the data element (e.g., each object may include meta-data or other information that describes the data element). In some instances, the dimension itself may be used as an attribute. Attributes may be stored in association with the data element (e.g., each object may include meta-data or other information that describes the data element).
  • attribute comparison may include matching attributes such as keywords to automatically determine a translation.
  • a provider entity may categorize a new frozen puffed pastry under a "Baking" category associated with a keyword "baked.”
  • a target entity may include a "Deli & Bakery” category associated with a keyword “baked goods.”
  • Dimensional translator may determine that the keywords match and correlate the Baking category with the Deli & Bakery category.
  • the dimension translator may translate a UPC dimension of the new frozen puffed pastry into the Deli & Bakery category of the target entity.
  • attribute comparison may include comparing content of dimensions from different data structures to automatically determine a translation.
  • dimensional translator may determine that a target entity includes particular UPCs of a provider entity, indicating that the target entity carries items (and therefore store information related to the items in its data structure) related to the particular UPCs.
  • Dimension translator may use knowledge of how the target entity stores the particular UPCs to determine how the target entity would store the new item.
  • the provider entity may categorize the new frozen puffed pastry item and an existing pastry item in a "Baking" category.
  • the target entity may categorize the existing pastry item (or similar items) in a "Deli & Bakery” category. Using this information, dimension translator may determine that the new frozen puffed pastry item should be categorized in the "Deli & Bakery" category of the target entity.
  • the dimensional translator may determine the hierarchy and/or data relationships of a data structure. For example, dimension translator may determine that a dimension called "UPC" includes item identifiers (e.g., UPCs). If the UPC dimension is hierarchically below or otherwise related to (such as having a database link to) a category dimension, dimension translator may determine that the UPC dimension includes items and that such items may be categorized according to the category dimension. Thus, dimension translator may analyze hierarchies and/or relationships of data in order to understand how an entity stores its data.
  • UPC item identifiers
  • FIG. 1 illustrates a system of translating dimensions between different data structures of different entities, according to an aspect of the invention.
  • Fig. 2A illustrates a data structure of an entity that describes an organization of its items, according to an aspect of the invention.
  • Fig. 2B illustrates a data structure of another entity that describes an organization of its items, according to an aspect of the invention.
  • FIGs. 3A and 3B illustrate examples of data structures from different entities that can be translated, according to an implementation of the invention.
  • FIGs. 4A and 4B illustrate interfaces that illustrate use of the data structure illustrated in Figs. 3A and 3B, according to an aspect of the invention.
  • FIG. 5 illustrates a process for translating dimensions between different data structures, according to an aspect of the invention.
  • FIG. 1 illustrates a system 100 of translating dimensions between different data structures of different entities, according to an aspect of the invention.
  • system 100 may allow a provider entity to determine a translation between a dimension of its data structure to a data structure of a target entity.
  • a dimension may describe an item or person/entity.
  • the dimension may include a UPC or other item identifier that identifies the item, a location of the item, an inventory/availability of the item, a customer identification that identifies a customer of an organization, an employee identification that identifies an employee, a company identifier that identifies a company and/or other information known about the item or person/entity.
  • a provider entity may use system 100 to input a dimension of a data element such as a UPC of an item or a customer identification and an identity of a target entity for which a translation is desired. For example, the provider entity may determine how the target entity categorizes the item.
  • Client computer 110 may include a desktop computer, a laptop, a cell phone, a smart phone, a Personal Digital Assistant, a pocket PC, or other device that a user may use to communicate with computer 120.
  • client computer 110 may communicate with computer 120 via various communication channels such as electronic mail, voice call, Short Message Service (SMS) text messaging, the Internet (e.g., via a web page), social networks, etc.
  • SMS Short Message Service
  • the various entities described herein may use client computer 110 to interact with the system.
  • Computer 120 may comprise one or more computing devices configured with a dimensional translator 124 that enables the various features and functions of the invention, as described in greater detail below.
  • computer 120 may comprise a processor, one or more interfaces (to various peripheral devices or components), memory, one or more storage devices, and/or other components coupled via a bus.
  • the memory may comprise random access memory (RAM), read only memory (ROM), or other memory.
  • RAM random access memory
  • ROM read only memory
  • the memory may store computer-executable instructions to be executed by the processor as well as data that may be manipulated by the processor.
  • the storage devices may comprise floppy disks, hard disks, optical disks, tapes, or other storage devices for storing computer-executable instructions and/or data.
  • One or more applications may be loaded into memory and run on an operating system of computer 120.
  • computer 120 may comprise a server device, a desktop computer, a laptop, a cell phone, a smart phone, a Personal Digital Assistant, a pocket PC, or other device.
  • Computer 120 may include or otherwise access one or more databases.
  • computer 120 may obtain information from dimension databases 140 (illustrated in Fig. 1 as dimension databases 140A, 140B, 140N) associated with dimensions from various entities 150 (illustrated in Fig. 1 as entity 150A, 150B, 150N).
  • the dimensions may correspond to a catalogue or other hierarchical information used by entity 150.
  • Entity 150 may include online retailers, brick-and-mortar retailers, manufacturers, service providers, and/or other entities that store hierarchies of information that can be translated to a hierarchy of another entity.
  • Computer 120 may compare information stored by dimension databases so that a translation may be made between the various entities. In some implementations, the translations may be stored in translation database 122.
  • database 140 may store attributes associated with a data structure or portions thereof.
  • An attribute may include information that describes a data element, a dimension, a hierarchy, a relationship and/or other information related to the data structure.
  • the information may include descriptive text, keywords, and/or other information that describes the data structure or portions thereof.
  • Attributes may be stored in association with the data element (e.g., each object may include meta-data or other information that describes the data element).
  • the various databases described herein may be, include, or interface to, for example, an OracleTM relational database sold commercially by Oracle Corporation.
  • Other databases such as InformixTM, DB2 (Database 2) or other data storage, including file-based, or query formats, platforms, or resources such as OLAP (On Line Analytical Processing), SQL (Standard Query Language), a SAN (storage area network), Microsoft AccessTM or others may also be used, incorporated, or accessed.
  • the database may comprise one or more such databases that reside in one or more physical devices and in one or more physical locations.
  • the database may store a plurality of types of data and/or files and associated data or file descriptions, administrative information, or any other data.
  • the various entities 150 may register with the system by uploading at least a portion of their data structures for storage in database 140.
  • a provider entity may upload at least a portion of its data structure for storage in database 140.
  • a target entity may upload at least a portion of its data structure for storage in database 140 to make it easier for other entities to interact with their data/catalog.
  • an entity 150 may act as a provider entity in some instances and a target entity in other instances.
  • Network 130 may include any one or more of, for instance, the Internet, an intranet, a PAN (Personal Area Network), a LAN (Local Area Network), a WAN (Wide Area Network), a SAN (Storage Area Network), a MAN (Metropolitan Area Network), or other network.
  • PAN Personal Area Network
  • LAN Local Area Network
  • WAN Wide Area Network
  • SAN Storage Area Network
  • MAN Metropolitan Area Network
  • system architecture 100 The foregoing description of the various components comprising system architecture 100 is exemplary only, and should not be viewed as limiting.
  • the invention described herein may work with various system configurations. Accordingly, more or less of the aforementioned system components may be used and/or combined in various implementations.
  • FIGs. 2A and 2B illustrate examples of data structures from different entities that can be translated, according to an implementation of the invention.
  • the data structures illustrated in Figures 2A and 2B and other drawing figures are for illustrative purposes only.
  • a data structure as described herein may include any association or organization of information that is used to store information about a data element.
  • Data elements can include any representation that can describe or otherwise identify an item.
  • the data structures may be organized in a tree-like manner as illustrated, or other organization as would be appreciated. It should be noted that at least a portion of the data structures illustrated in the figures may be associated with an attribute, which is described herein. For example, any one of the data elements illustrated in the figures may be associated with an attribute.
  • Fig. 2A illustrates a data structure 200A of an entity 150A that describes an organization of its items (such as an incentive, a product and/or a service).
  • Data structure 200A may include a data element 202 that describes a top level container for data elements 304 (illustrated in Fig. 2A as data elements 204A, 204B, 204C, although more or less data elements can be included).
  • Data elements 204A-C describe categories of items such as a "Baking" category, a "Dairy” category, and a "Personal Care" category. Each category may include items categorized therein at data elements 206 (illustrated in Fig. 2A as data elements 206A, 206B, 206C).
  • the items may be identified by a Universal Product Code ("UPC") and/or other identifier.
  • UPC Universal Product Code
  • data structure 200A includes three categories of items identified by a UPC.
  • a category for an item offered by the entity may be easily obtained using data structure 200A.
  • a new item to be carried by the entity may be placed into an appropriate category by entity 150A.
  • Fig. 2B illustrates a data structure 200B of another entity 150B that describes an organization of its items, but in a manner different from data structure 200A described with respect to Fig. 2A.
  • Data structure 200B may include a data element 212 that describes a top level container for data elements 314 (illustrated in Fig. 2B as data elements 214A, 214B, 214C).
  • Data elements 214A-C describe departments such as a "Deli & Bakery" department, a "Fruits & Vegetables" department, and a "Meat & Seafood” department. Each department may include sub-departments.
  • the Deli & Bakery department may have sub- departments "Puffed pastries,” “Cakes,” and “Rotisserie chicken” at data elements 216 (illustrated in Fig. 2B as data elements 216A, 216B, and 216C).
  • Each sub-department may include items within that sub-department at, for example, data elements 218 (illustrated in Fig. 2B as data elements 218A, 218B, 218C).
  • Each item may be identified by a UPC and/or other identifier.
  • a department and sub-department for an item offered by the entity may be easily obtained using data structure 200B.
  • a new item to be carried by the entity may be placed into an appropriate department and/or sub-department by entity 150B.
  • a problem may arise when attempting to place an item offered by entity 150A into the data structure 200B of entity 150B and/or when attempting to place an item not offered by either entity into their respective data structures.
  • entity 150A may not be offered by entity 150B.
  • UPC 2 is readily categorized into the "Baking" category of data structure 200A, it is not readily apparent, without a priori knowledge of data structure 200B, how entity 150B would categorize the item identified by UPC 2.
  • data structure 200B uses a "department” instead of a "category,” it may be difficult to place the item identified by UPC 2 into a department. Even if the department were known to be "Deli & Bakery,” it may be difficult to place the item identified by UPC 2 into a sub-department (e.g., it may be unclear whether the item should be characterized as a Puffed Pastry or a Cake (or, from a computational standpoint, a Rotisserie chicken).
  • Figs. 3A and 3B illustrate examples of data structures from different entities that can be translated, according to an implementation of the invention.
  • Fig. 3A illustrates a data structure 300A of entity 150A that describes locations of various assets (such as a retail location, a distribution location, a manufacturing location, an item for sale, etc.).
  • Data structure 300A may include a data element 302 that describes a top level container for data elements 304 (illustrated in Fig. 3A as data elements 304A, 304B, 304C, 304D, although more or less data elements can be included).
  • Data element 302 may be referred to as "locations.”
  • Data elements 304A-D describe geographic regions such as Northeast (“NE"), Southeast (“SE”), Northwest (“NW”), and Southwest (“SW”) regions.
  • a region may include sub-regions at data elements 306 (illustrated in Fig.
  • a sub-region may describe various states such as “State 1,” “State 2,” and “State 3.”
  • a sub-region may include various localities at data elements 308 (illustrated as data elements 308A, 308B, 308C).
  • a locality may describe a city such as “City 1,” “City 2,” and “City 3.”
  • a region and/or sub-region for a locality may be obtained using data structure 300A.
  • a new locality may be placed into an appropriate region and/or sub-region by entity 150A.
  • Fig. 3B illustrates a data structure 300B of another entity 150B that describes locations of various assets.
  • Data structure 300B may include a data element 312 that describes a top level container for data elements 314 (illustrated in Fig. 3B as data elements 314A and 314B).
  • Data element 312 may be referred to as "territories.”
  • Data elements 314A and 314B describe geographic zones such as "Zone 1" and "Zone 2.”
  • a zone may include sub-zones at data elements 316 (illustrated in Fig. 3B as data elements 316A, 316B, 316C).
  • a sub- zone may describe various districts within the sub-zone such as "District 1,” “District 2,” and “District 3.”
  • a sub-zone may include various states at data elements 318 (illustrated as data elements 318A, 318B, 318C).
  • a state may describe a state such as "State 1,” “State 5,” and “State 7.”
  • a state may include various localities at data elements 320 (illustrated as data elements 320A, 320B, 320C).
  • a locality may describe a city such as “City 2,” “City 5,” and “City 6.”
  • a zone, district, and/or state for a locality may be obtained using data structure 300B. Furthermore, a new locality may be placed into an appropriate zone, district and/or state by entity 150B.
  • a problem similar to that described with respect to Figs. 2A and 2B may arise when attempting to place locality of entity 150A into the data structure 300B of entity 150B and/or when attempting to place a locality not associated with either entity into their respective data structures.
  • Table 1A illustrates a dimensional view of data structure 200A, according to an implementation of the invention.
  • Table 2A illustrates a dimensional view of data structure 300A, according to an implementation of the invention.
  • Table 2B illustrates a dimensional view of data structure 300B, according to an implementation of the invention.
  • a data element such as data element 306 may be viewed from a multi-dimensional perspective.
  • an item identified by a UPC may be associated with a city, thereby allowing a multi-dimensional view or representation of the item across data structures 200A and 300A.
  • data structure 300A stores a location of the item carried by entity 150A.
  • Tables 3A and 3B illustrate a dimensional view of items carried by entity 150A.
  • Table 3A illustrates a dimensional view of data structures 200A and 300A, according to an implementation of the invention.
  • Table 3B illustrates a dimensional view of data structures 200B and 300B, according to an implementation of the invention.
  • FIG. 4A illustrates an interface 400A that illustrates a use of data structure 200A, according to an aspect of the invention.
  • the screenshots illustrated in Fig. 4A and other drawing figures are for illustrative purposes only. Various components may be added, deleted, moved, or otherwise changed so that the configuration, appearance, and/or content of the screenshots may be different than as illustrated in the figures. Accordingly, the graphical user interface objects as illustrated (and described in greater detail below) are exemplary by nature and, as such, should not be viewed as limiting.
  • Interface 400A and other interfaces described herein may be implemented as a web page communicated from computer 120 to a client, an application such as a mobile application executing on the client that receives generates the interface based on information communicated from computer 120, and/or other interface. Whichever type of interface is used, computer 120 may communicate the data and/or formatting instructions related to the interface to the client, causing the client to generate the various interfaces of Fig. 4A and other drawing figures. Furthermore, computer 120 may receive data from the client via the various interfaces, as would be appreciated.
  • interface 400A may include a website of entity 150A.
  • various data graphical user interface elements may be based on data structure 200A.
  • Interface 400A may include a navigation bar 450A, which may include links to information related to various data elements such as data element 402, which may in turn include links information related to data elements 304.
  • navigation bar 450A includes a link to categories, under which links to "Baking,” “Dairy,” and "Personal Care" are provided. Selection of a category may result in displaying various items related to the selected category. For example, selection of the Baking category may result in displaying various items related to Baking.
  • Fig. 4B illustrates an interface 400B that illustrates a use of data structure 200B, according to an aspect of the invention.
  • interface 400B may include a website of entity 150B.
  • various data graphical user interface elements may be based on data structure 200B.
  • Interface 400B may include a navigation bar 450B, which may include links to information related to various data elements such as data element 412, which may in turn include links to information related to data elements 414.
  • navigation bar 450B includes a link to a Fresh Foods department, under which links to "Deli & Baking," “Fruits & Vegetables,” and "Meats & Seafood" departments are provided. Selection of the Deli & Baking department may result in displaying various items related to the Deli & Baking department.
  • FIG. 4A and 4B The screenshots illustrated in Figures 4A and 4B further highlight the different ways in which one entity may represent its data and/or categorizations of data compared to another entity.
  • a manufacturer or other entity wishing to introduce the item to the entities may be unaware of how the item should be categorized.
  • target entities e.g., entities that are related to interfaces 400A and 400B
  • FIG. 5 illustrates a process 500 for translating dimensions between different data structures, according to an aspect of the invention.
  • the various processing operations and/or data flows depicted in FIG. 5 are described in greater detail herein.
  • the described operations may be accomplished using some or all of the system components described in detail above and, in some embodiments, various operations may be performed in different sequences. Additional operations may be performed along with some or all of the operations shown in the depicted flow diagrams. One or more operations may be performed simultaneously. Accordingly, the operations as illustrated (and described in greater detail below) are exemplary by nature and, as such, should not be viewed as limiting.
  • process 500 may include receiving an item identifier, an item attribute, and an identification of a target entity.
  • the item identifier can include, for example, a UPC and/or other identifier that can identify the new puffed pastry item.
  • the item attribute may include various attributes such as a category "Frozen Baked Items," a description of the item, keywords such as "frozen,” “baked good,” “bakery,” etc., and/or other information about the item from the providing entity.
  • the item attribute may be received from a data structure of the providing entity, which may be stored using an entity database.
  • the providing entity such as a manufacturer may wish to have the target entity such as a retailer or coupon provider carry and/or promote a new puffed pastry item.
  • the providing entity may place the new puffed pastry item in its data structure in the category "Frozen Baked Items" but may not know how the target entity will categorize the new puffed pastry item.
  • Process 500 allows the providing entity to automatically translate a dimension associated with its data structure into a dimension of a target entity.
  • the providing entity may translate a UPC dimension and/or category dimension of the new puffed pastry item into a category dimension of a data structure of a target entity.
  • the providing entity may receive an indication of an automatically determined category into which the target entity would categorize the new puffed pastry item.
  • process 500 may include obtaining a data structure of the target entity.
  • the data structure of the target entity may include a target category in which the target entity would categorize the item.
  • the data structure of the target entity includes a plurality of target attributes.
  • the target attributes may describe a dimension of a data element of the data structure.
  • a target attribute may include a hierarchical level in which a dimension resides on a data structure, a description of a category of items of the target entity, a description of an item of the target entity, a keyword of an item of the target entity, and/or other information that describes various dimensions of the data structure of the target entity.
  • process 500 may include comparing the received item attribute from the providing entity with a next attribute of the plurality of target attributes of the data structure of the target entity.
  • the next attribute may include an attribute not already compared to the property among a plurality of target attributes.
  • the comparison may include matching text (e.g., string comparison), context (e.g., whether the property and the next target attribute both describe geographic regions such as cities), and/or other conventional matching/comparison techniques.
  • a "match" need not be a perfect match. Fuzzy matching or other matching logic may be used to determine a best match or probability of matching.
  • process 500 may include determining a category associated with the matching attribute in an operation 510. For example, if the target property is "baked goods" and the next target attribute is "baked items,” process 500 may determine that the property matches the next target attribute and determine a category associated with the matching target attribute "baked items" in the data structure of the target entity. For instance, if the matching target attribute describes or is otherwise associated with a category "Baking,” process 500 may determine that the category "Baking" is a potential target category for the item and add the potential target category to a list of potential target categories in an operation 512.
  • Process 500 may then proceed to an operation 514, which includes determining whether more target attributes are to be processed. Returning to operation 508, if a match is not found, process 500 may proceed to determining whether more target attributes are to be processed in operation 514.
  • process 500 may include determining whether more attributes of the data structure of the target entity is to be processed. If more attributes are to be processed, the processing may return to operation 506. Otherwise, processing may proceed to an operation 516.
  • process 500 may include determining a target category for the item based on the potential categories that were identified. In an operation 518, process 500 may include communicating the determined target category. In some implementations, process 500 may include communicating the potential target categories.

Abstract

A dimensional translator may automatically translate a dimension from an entity to a different dimension of another entity. The dimensional translator may do so by comparing attributes of the input dimension (the dimension to be translated) to attributes of a target data structure. An attribute may include, for example, hierarchy of a data structure, relationships of a data structure, a keyword associated with a data structure, and a data value associated with the data structure. The dimensional translator may automatically determine how a target entity would categorize the item. In particular, a Universal Product Code dimension of an item provided by an entity may be translated into a data structure of a target entity such as a retailer in order to determine how an item identified by the UPC will be categorized by the retailer.

Description

DIMENSIONAL TRANSLATOR
CROSS-REFERENCE TO RELATED APPLICATIONS
[001] This application claims the benefit of U.S. Patent Application Serial No. 13/627,372, filed September 26, 2012, which is hereby incorporated by reference in its entirety.
FIELD OF THE INVENTION
[002] The invention relates generally to translating a dimension between data structures of different entities and more particularly to a system and method for determining categories of items between different retailers.
BACKGROUND OF THE INVENTION
[003] Entities such as manufacturers, retailers, service providers, and others generally catalog items such as a product, a service, or a coupon that they make available. A catalog may be stored using a data structure having data elements with multiple dimensions. A dimension may include information known about the particular data element being described so that various data about the object may be ascertained. For example, dimensions such as a category, a location (e.g., a location where a product, service, or coupon is offered by an entity), and/or other information known about the item can be associated with the item. In this manner, using a dimensional data structure, entities may store and retrieve information about the items that they make available.
[004] Typically, the data structures and dimensions of the catalogs vary from one entity to another entity and, in some cases, may be proprietary. As a result, correlating a dimension of a data structure to another dimension of another data structure may be difficult. A resulting problem is that adding an item to a given catalog or determining a category to which the item belongs for a given entity can be a time-consuming and difficult process. For example, a manufacturer wishing to promote a new item across different online and brick-and-mortar retailers may find it difficult to determine how these retailers and other entities categorize the new item because the various retailers have different data structures and catalogs. [005] Conventionally, such determinations are a manual process by those having knowledge of the data structures used by an entity. Thus, what is needed is to automatically translate a dimension of one data structure to another data structure. More particularly, what is needed is to be able to determine a category of an item from various entities that use different data structures for storing the category of the item. These and other drawbacks exist.
SUMMARY OF THE INVENTION
[006] The invention addressing these and other drawbacks relates to a system and method for translating between dimensions of different data structures used by various entities. A dimension may describe a data element stored by a data structure. The data element may represent, for example, an item such as a product, a service, a coupon, and/or other offering made by an entity. The dimension may include, for example, a Universal Product Code ("UPC") or other item identifier that identifies the item, a location of the item, an inventory/availability of the item, and/or other information known about the item. A multidimensional view of the item (such as its UPC, location, etc.) may be obtained using the data structure.
[007] The system may include a dimensional translator that can be used to translate different dimensions from different data structures of the various entities. The dimensional translator may configure a computer to perform various operations, which may include receiving a dimension to be translated from a provider entity, a property of the dimension, and an identification of a target entity.
[008] The provider entity may include an entity that wishes to translate a dimension from its data structure to another dimension in another data structure. For example, the provider entity may include a manufacturer that wishes to offer for sale a new item via various retail channels and determine how the target entity would categorize the new item. The target entity may include an entity whose data structure is to be processed so that a dimension of the provider entity may be translated thereto. For example, the target entity may include a retailer that categorizes items that it sells using a data structure.
[009] The dimensional translator may automatically translate a dimension to another dimension by comparing attributes of the input dimension (the dimension to be translated) to attributes of a target data structure. An attribute can include information that describes a data element, a dimension, a hierarchy, a relationship and/or other information related to the data structure. The information may include descriptive text, keywords, and/or other information that describes the data structure or portions thereof. Attributes may be stored in association with the data element (e.g., each object may include meta-data or other information that describes the data element). In some instances, the dimension itself may be used as an attribute. Attributes may be stored in association with the data element (e.g., each object may include meta-data or other information that describes the data element).
[010] In some implementations, attribute comparison may include matching attributes such as keywords to automatically determine a translation. For example, a provider entity may categorize a new frozen puffed pastry under a "Baking" category associated with a keyword "baked." A target entity may include a "Deli & Bakery" category associated with a keyword "baked goods." Dimensional translator may determine that the keywords match and correlate the Baking category with the Deli & Bakery category. Thus, based on the comparison, the dimension translator may translate a UPC dimension of the new frozen puffed pastry into the Deli & Bakery category of the target entity.
[011] In some implementations, attribute comparison may include comparing content of dimensions from different data structures to automatically determine a translation. For example, dimensional translator may determine that a target entity includes particular UPCs of a provider entity, indicating that the target entity carries items (and therefore store information related to the items in its data structure) related to the particular UPCs. Dimension translator may use knowledge of how the target entity stores the particular UPCs to determine how the target entity would store the new item. For example, the provider entity may categorize the new frozen puffed pastry item and an existing pastry item in a "Baking" category. The target entity may categorize the existing pastry item (or similar items) in a "Deli & Bakery" category. Using this information, dimension translator may determine that the new frozen puffed pastry item should be categorized in the "Deli & Bakery" category of the target entity.
[012] In some implementations, the dimensional translator may determine the hierarchy and/or data relationships of a data structure. For example, dimension translator may determine that a dimension called "UPC" includes item identifiers (e.g., UPCs). If the UPC dimension is hierarchically below or otherwise related to (such as having a database link to) a category dimension, dimension translator may determine that the UPC dimension includes items and that such items may be categorized according to the category dimension. Thus, dimension translator may analyze hierarchies and/or relationships of data in order to understand how an entity stores its data.
[013] Various other objects, features, and advantages of the invention will be apparent through the detailed description of the preferred embodiments and the drawings attached hereto. It is also to be understood that both the foregoing general description and the following detailed description are exemplary and not restrictive of the scope of the invention.
BRIEF DESCRIPTION OF THE DRAWINGS
[014] FIG. 1 illustrates a system of translating dimensions between different data structures of different entities, according to an aspect of the invention.
[015] Fig. 2A illustrates a data structure of an entity that describes an organization of its items, according to an aspect of the invention.
[016] Fig. 2B illustrates a data structure of another entity that describes an organization of its items, according to an aspect of the invention.
[017] Figs. 3A and 3B illustrate examples of data structures from different entities that can be translated, according to an implementation of the invention.
[018] Figs. 4A and 4B illustrate interfaces that illustrate use of the data structure illustrated in Figs. 3A and 3B, according to an aspect of the invention.
[019] FIG. 5 illustrates a process for translating dimensions between different data structures, according to an aspect of the invention.
DETAILED DESCRIPTION OF THE INVENTION
[020] FIG. 1 illustrates a system 100 of translating dimensions between different data structures of different entities, according to an aspect of the invention. Generally speaking, system 100 may allow a provider entity to determine a translation between a dimension of its data structure to a data structure of a target entity. A dimension may describe an item or person/entity. For example, the dimension may include a UPC or other item identifier that identifies the item, a location of the item, an inventory/availability of the item, a customer identification that identifies a customer of an organization, an employee identification that identifies an employee, a company identifier that identifies a company and/or other information known about the item or person/entity. A provider entity may use system 100 to input a dimension of a data element such as a UPC of an item or a customer identification and an identity of a target entity for which a translation is desired. For example, the provider entity may determine how the target entity categorizes the item.
[021] The foregoing are merely examples of implementations and uses of the system. Other uses and implementations will now be described with respect to various system components.
[022] Client computer 110 may include a desktop computer, a laptop, a cell phone, a smart phone, a Personal Digital Assistant, a pocket PC, or other device that a user may use to communicate with computer 120. For example, client computer 110 may communicate with computer 120 via various communication channels such as electronic mail, voice call, Short Message Service (SMS) text messaging, the Internet (e.g., via a web page), social networks, etc. The various entities described herein may use client computer 110 to interact with the system.
[023] Computer 120 may comprise one or more computing devices configured with a dimensional translator 124 that enables the various features and functions of the invention, as described in greater detail below.
[024] Those having skill in the art will recognize that computer 120 may comprise a processor, one or more interfaces (to various peripheral devices or components), memory, one or more storage devices, and/or other components coupled via a bus. The memory may comprise random access memory (RAM), read only memory (ROM), or other memory. The memory may store computer-executable instructions to be executed by the processor as well as data that may be manipulated by the processor. The storage devices may comprise floppy disks, hard disks, optical disks, tapes, or other storage devices for storing computer-executable instructions and/or data.
[025] One or more applications, including dimensional translator, may be loaded into memory and run on an operating system of computer 120. In one implementation, computer 120 may comprise a server device, a desktop computer, a laptop, a cell phone, a smart phone, a Personal Digital Assistant, a pocket PC, or other device.
[026] Computer 120 may include or otherwise access one or more databases. In some implementations, computer 120 may obtain information from dimension databases 140 (illustrated in Fig. 1 as dimension databases 140A, 140B, 140N) associated with dimensions from various entities 150 (illustrated in Fig. 1 as entity 150A, 150B, 150N). The dimensions may correspond to a catalogue or other hierarchical information used by entity 150. Entity 150 may include online retailers, brick-and-mortar retailers, manufacturers, service providers, and/or other entities that store hierarchies of information that can be translated to a hierarchy of another entity. Computer 120 may compare information stored by dimension databases so that a translation may be made between the various entities. In some implementations, the translations may be stored in translation database 122.
[027] In some implementations, database 140 may store attributes associated with a data structure or portions thereof. An attribute may include information that describes a data element, a dimension, a hierarchy, a relationship and/or other information related to the data structure. The information may include descriptive text, keywords, and/or other information that describes the data structure or portions thereof. Attributes may be stored in association with the data element (e.g., each object may include meta-data or other information that describes the data element).
[028] The various databases described herein may be, include, or interface to, for example, an Oracle™ relational database sold commercially by Oracle Corporation. Other databases, such as Informix™, DB2 (Database 2) or other data storage, including file-based, or query formats, platforms, or resources such as OLAP (On Line Analytical Processing), SQL (Standard Query Language), a SAN (storage area network), Microsoft Access™ or others may also be used, incorporated, or accessed. The database may comprise one or more such databases that reside in one or more physical devices and in one or more physical locations. The database may store a plurality of types of data and/or files and associated data or file descriptions, administrative information, or any other data.
[029] In some implementations, the various entities 150 may register with the system by uploading at least a portion of their data structures for storage in database 140. For example, a provider entity may upload at least a portion of its data structure for storage in database 140. Likewise, a target entity may upload at least a portion of its data structure for storage in database 140 to make it easier for other entities to interact with their data/catalog. In some implementations, an entity 150 may act as a provider entity in some instances and a target entity in other instances.
[030] Network 130 may include any one or more of, for instance, the Internet, an intranet, a PAN (Personal Area Network), a LAN (Local Area Network), a WAN (Wide Area Network), a SAN (Storage Area Network), a MAN (Metropolitan Area Network), or other network.
[031] The foregoing description of the various components comprising system architecture 100 is exemplary only, and should not be viewed as limiting. The invention described herein may work with various system configurations. Accordingly, more or less of the aforementioned system components may be used and/or combined in various implementations.
[032] Having provided a non-limiting overview of exemplary system architecture 100, the various features and functions enabled by computer 120 will now be explained.
[033] Figs. 2A and 2B illustrate examples of data structures from different entities that can be translated, according to an implementation of the invention. The data structures illustrated in Figures 2A and 2B and other drawing figures are for illustrative purposes only. A data structure as described herein may include any association or organization of information that is used to store information about a data element. Data elements can include any representation that can describe or otherwise identify an item. Furthermore, the data structures may be organized in a tree-like manner as illustrated, or other organization as would be appreciated. It should be noted that at least a portion of the data structures illustrated in the figures may be associated with an attribute, which is described herein. For example, any one of the data elements illustrated in the figures may be associated with an attribute.
[034] Fig. 2A illustrates a data structure 200A of an entity 150A that describes an organization of its items (such as an incentive, a product and/or a service). Data structure 200A may include a data element 202 that describes a top level container for data elements 304 (illustrated in Fig. 2A as data elements 204A, 204B, 204C, although more or less data elements can be included). Data elements 204A-C describe categories of items such as a "Baking" category, a "Dairy" category, and a "Personal Care" category. Each category may include items categorized therein at data elements 206 (illustrated in Fig. 2A as data elements 206A, 206B, 206C). The items may be identified by a Universal Product Code ("UPC") and/or other identifier. As illustrated, data structure 200A includes three categories of items identified by a UPC. A category for an item offered by the entity may be easily obtained using data structure 200A. Furthermore, a new item to be carried by the entity may be placed into an appropriate category by entity 150A.
[035] Fig. 2B illustrates a data structure 200B of another entity 150B that describes an organization of its items, but in a manner different from data structure 200A described with respect to Fig. 2A. Data structure 200B may include a data element 212 that describes a top level container for data elements 314 (illustrated in Fig. 2B as data elements 214A, 214B, 214C). Data elements 214A-C describe departments such as a "Deli & Bakery" department, a "Fruits & Vegetables" department, and a "Meat & Seafood" department. Each department may include sub-departments. For example, the Deli & Bakery department may have sub- departments "Puffed pastries," "Cakes," and "Rotisserie chicken" at data elements 216 (illustrated in Fig. 2B as data elements 216A, 216B, and 216C). Each sub-department may include items within that sub-department at, for example, data elements 218 (illustrated in Fig. 2B as data elements 218A, 218B, 218C). Each item may be identified by a UPC and/or other identifier. A department and sub-department for an item offered by the entity may be easily obtained using data structure 200B. Furthermore, a new item to be carried by the entity may be placed into an appropriate department and/or sub-department by entity 150B.
[036] Referring to Figs. 2A and 2B, a problem may arise when attempting to place an item offered by entity 150A into the data structure 200B of entity 150B and/or when attempting to place an item not offered by either entity into their respective data structures. For example, referring to data element 206B of Fig. 2A, an item identified by "UPC 2" may not be offered by entity 150B. Although UPC 2 is readily categorized into the "Baking" category of data structure 200A, it is not readily apparent, without a priori knowledge of data structure 200B, how entity 150B would categorize the item identified by UPC 2. For instance, because data structure 200B uses a "department" instead of a "category," it may be difficult to place the item identified by UPC 2 into a department. Even if the department were known to be "Deli & Bakery," it may be difficult to place the item identified by UPC 2 into a sub-department (e.g., it may be unclear whether the item should be characterized as a Puffed Pastry or a Cake (or, from a computational standpoint, a Rotisserie chicken).
[037] Figs. 3A and 3B illustrate examples of data structures from different entities that can be translated, according to an implementation of the invention.
[038] Fig. 3A illustrates a data structure 300A of entity 150A that describes locations of various assets (such as a retail location, a distribution location, a manufacturing location, an item for sale, etc.). Data structure 300A may include a data element 302 that describes a top level container for data elements 304 (illustrated in Fig. 3A as data elements 304A, 304B, 304C, 304D, although more or less data elements can be included). Data element 302 may be referred to as "locations." Data elements 304A-D describe geographic regions such as Northeast ("NE"), Southeast ("SE"), Northwest ("NW"), and Southwest ("SW") regions. A region may include sub-regions at data elements 306 (illustrated in Fig. 3A as data elements 306A, 306B, 306C). As illustrated, a sub-region may describe various states such as "State 1," "State 2," and "State 3." A sub-region may include various localities at data elements 308 (illustrated as data elements 308A, 308B, 308C). A locality may describe a city such as "City 1," "City 2," and "City 3." A region and/or sub-region for a locality may be obtained using data structure 300A. Furthermore, a new locality may be placed into an appropriate region and/or sub-region by entity 150A.
[039] Fig. 3B illustrates a data structure 300B of another entity 150B that describes locations of various assets. Data structure 300B may include a data element 312 that describes a top level container for data elements 314 (illustrated in Fig. 3B as data elements 314A and 314B). Data element 312 may be referred to as "territories." Data elements 314A and 314B describe geographic zones such as "Zone 1" and "Zone 2." A zone may include sub-zones at data elements 316 (illustrated in Fig. 3B as data elements 316A, 316B, 316C). As illustrated, a sub- zone may describe various districts within the sub-zone such as "District 1," "District 2," and "District 3." A sub-zone may include various states at data elements 318 (illustrated as data elements 318A, 318B, 318C). As illustrated, a state may describe a state such as "State 1," "State 5," and "State 7." A state may include various localities at data elements 320 (illustrated as data elements 320A, 320B, 320C). A locality may describe a city such as "City 2," "City 5," and "City 6." A zone, district, and/or state for a locality may be obtained using data structure 300B. Furthermore, a new locality may be placed into an appropriate zone, district and/or state by entity 150B.
[040] Referring to Figs. 3A and 3B, a problem similar to that described with respect to Figs. 2A and 2B may arise when attempting to place locality of entity 150A into the data structure 300B of entity 150B and/or when attempting to place a locality not associated with either entity into their respective data structures.
[041] Table 1A illustrates a dimensional view of data structure 200A, according to an implementation of the invention.
Figure imgf000012_0001
[043] Table 2A illustrates a dimensional view of data structure 300A, according to an implementation of the invention.
Figure imgf000012_0002
[044] Table 2B illustrates a dimensional view of data structure 300B, according to an implementation of the invention. Dimension
Territory District State City
Zone 1 District 1 State 1 2
Zone 1 District 1 State 1 5
Zone 1 District 1 State 1 6
[045] In some implementations, a data element such as data element 306 may be viewed from a multi-dimensional perspective. For example, referring to Fig. 2A, an item identified by a UPC may be associated with a city, thereby allowing a multi-dimensional view or representation of the item across data structures 200A and 300A. In this example, data structure 300A stores a location of the item carried by entity 150A. Tables 3A and 3B illustrate a dimensional view of items carried by entity 150A.
[046] Table 3A illustrates a dimensional view of data structures 200A and 300A, according to an implementation of the invention.
Figure imgf000013_0001
[047] Table 3B illustrates a dimensional view of data structures 200B and 300B, according to an implementation of the invention.
Figure imgf000013_0002
[048] Fig. 4A illustrates an interface 400A that illustrates a use of data structure 200A, according to an aspect of the invention. The screenshots illustrated in Fig. 4A and other drawing figures are for illustrative purposes only. Various components may be added, deleted, moved, or otherwise changed so that the configuration, appearance, and/or content of the screenshots may be different than as illustrated in the figures. Accordingly, the graphical user interface objects as illustrated (and described in greater detail below) are exemplary by nature and, as such, should not be viewed as limiting.
[049] Interface 400A and other interfaces described herein may be implemented as a web page communicated from computer 120 to a client, an application such as a mobile application executing on the client that receives generates the interface based on information communicated from computer 120, and/or other interface. Whichever type of interface is used, computer 120 may communicate the data and/or formatting instructions related to the interface to the client, causing the client to generate the various interfaces of Fig. 4A and other drawing figures. Furthermore, computer 120 may receive data from the client via the various interfaces, as would be appreciated.
[050] For example, interface 400A may include a website of entity 150A. As such, various data graphical user interface elements may be based on data structure 200A. Interface 400A may include a navigation bar 450A, which may include links to information related to various data elements such as data element 402, which may in turn include links information related to data elements 304. For example, navigation bar 450A includes a link to categories, under which links to "Baking," "Dairy," and "Personal Care" are provided. Selection of a category may result in displaying various items related to the selected category. For example, selection of the Baking category may result in displaying various items related to Baking.
[051] Fig. 4B illustrates an interface 400B that illustrates a use of data structure 200B, according to an aspect of the invention. For example, interface 400B may include a website of entity 150B. As such, various data graphical user interface elements may be based on data structure 200B. Interface 400B may include a navigation bar 450B, which may include links to information related to various data elements such as data element 412, which may in turn include links to information related to data elements 414. For example, navigation bar 450B includes a link to a Fresh Foods department, under which links to "Deli & Baking," "Fruits & Vegetables," and "Meats & Seafood" departments are provided. Selection of the Deli & Baking department may result in displaying various items related to the Deli & Baking department.
[052] The screenshots illustrated in Figures 4A and 4B further highlight the different ways in which one entity may represent its data and/or categorizations of data compared to another entity. A manufacturer or other entity wishing to introduce the item to the entities may be unaware of how the item should be categorized. For example, from a computational standpoint, an entity wishing to promote a refrigerated dough product may not know how target entities (e.g., entities that are related to interfaces 400A and 400B) would categorize the product.
[053] FIG. 5 illustrates a process 500 for translating dimensions between different data structures, according to an aspect of the invention. The various processing operations and/or data flows depicted in FIG. 5 (and in the other drawing figures) are described in greater detail herein. The described operations may be accomplished using some or all of the system components described in detail above and, in some embodiments, various operations may be performed in different sequences. Additional operations may be performed along with some or all of the operations shown in the depicted flow diagrams. One or more operations may be performed simultaneously. Accordingly, the operations as illustrated (and described in greater detail below) are exemplary by nature and, as such, should not be viewed as limiting.
[054] In an operation 502, process 500 may include receiving an item identifier, an item attribute, and an identification of a target entity. The item identifier can include, for example, a UPC and/or other identifier that can identify the new puffed pastry item. The item attribute may include various attributes such as a category "Frozen Baked Items," a description of the item, keywords such as "frozen," "baked good," "bakery," etc., and/or other information about the item from the providing entity. In some implementations, the item attribute may be received from a data structure of the providing entity, which may be stored using an entity database. In an example, the providing entity such as a manufacturer may wish to have the target entity such as a retailer or coupon provider carry and/or promote a new puffed pastry item. The providing entity may place the new puffed pastry item in its data structure in the category "Frozen Baked Items" but may not know how the target entity will categorize the new puffed pastry item. [055] Process 500 allows the providing entity to automatically translate a dimension associated with its data structure into a dimension of a target entity. In the foregoing example, the providing entity may translate a UPC dimension and/or category dimension of the new puffed pastry item into a category dimension of a data structure of a target entity. Thus, by inputting a UPC and properties of the new puffed pastry item, the providing entity may receive an indication of an automatically determined category into which the target entity would categorize the new puffed pastry item.
[056] In an operation 504, process 500 may include obtaining a data structure of the target entity. The data structure of the target entity may include a target category in which the target entity would categorize the item. In some implementations, the data structure of the target entity includes a plurality of target attributes. The target attributes may describe a dimension of a data element of the data structure. For example, a target attribute may include a hierarchical level in which a dimension resides on a data structure, a description of a category of items of the target entity, a description of an item of the target entity, a keyword of an item of the target entity, and/or other information that describes various dimensions of the data structure of the target entity.
[057] In an operation 506, process 500 may include comparing the received item attribute from the providing entity with a next attribute of the plurality of target attributes of the data structure of the target entity. The next attribute may include an attribute not already compared to the property among a plurality of target attributes. The comparison may include matching text (e.g., string comparison), context (e.g., whether the property and the next target attribute both describe geographic regions such as cities), and/or other conventional matching/comparison techniques. As would be appreciated, a "match" need not be a perfect match. Fuzzy matching or other matching logic may be used to determine a best match or probability of matching.
[058] In an operation 508, if a match is found, process 500 may include determining a category associated with the matching attribute in an operation 510. For example, if the target property is "baked goods" and the next target attribute is "baked items," process 500 may determine that the property matches the next target attribute and determine a category associated with the matching target attribute "baked items" in the data structure of the target entity. For instance, if the matching target attribute describes or is otherwise associated with a category "Baking," process 500 may determine that the category "Baking" is a potential target category for the item and add the potential target category to a list of potential target categories in an operation 512.
[059] Process 500 may then proceed to an operation 514, which includes determining whether more target attributes are to be processed. Returning to operation 508, if a match is not found, process 500 may proceed to determining whether more target attributes are to be processed in operation 514.
[060] In operation 514, process 500 may include determining whether more attributes of the data structure of the target entity is to be processed. If more attributes are to be processed, the processing may return to operation 506. Otherwise, processing may proceed to an operation 516.
[061] In operation 516, process 500 may include determining a target category for the item based on the potential categories that were identified. In an operation 518, process 500 may include communicating the determined target category. In some implementations, process 500 may include communicating the potential target categories.
[062] Other embodiments, uses and advantages of the invention will be apparent to those skilled in the art from consideration of the specification and practice of the invention disclosed herein. The specification should be considered exemplary only, and the scope of the invention is accordingly intended to be limited only by the following claims.

Claims

CLAIMS What is claimed is:
1. A method of determining how a target entity would categorize an item based on information known about the item from a providing entity, the method comprising:
receiving, by a computer, an item identifier that identifies the item, an item attribute from the providing entity that describes the item, and an identification of the target entity; obtaining, by the computer, a data structure of the target entity that includes at least one item that is categorized;
comparing, by the computer, the item attribute with the data structure of the target entity; and
determining, by the computer, a target category in which the target entity would categorize the item based on the comparison.
2. The method of claim 1, wherein the item identifier comprises a Universal Product Code, a National Drug Code, or a Customer Identification.
3. The method of claim 1, wherein the data structure of the target entity does not include the item before the target category is determined.
4. The method of claim 1, wherein the data structure of the target entity comprises a plurality of target attributes corresponding to a plurality of items offered by the target entity, the method further comprising:
comparing, by the computer, the item attribute from the providing entity with the plurality of target attributes corresponding to the plurality of items offered by the target entity.
5. The method of claim 4, wherein determining the target category comprises:
determining, by the computer, a match between the item attribute and the at least one of the plurality of target attributes, wherein the target category comprises a category of the corresponding one of the plurality of items.
6. The method of claim 1, wherein the first attribute comprises a Universal Product Code (UPC) of a related item that the providing entity places in the same category as the item, the method further comprising:
comparing, by the computer, the UPC of the related item to UPCs stored by the data structure of the target entity.
7. The method of claim 6, wherein determining the target category comprises:
determining, by the computer, a match between the UPC of the item related to the item and a UPC stored by the data structure of the target entity, wherein the target category comprises a category of the matching UPC stored by the data structure of the target entity.
8. A computer for determining how a target entity would categorize an item based on information known about the item from a providing entity, comprising:
a processor configured to:
receive an item identifier that identifies the item, an item identifier from the providing entity that describes the item, and an identification of the target entity; obtain a data structure of the target entity that includes at least one item that is categorized;
compare the first property of the item with the data structure of the target entity; and
determine a target category in which the target entity would categorize the item based on the comparison.
9. The system of claim 8, wherein the item identifier comprises a Universal Product Code, a National Drug Code, or a Customer Identification.
10. The system of claim 8, wherein the data structure of the target entity does not include the item before the target category is determined.
11. The system of claim 8, wherein the data structure of the target entity comprises a plurality of target attributes corresponding to a plurality of items offered by the target entity, the processor further configured to:
compare the item identifier from the providing entity with the plurality of target attributes corresponding to the plurality of items offered by the target entity.
12. The system of claim 11, wherein the processor is further configured to:
determine a match between the item identifier and the at least one of the plurality of target attributes, wherein the target category comprises a category of the corresponding one of the plurality of items.
13. The system of claim 8, wherein the first attribute comprises a Universal Product Code (UPC) of a related item that the providing entity places in the same category as the item, the processor further configured to:
compare the UPC of the related item to UPCs stored by the data structure of the target entity.
14. The system of claim 13, wherein the processor is further configured to:
determine a match between the UPC of the item related to the item and a UPC stored by the data structure of the target entity, wherein the target category comprises a category of the matching UPC stored by the data structure of the target entity.
PCT/US2013/061893 2012-09-26 2013-09-26 Dimensional translator WO2014052570A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/627,732 2012-09-26
US13/627,372 US8678272B1 (en) 2012-09-26 2012-09-26 Dimensional translator

Publications (1)

Publication Number Publication Date
WO2014052570A1 true WO2014052570A1 (en) 2014-04-03

Family

ID=50288722

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2013/061893 WO2014052570A1 (en) 2012-09-26 2013-09-26 Dimensional translator

Country Status (2)

Country Link
US (5) US8678272B1 (en)
WO (1) WO2014052570A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9076121B2 (en) 2012-09-26 2015-07-07 Catalina Marketing Corporation Dimensional translator

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107122947A (en) * 2017-05-04 2017-09-01 四川省红地科技有限责任公司 A kind of method of materiel code generation and management based on material catalogue
US11205214B2 (en) 2019-07-29 2021-12-21 Luke MARIETTA Method and system for automatically replenishing consumable items

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001027720A2 (en) * 1999-10-14 2001-04-19 Universal Internet Product Code, Inc. Universal product classification method and system for use with an internet worked computer system
US6430554B1 (en) * 1999-02-01 2002-08-06 Barpoint.Com, Inc. Interactive system for investigating products on a network
US20030009392A1 (en) * 1996-10-25 2003-01-09 Perkowski Thomas J. Internet-based consumer product brand marketing communication system which enables manufacturers, retailers and their respective agents, and consumers to carryout product-related functions along the demand side of the retail chain in an integrated manner
US20050251409A1 (en) * 2004-05-05 2005-11-10 Eplus Systems, Inc. System and method for eCatalog supplier portal

Family Cites Families (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020169687A1 (en) 1996-10-25 2002-11-14 Perkowski Thomas J. System and method for delivering consumer product related information to consumers within retail environments using internet-based information servers and sales agents
US6154738A (en) 1998-03-27 2000-11-28 Call; Charles Gainor Methods and apparatus for disseminating product information via the internet using universal product codes
US20020194081A1 (en) 1999-04-21 2002-12-19 Perkowski Thomas J. Internet-based consumer service brand marketing communication system which enables service-providers, retailers, and their respective agents and consumers to carry out service-related functions along the demand side of the retail chain in an integrated manner
US7949691B1 (en) 1999-09-02 2011-05-24 Cbs Interactive Inc. Methods of catalog data maintenance, storage, and distribution
US7389251B1 (en) 1999-10-21 2008-06-17 Mercexchange, Llc Computer-implemented method for managing dynamic pricing information
AU3528600A (en) 1999-10-21 2001-04-30 Navlet.Com, Inc. Context-sensitive switching in a computer network environment
US9785953B2 (en) * 2000-12-20 2017-10-10 International Business Machines Corporation System and method for generating demand groups
US20020133479A1 (en) 2001-03-16 2002-09-19 Dippold James O. Market research database for category management
US7392237B2 (en) 2001-04-26 2008-06-24 Siemens Medical Solutions Usa, Inc. Identifier code translation system
US8086643B1 (en) 2001-06-28 2011-12-27 Jda Software Group, Inc. Translation between product classification schemas
US7493274B2 (en) 2001-10-31 2009-02-17 Amazon.Com, Inc. Marketplace system in which users generate and browse user-to-user preorder listings via a definitive products catalog
US7734506B2 (en) 2002-04-22 2010-06-08 Norman Ken Ouchi Catalog, catalog query, and item identifier for a physical item
US20050171806A1 (en) * 2002-07-09 2005-08-04 J'maev Jack I. Method and apparatus for presentation of product notices using transitory perception of a candidate product
US7133882B1 (en) 2002-08-05 2006-11-07 Demandtec, Inc. Method and apparatus for creating and using a master catalog
US20040225664A1 (en) 2002-09-04 2004-11-11 Casement Richard Allen Data abstraction layer and automated data staging system and method
US20050049914A1 (en) * 2003-08-25 2005-03-03 Parish David H. Systems and methods for a retail system
US7814470B2 (en) * 2003-08-27 2010-10-12 International Business Machines Corporation Multiple service bindings for a real time data integration service
US7593876B2 (en) * 2003-10-15 2009-09-22 Jp Morgan Chase Bank System and method for processing partially unstructured data
US20050109844A1 (en) 2003-11-26 2005-05-26 Alysis Interactive Corporation Universal product code conversion to electronic product code
US20090006156A1 (en) 2007-01-26 2009-01-01 Herbert Dennis Hunt Associating a granting matrix with an analytic platform
US20060041469A1 (en) * 2004-08-18 2006-02-23 Torrance Mathis Marketing system employing electronically generated discount coupons
WO2008033503A2 (en) * 2006-09-13 2008-03-20 Tdp Inc. Integrated system and method for managing electronic coupons
US8032410B2 (en) * 2006-09-27 2011-10-04 Target Brands, Inc. Multiple offer coupon
US10621203B2 (en) 2007-01-26 2020-04-14 Information Resources, Inc. Cross-category view of a dataset using an analytic platform
US9390158B2 (en) 2007-01-26 2016-07-12 Information Resources, Inc. Dimensional compression using an analytic platform
US9262503B2 (en) * 2007-01-26 2016-02-16 Information Resources, Inc. Similarity matching of products based on multiple classification schemes
US20090006788A1 (en) 2007-01-26 2009-01-01 Herbert Dennis Hunt Associating a flexible data hierarchy with an availability condition in a granting matrix
US8185442B2 (en) * 2008-08-25 2012-05-22 Oracle International Corporation Extensible attributes model for business applications
US20100121697A1 (en) * 2008-11-12 2010-05-13 Verizon Corporate Resources Group Llc Methods, systems and computer program products for a mobile targeted coupon distributor
US8412656B1 (en) * 2009-08-13 2013-04-02 Videomining Corporation Method and system for building a consumer decision tree in a hierarchical decision tree structure based on in-store behavior analysis
US20110066497A1 (en) * 2009-09-14 2011-03-17 Choicestream, Inc. Personalized advertising and recommendation
US20110082731A1 (en) * 2009-10-07 2011-04-07 Concept Shopping, Inc. Targeted, Deferred Redemption Coupon System
US8566166B1 (en) * 2010-01-25 2013-10-22 Pricegrabber.Com, Inc. Rule-based bidding platform
JP5545028B2 (en) * 2010-05-19 2014-07-09 ソニー株式会社 Coupon selection support device, coupon selection support system, coupon selection support method, and program
US20150231896A1 (en) * 2011-03-10 2015-08-20 Fastechnology Group, LLC Inverted codes on transparent packaging exterior
US8386285B2 (en) * 2011-05-25 2013-02-26 International Business Machines Corporation Demand modeling and prediction in a retail category
KR20140079446A (en) * 2011-10-04 2014-06-26 아브시오 코포레이션 Method and apparatus for precision interest matching locally stored content
US8678272B1 (en) 2012-09-26 2014-03-25 Catalina Marketing Corporation Dimensional translator
US10546262B2 (en) * 2012-10-19 2020-01-28 Overstock.Com, Inc. Supply chain management system
US20150193804A1 (en) * 2014-01-09 2015-07-09 Microsoft Corporation Incentive mechanisms for user interaction and content consumption
US20150379601A1 (en) * 2014-06-25 2015-12-31 My World, Inc. Commerce System and Method of Deferring Purchases to Optimize Purchase Conditions

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030009392A1 (en) * 1996-10-25 2003-01-09 Perkowski Thomas J. Internet-based consumer product brand marketing communication system which enables manufacturers, retailers and their respective agents, and consumers to carryout product-related functions along the demand side of the retail chain in an integrated manner
US6430554B1 (en) * 1999-02-01 2002-08-06 Barpoint.Com, Inc. Interactive system for investigating products on a network
WO2001027720A2 (en) * 1999-10-14 2001-04-19 Universal Internet Product Code, Inc. Universal product classification method and system for use with an internet worked computer system
US20050251409A1 (en) * 2004-05-05 2005-11-10 Eplus Systems, Inc. System and method for eCatalog supplier portal

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9076121B2 (en) 2012-09-26 2015-07-07 Catalina Marketing Corporation Dimensional translator
US9471933B2 (en) 2012-09-26 2016-10-18 Catalina Marketing Corporation Dimensional translator
US9830616B1 (en) 2012-09-26 2017-11-28 Catalina Marketing Corporation Dimensional translator
US10366415B1 (en) 2012-09-26 2019-07-30 Catalina Marketing Corporation Dimensional translator

Also Published As

Publication number Publication date
US9830616B1 (en) 2017-11-28
US20140084051A1 (en) 2014-03-27
US20160063554A1 (en) 2016-03-03
US20140324641A1 (en) 2014-10-30
US9471933B2 (en) 2016-10-18
US9076121B2 (en) 2015-07-07
US8678272B1 (en) 2014-03-25
US10366415B1 (en) 2019-07-30

Similar Documents

Publication Publication Date Title
US11687992B2 (en) System and method for providing food taxonomy based food search and recommendation
US10102564B2 (en) System for adjusting map navigation path in retail store and method of using same
US11762909B2 (en) Method and system for abstracting information for use in link analysis
US20190279281A1 (en) Heterogeneous data stream processing for a smart cart
CN103324657B (en) Extended using the multi-dimensional query of semantic and service condition statistics
Hossain et al. Market basket analysis using apriori and FP growth algorithm
US8352496B2 (en) Entity name matching
US10366415B1 (en) Dimensional translator
Abid et al. A survey on search results diversification techniques
Barsky et al. Mining flipping correlations from large datasets with taxonomies
WO2014036441A2 (en) System and process for discovering relationships between entities based on common areas of interest
US9710839B2 (en) System for embedding maps within retail store search results and method of using same
US20140101147A1 (en) Search
US10134074B2 (en) System for snap and pan of embedded maps within retail store search results and method of using same
CN114238308A (en) Cross perspective table generation method and device, electronic equipment and readable storage medium
CN111444177B (en) Report configuration method and device
Aghdaie et al. Customer-oriented benefit segmentation: an integrated approach
US7716203B2 (en) Method and system for tracking, evaluating and ranking results of multiple matching engines
Kabir Data mining framework for generating sales decision making information using association rules
Bennett et al. Reconstructing business proprietor responses for censuses 1851-81: a tailored logit cut-off method
Guria et al. Classification of Foods based on Ingredients
Mohamadi Golsefid International market segmentation and cross-export strategies development case study: Iranian furniture industry
CN116010709A (en) Data processing method, searching method, device and equipment
KR20240028655A (en) Apparatus and method for recommending apparel styling
Carro-Rodríguez et al. Historical query data as business intelligence tool on an internationalization contex

Legal Events

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

Ref document number: 13841492

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13841492

Country of ref document: EP

Kind code of ref document: A1