Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
IDENTIFICATION OF A DATA RECORD FOR COMMUNICATION TO A RECEIVER
Document Type and Number:
WIPO Patent Application WO/2013/110083
Kind Code:
A2
Abstract:
A method for identifying a data record in a set of data records for communication to a record receiver, the method comprising: accessing a definition of a plurality of classes of record receiver, each of the classes being defined in response to an analysis of a set of record receivers and each class having associated a data record in the set of data records; generating at least one query for response by the record receiver whereby a response to the query is suitable for classifying the record receiver into an identified one of the classes of record receiver; identifying a data record associated with the identified class of record receiver.

Inventors:
HARRIS THEODORE (US)
FAITH PATRICK (US)
SIEGEL KEVIN PAUL (US)
Application Number:
PCT/US2013/022584
Publication Date:
July 25, 2013
Filing Date:
January 22, 2013
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
VISA INT SERVICE ASS (US)
International Classes:
G06F17/30
Foreign References:
US20110225157A12011-09-15
US20110087550A12011-04-14
Other References:
None
Attorney, Agent or Firm:
WARD, John P. (LLP77 West Wacker Drive, Suite 310, Chicago Illinois, US)
Download PDF:
Claims:
CLAIMS

1. A method for identifying a data record in a set of data records for communication to a record receiver, the method comprising:

accessing a definition of a plurality of classes of record receiver, each of the classes being defined in response to an analysis of a set of record receivers and each class having associated a data record in the set of data records;

generating at least one query for response by the record receiver whereby a response to the query is suitable for classifying the record receiver into an identified one of the classes of record receiver; and identifying a data record associated with the identified class of record receiver.

2. The method of claim 1 further comprising communicating the identified data record to the record receiver.

3. The method of any preceding claim wherein the analysis is based on characteristics of each data receiver in the set .

4. The method of any preceding claim wherein the analys is cluster analysis.

5. The method of claim 4 wherein multiple queries are generated, the queries being based on the cluster analysis .

6. The method of claim 5 wherein the queries comprise a sequence of queries generated in succession.

7. The method of claim 6 wherein each subsequent query determined based on a response received from the record receiver to a previous query.

8. The method of any preceding claim wherein the response to the at least one query is operable as a

differentiation parameter for classifying the record receiver .

9. The method of any preceding claim wherein the record receiver has associated characteristic data objects and the method further comprises receiving a response to the query from the record receiver, the response being determined based on the characteristic data objects.

10. An apparatus for identifying a data record in a set of data records for communication to a record receiver, the apparatus comprising:

an accessor component for accessing a definition of a plurality of classes of record receiver, each of the classes being defined in response to an analysis of a set of record receivers and each class having associated a data record in the set of data records;

a query generator for generating at least one query for response by the record receiver whereby a response to the query is suitable for classifying the record receiver into an identified one of the classes of record receiver; and

an identification component for identifying a data record associated with the identified class of record receiver .

11. The method of claim 10 further comprising

communicating the identified data record to the record receiver .

12. The method of any preceding claim wherein the analysis is cluster analysis, and wherein multiple queries are generated, the queries being based on the cluster analysis, and wherein the queries comprise a sequence of queries generated in succession, and wherein each subsequent query is determined based on a response received from the record receiver to a previous query.

13. The method of any preceding claim wherein the record receiver has associated characteristic data objects and the method further comprises receiving a response to the query from the record receiver, the response being determined based on the characteristic data objects.

14. An apparatus comprising: a central processing unit; a memory subsystem; an input/output subsystem; and a bus subsystem interconnecting the central processing unit, the memory subsystem, the input/output subsystem; and the apparatus as claimed in any of claims 10 to 13.

15. A computer program element comprising computer program code to, when loaded into a computer system and executed thereon, cause the computer to perform the steps of a method as claimed in any of claims 1 to 9.

Description:
IDENTIFICATION OF A DATA RECORD

FOR COMMUNICATION TO A RECEIVER

Related Information

This application claims priority to U.S. Provisional Application Ser. No. 61/589,233 filed January 20, 2012 and U.S. Application Ser. No 13/744,849 filed January 18 2013; the contents of both are herein incorporated by reference in their entirety.

Field of the Invention

The present invention relates to the identification of a data record for communication to a receiver. In

particular, it relates to the identification of a data record based on a classification of a data receiver.

Background of the Invention

Data processing entities in data processing systems can be targeted to receive data records such as

notifications, messages, alerts, resources or resource identifiers, information or any other type of data record. For example, a data processing entity might be designated as a data record receiver for receiving notifications of abnormal, irregular or uncertain conditions in a system. Similarly, a record receiver might receive messages relating to enhancements,

improvements or new resources available in a system.

Further, a record receiver might receive a notification of the availability of a new service or feature, or an indication of the availability of a resource that may be prioritised, of limited availability, limited capacity or somesuch. In such arrangements it is most preferable to target such data records to data record receivers for which the data records are most relevant or appropriate. Where a data record is identified for communication to relevant record receivers, the target receivers will most preferably be predetermined, pre-identified or predefined such that data records are only ever communicated to relevant record receivers. In some contexts, sharing specific identification information about a particular record receiver can be undesirable. For example, where a record receiver is a secured data entity, storing secret, private or sensitive information, it can be undesirable for the record receiver to share characteristic

information about itself with a broader data processing system. The absence of characteristic information about data receivers can preclude an accurate identification of data records suitable for communication to a data receiver .

Such challenges lead to the communication of data records to data record receivers inappropriately or,

alternatively, to the absence of communication of data records to data record receivers.

It would therefore be advantageous to provide a system for targeted communication of data records to data record receivers without the aforementioned disadvantages.

Summary of the Invention

The present invention accordingly provides, in a first aspect, a computer implemented method for identifying a data record in a set of data records for communication to a record receiver, the method comprising: accessing a definition of a plurality of classes of record receiver, each of the classes being defined in response to an analysis of a set of record receivers and each class having associated a data record in the set of data records; generating at least one query for response by the record receiver whereby a response to the query is suitable for classifying the record receiver into an identified one of the classes of record receiver;

identifying a data record associated with the identified class of record receiver.

Thus, in this way, the method is operable to classify the record receiver into a class in order to identify a data record for communication to the record receiver without requiring that the record receiver share potentially sensitive, secret, private or identifying information such as an identifier.

Preferably the method further comprises communicating the identified data record to the record receiver.

Preferably the analysis is based on characteristics of each data receiver in the set.

Preferably the analysis is cluster analysis.

Preferably multiple queries are generated, the queries being based on the cluster analysis.

Preferably the queries comprise a sequence of queries generated in succession.

Preferably each subsequent query is determined based on a response received from the record receiver to a previous query .

Preferably the response to the at least one query is operable as a differentiation parameter for classifying the record receiver.

Preferably the record receiver has associated

characteristic data objects and the method further comprises receiving a response to the query from the record receiver, the response being determined based on the characteristic data objects. The present invention accordingly provides, in a second aspect, an apparatus for identifying a data record in a set of data records for communication to a record receiver, the apparatus comprising: an accessor component for accessing a definition of a plurality of classes of record receiver, each of the classes being defined in response to an analysis of a set of record receivers and each class having associated a data record in the set of data records; a query generator for generating at least one query for response by the record receiver whereby a response to the query is suitable for classifying the record receiver into an identified one of the classes of record receiver; an identification component for

identifying a data record associated with the identified class of record receiver.

The present invention accordingly provides, in a third aspect, an apparatus comprising: a central processing unit; a memory subsystem; an input/output subsystem; and a bus subsystem interconnecting the central processing unit, the memory subsystem, the input/output subsystem; and the apparatus as described above.

The present invention accordingly provides, in a fourth aspect, a computer program element comprising computer program code to, when loaded into a computer system and executed thereon, cause the computer to perform the steps of a method as described above.

Brief Description of the Drawings A preferred embodiment of the present invention is described below in more detail, by way of example only, with reference to the accompanying drawings, in which:

Figure 1 is a block diagram of a data processing system suitable for the operation of embodiments of the present invention ;

Figure 2 is a component diagram of an arrangement of a data record identification system in accordance with embodiments of the present invention;

Figure 3 is a component diagram of an arrangement of the data record identification system of Figure 2 in accordance with a preferred embodiment of the present invention ;

Figure 4 is a flowchart of a method of the data record identification system in accordance with a preferred embodiment of the present invention;

Figure 5 is a component diagram illustrating an approach to defining the set of receiver classes of Figure 2 in accordance with a preferred embodiment of the present invention ;

Figure 6 is a flowchart of a method of the analysis component of Figure 2 in accordance with a preferred embodiment of the present invention;

Figure 7 is a component diagram illustrating an approach to classifying the record receiver of Figures 2 and 3 in accordance with a preferred embodiment of the present invention ; Figure 8 is a flowchart of a method of the classifier of Figure 2 in accordance with a preferred embodiment of the present invention; Figure 9 is a component diagram illustrating the analysis of a record receiver set to generate a set of receiver classes of an example embodiment of the present invention in use;

Figure 10 is a component diagram illustrating the classification of a record receiver and the communication of a data record to the record receiver in the example embodiment of the present invention in use of Figure 9; and

Figure 11 is a component diagram illustrating the analysis of a record receiver set to generate a set of receiver classes of a second example embodiment of the present invention in use.

Detailed Description of the Preferred Embodiments

Figure 1 is a block diagram of a data processing system 170 suitable for the operation of embodiments of the present invention. The data processing system 170 includes an inter-connect 171 (e.g., bus and system core logic), which interconnects a microprocessor ( s ) 173 and memory 167. The microprocessor 173 is coupled to cache memory 179 in the example of Figure 1.

In one embodiment, the inter-connect 171 interconnects the microprocessor (s) 173 and the memory 167 together and also interconnects them to input/output (I/O) device (s) 175 via I/O controller ( s ) 177. I/O devices 175 may include a display device and/or peripheral devices, such as mice, keyboards, modems, network interfaces, printers, scanners, video cameras and other devices known in the art. In one embodiment, when the data processing system is a server system, some of the I/O devices 175, such as printers, scanners, mice, and/or keyboards, are optional. In one embodiment, the inter-connect 171 includes one or more buses connected to one another through various bridges, controllers and/or adapters. In one embodiment the I/O controllers 177 include a USB (Universal Serial Bus) adapter for controlling USB peripherals, and/or an IEEE-1394 bus adapter for controlling IEEE-1394

peripherals .

In one embodiment, the memory 167 includes one or more of: ROM (Read Only Memory), volatile RAM (Random Access Memory) , and non-volatile memory, such as hard drive, flash memory, etc.

Volatile RAM is typically implemented as dynamic RAM (DRAM) which requires power continually in order to refresh or maintain the data in the memory. Non-volatile memory is typically a magnetic hard drive, a magnetic optical drive, an optical drive (e.g., a DVD RAM), or other type of memory system which maintains data even after power is removed from the system. The non-volatile memory may also be a random access memory.

The non-volatile memory can be a local device coupled directly to the rest of the components in the data processing system. A non-volatile memory that is remote from the system, such as a network storage device coupled to the data processing system through a network interface such as a modem or Ethernet interface, can also be used.

In this description, some functions and operations are described as being performed by or caused by software code to simplify description. However, those skilled in the art will appreciate that such functions and operations can be implemented in software, hardware, firmware, or any combination of software, hardware and firmware, and that any such expressions are not limiting to embodiments of the invention implemented exclusively in one particular manner.

Alternatively, or in combination, the functions and operations as described here can be implemented using special purpose circuitry, with or without software instructions, such as using Application-Specific

Integrated Circuit (ASIC) or Field-Programmable Gate Array (FPGA) . Embodiments can be implemented using hardwired circuitry without software instructions, or in combination with software instructions. Thus, the techniques are limited neither to any specific

combination of hardware circuitry and software, nor to any particular source for the instructions executed by the data processing system. While embodiments can be implemented in fully functioning computers and computer systems, various embodiments are capable of being distributed as a computing product in a variety of forms and are capable of being applied regardless of the particular type of machine or computer- readable media used to actually effect the distribution.

At least some aspects disclosed can be embodied, at least in part, in software. That is, the techniques may be carried out in a computer system or other data processing system in response to its processor, such as a

microprocessor, executing sequences of instructions contained in a memory, such as ROM, volatile RAM, nonvolatile memory, cache or a remote storage device.

Routines executed to implement embodiments of the pres invention may be implemented as part of an operating system or a specific application, component, program, object, module or sequence of instructions. Instructions can be set at various times in various memory and storage devices in a computer and, when read and executed by one or more processors in a computer, cause the computer to perform operations necessary to execute elements

involving the various aspects.

A machine readable medium can be used to store software and data which when executed by a data processing system causes the system to perform various methods. The executable software and data may be stored in various places including for example ROM, volatile RAM, nonvolatile memory and/or cache. Portions of this software and/or data may be stored in any one of these storage devices. Further, the data and instructions can be obtained from centralized servers or peer to peer networks. Different portions of the data and

instructions can be obtained from different centralized servers and/or peer to peer networks at different times and in different communication sessions or in a same communication session. The data and instructions can be obtained in entirety prior to the execution of the applications. Alternatively, portions of the data and instructions can be obtained dynamically, just in time, when needed for execution. Thus, it is not required that the data and instructions be on a machine readable medium in entirety at a particular instance of time.

Examples of computer-readable media include but are not limited to recordable and non-recordable type media such as volatile and non-volatile memory devices, read only memory (ROM) , random access memory (RAM) , flash memory devices, floppy and other removable disks, magnetic disk storage media, optical storage media (e.g., Compact Disk Read-Only Memory (CD ROMS) , Digital Versatile Disks

(DVDs), etc.), among others. The computer-readable media may store the instructions. The instructions may also be embodied in digital and analog communication links for electrical, optical, acoustical or other forms of propagated signals, such as carrier waves, infrared signals, digital signals, etc. However, propagated signals, such as carrier waves, infrared signals, digital signals, etc. are not tangible machine readable medium and are not configured to store instructions .

In general, a machine readable medium includes any mechanism that provides (i.e., stores and/or transmits) information in a form accessible by a machine (e.g., a computer, network device, personal digital assistant, manufacturing tool, any device with a set of one or more processors, etc.).

In various embodiments, hardwired circuitry may be used in combination with software instructions to implement the techniques. Thus, the techniques are neither limited to any specific combination of hardware circuitry and software nor to any particular source for the

instructions executed by the data processing system.

Figure 2 is a component diagram of an arrangement of a data record identification system 216 in accordance with embodiments of the present invention. The data record identification system 216 includes a record receiver 200 as a component suitable for receiving at least one data record 212 from a data record set 202. The data record receiver 200 can be a data processing entity in a data processing system such as a software or hardware

component including a client or server component or device. For example, the record receiver 200 can be a process executing in an operating system of a computer system. Alternatively, the record receiver 200 can be a software component such as an application software component or an 'app' executing on a client or server device. Such a device can be a client computer system or a pervasive, mobile or other device such as a smartphone, personal computer, mobile terminal, static terminal or any other such similar record receiver 200 as will be apparent to those skilled in the art. In one embodiment, the record receiver 200 is a personal device dedicated to a particular individual and stores or tracks information personal to that individual. Such information can include personal details such as an identifier 218 of the individual. The identifier 218 can be a personal

identifier such as a name, reference or account number, an addressing mechanism such as a network, machine, communication or personal address. In one embodiment, the identifier 218 is discerned from a number of

characteristics or attributes of the record receiver 200 such as a network address, location information, browser cookie information or other such suitable identifiers as will be apparent to those skilled in the art.

The record receiver 200 is adapted to receive at least one data record 212 from a data record set 202. The data record set 202 is a data store suitable for the storage of data records such as a relational or non-relational database, an object oriented database, a sequential data store, a random access data store, a file system, a memory or other mechanism suitable for holding a set of data records 202 as will be apparent to those skilled in the art. For example, each data record 212 can relate to a notification, message, alert, resource or resource identifier, information, indication, alarm, invitation or any other such information entity as may be appropriate for communication to the record receiver 200.

The data record identification system 216 further includes an analysis component 208 as a software or hardware component operable to analyse a set of record receivers 206 in order to generate a set 204 of classes 214 of record receiver. The set of record receivers 206 constitutes a complete or sample set of record receivers 206 suitable for categorising, grouping, clustering or classifying into classes of receiver 214 to define a set of classes 204. For example, characteristics of each record receiver in the set of record receivers are analysed by the analysis component 208 such as by cluster analysis, component analysis, feature analysis, pattern analysis or any other suitable analysis mechanism to define the classes 214 in the set of classes 204. In one embodiment the analysis component 208 is further adapted to receive one or more rules, criteria, policies or other definitions to assist in the generation of receiver classes 214. For example the analysis component 208 may be adapted to receive a definition of how many classes 214, a type of each class 214, an identification of one or more characteristics to be analysed when defining each class 214 or other rules, criteria or policies suitable for generating the set 204 of classes 214.

Each class 214 in the set 204 of receiver classes corresponds to a category, type, style, cluster or group of record receivers having one or more characteristics in common. Thus, any given record receiver can be classified in a class 214 based on a definition of each class 214. Each class 214 has an associated data record 212 in the data record set 202. In this way, a data record 212 in the data record set 202 is identified for a given record receiver based on a class of receivers 214 to which the given record receiver belongs.

The data record identification system 216 further includes a classifier 210 as a software or hardware component operable to classify the record receiver 200 into one of the classes 214 in the set 204 of receiver classes. The classifier 210 generates one or more queries, as a query set, for response by the record receiver 200 based on characteristics of the record receiver 200 in order that the classifier 210 can classify the record receiver 200 into one of the classes 214. Subsequently, a data record 212 associated with a class 214 identified for the record receiver 200 by the classifier 210 can be communicated to the record receiver 200. Thus, in this way, the data record identification system

216 is operable to classify the record receiver 200 into a class 214 in order to identify a data record for communication to the record receiver without requiring that the record receiver 200 share potentially sensitive, secret, private or identifying information such as identifier 218. The use of queries, by the classifier 210 to classify the record receiver 200 circumvents any need to receive explicit identifying information about the record receiver 200. Rather, the record receiver 200 responds to the queries of the classifier 210 using information, characteristics, or generalisations of the record receiver 200 in such a way that the classifier 210 is operable to identify a class 214 for the record receiver 200 without identifying information 218.

Figure 3 is a component diagram of an arrangement of the data record identification system 216 of Figure 2 in accordance with a preferred embodiment of the present invention. Many of the elements of Figure 3 are identical to those described above with respect to Figure 2 and these will not be repeated here. Figure 3 includes further details of various elements of the arrangement of Figure 2 in accordance with a preferred embodiment of the present invention.

The record receiver set 206 includes a plurality of record receivers 322. Each record receiver 322 includes one or more characteristic objects 324 as data objects, data structures, attribute records, metadata, attribute fields, semantic data or any other suitable mechanism for associating characteristics with each of the record receivers 324. In the exemplary embodiment of Figure 3, each of the characteristic objects 324 includes one or more attributes 320 having an attribute type 316 and an attribute value 318. The characteristic objects 324 are used by the analysis component 208 to identify record receivers 322 in the set 206 having similar

characteristics in order to generate the classes 214 of record receivers 322. Thus, a class 214 describes one or more common characteristics of record receivers 322 belonging to the class 214 based on the characteristic objects 324 such as attribute types 316 and values 318.

For example, an analysis of a set 206 of record receivers 322 each having a characteristic object of boolean type 316 can result in the generation of two classes 214, one corresponding to record receivers 206 having a "TRUE" characteristic, and one corresponding to record receivers

206 having a "FALSE" characteristic. More complex characteristics such as numeric, textual, character, composite or enumerated type characteristics can be employed and will require more complex analysis by the analysis component 208 to generate classes 214.

One approach to the analysis of the record receiver set 206 by the analysis component 208 is cluster analysis or clustering. Using cluster analysis the set of record receivers 322 is grouped in such a way that record receivers 322 in the same group exhibit a greater degree of similarity to each other than to record receivers 322 in other groups. Examples of clustering algorithm that can be employed by the analysis component 208 include connectivity based clustering, centroid-based clustering, distribution-based clustering, density based clustering, canopy clustering or any other suitable clustering or grouping algorithm as will be known to those skilled in the art .

Additionally or alternatively, the analysis component 208 can be operable to perform pattern analysis or pattern recognition based on characteristic objects 324 for a record receiver 322. Such pattern analysis can identify patterns or themes in a set of characteristic objects 324 for a record receiver 322 to categorise the record receiver 324 for the purpose of generating the classes

214. For example, where each of a plurality of

characteristic objects 322 for a record receiver 322 correspond to an individual communication or transaction of the record receiver 322, the analysis component 208 can determine if the overall pattern of the

characteristic objects 324 conforms to any particular rule or theme and categorise the record receiver 322 accordingly. In this way, pattern analysis can be employed in the identification of and definition of classes 214.

In the preferred embodiment depicted in Figure 3, the record receiver 200 is configured in a substantially similar manner to any of the record receivers 322 included in the record receiver set 206. Thus, the record receiver 200 includes one or more characteristic objects 302 including attributes 308 each having an attribute type 304 and an attribute value 306. In one embodiment, the record receiver 200 is additionally one of the record receivers 322 included in the record receiver set 206 used to generate the set of receiver classes 204. The record receiver 200 further includes a query responder 310 as a software or hardware component for responding to queries received from the classifier 210 as described in more detail below. Further, in the preferred embodiment depicted in Figure 3, the classifier 210 includes a query generator 312 and a class determination component 314. The query generator 312 is a software or hardware component operable to generate a query set comprising at least one query for response by the record receiver 200.

The order and form of queries in a query set may be predefined, whereby one or more of the queries are generated by the query generator 312 in a specific order, whereby the responses to the pre-defined queries are used to classify the record receiver 200 into a particular class of receivers 214. Alternatively, the order that queries in the query set are generated is dependent on a response by the record receiver 200 to the previous query i.e. the specific response given by a record receiver 200 to a first query, determines the form of the second generated query etc.

It will be appreciated that using a dynamic query set provides for more accurate classification of the record receiver 200 than using a pre-defined query set because the specific form of the query set is dependent on the responses to the queries from the individual record receiver 200. By using such dynamic functionality, it is possible to more accurately classify a record receiver 200 into a particular class 214. For example, by analysing the dynamic query sets used to classify record receivers 200 into a particular class 214, the query generator 312 can be adapted to modify the queries used in the query set to optimise to the query set for classification e.g. reduce the number of queries required to classify a record receiver 200. The class determination component 314 is a software or hardware component operable to identify an appropriate class 214 for the record receiver 200 based on responses by the record receiver 200 to the queries. The queries generated by the query generator 312 seek to elicit information about the characteristics of the record receiver 200 including the attributes 308 of

characteristic objects 302 associated with the record receiver 200. Preferably, the queries are generated based on a definition of the classes 214 such that the queries are operable to elicit responses from the query responder 310 that allow the identification of a class 214 in the set of receiver classes 204 in which the record receiver 200 can be classified. Such identification is undertaken by the class determination component 314.

Figure 4 is a flowchart of a method of the data record identification system 216 in accordance with a preferred embodiment of the present invention. Initially, at step 402, a definition of the classes 214 of record receivers is accessed. At step 404 the query generator 312 of the classifier 210 generates one or more queries, either as a predefined query set or a dynamic query set, for response by the query responder 310 of the record receiver 200. At step 406 the classifier 210 receives a response to all the queries in the query set from the record receiver 200. At step 408 the class determination component 314 of the classifier 210 determines a class 214 in the set of receiver classes 204 appropriate to the record receiver 200. Subsequently, at step 410, a data record 212 associated with the determined class 214 is identified for communication to the record receiver 200.

Figure 5 is a component diagram illustrating an approach to defining the set of receiver classes 204 of Figure 2 in accordance with a preferred embodiment of the present invention. Many of the elements of Figure 5 are identical to those described above with respect to Figures 2 and 3 and these will not be repeated here. Figure 5 illustrates how, in one embodiment, the analysis component 208 processes the record receiver set 206 to generate the set of receiver classes 204 including classes 214. Initially, the analysis component 208 groups all record receivers in the record receiver set into subsets 322a, 322b and 322c such that all record receivers in each subset have similar characteristics, such as similar characteristic objects 324 or patterns of characteristic objects 324. Such grouping can be achieved using one or more suitable analysis techniques such as those described above with respect to Figure 3. A set of receiver classes 204 is then generated, each class 214 being a generalisation of one of the subsets 322a, 322b and 322c of record

receivers. Thus, class V X' 214a is a generalisation of subset 322a, class V Y' 214b is a generalisation of subset 322b and class V Z' 214c is a generalisation of subset 322c. Each of the classes 214a, 214b and 214c has associated a data record 212 in a data store 202.

Figure 6 is a flowchart of a method of the analysis component 208 of Figure 2 in accordance with a preferred embodiment of the present invention. At step 602 the analysis component 208 receives the record receiver set

206. At step 604 the analysis component 208 analyses the record receiver set 206 using an analysis technique such as clustering, component analysis, pattern analysis, feature analysis or any suitable analysis technique as will be apparent to those skilled in the art. At step 606 the analysis component 208 identifies groups of record receivers having similar characteristics to generate clusters, groups or subsets 322a, 322b and 322c of the set of all record receivers 206 based on the analysis at step 604. At step 608 the analysis component 208

generates a class 214 for each group or subset 322a, 322b and 322c of record receivers having similar

characteristics as classes 214a, 214b and 214c.

Figure 7 is a component diagram illustrating an approach to classifying the record receiver of Figures 2 and 3 in accordance with a preferred embodiment of the present invention. Many of the elements of Figure 7 are identical to those described above with respect to Figures 2 and 3 and these will not be repeated here. The query generator 312 generates queries 706, in a pre-defined or dynamic manner for response by the query responder 310 of the record receiver 200. The queries 706 have associated a plurality of result sets 709 corresponding to possible responses to the queries 706. Each result set 708 has associated a class of receivers 710 corresponding to a class 214 in the set of receiver classes 204. Thus, the result sets constitute differentiation parameters to classify the record receiver 200 in the set of receiver classes 204. The record receiver 200 provides a result set 712 as a response to the queries 706. The class determination component 314 of the classifier 210 receives the result set 712 from the query responder 310 of the record receiver 200 and, using the set of possible result sets 709, determines a class 214 for the record receiver 200. Accordingly, a data record 212 associated with the determined class 214 is identified for

communication to the record receiver 200.

In one embodiment, multiple queries 706 are generated based on the cluster analysis performed by the analysis component 208 such that the queries are operable to identify a single class 214 for each result set 708.

Figure 8 is a flowchart of a method of the classifier 210 of Figure 2 in accordance with a preferred embodiment of the present invention. Initially, at step 802, the classifier 210 receives the set of receiver classes 204 including definitions of each class 214 of receivers. At step 804 the classifier 210 analyses the set of receiver classes to identify the characteristics of record receivers 322 belonging to each of the sets 214. At step 806 the query generator 312 generates queries 706 having a plurality of result sets 709, each result set 708 corresponding to a single class 710, 214 of record receiver. At step 808 the classifier 210 communicates the queries 706 to the record receiver 200 for response by the query responder 310. At step 810 the query responder 310 of the record receiver 200 communicates a result set 712 for the record receiver 200 for receipt by the class determination component 314. At step 812 the class determination component identifies a class 214 of receivers for the record receiver 200 based on the received result set 712 and the plurality of all possible result sets 709 for the queries 706.

Figure 9 is a component diagram illustrating the analysis of a client set 906 to generate a set of client classes 904 in an example embodiment of the present invention in use. The arrangement of Figure 9 relates to an exemplary environment in which data processing client computer systems 922a to 922f in a client set 906 consume resource (such as CPU or memory) and record a percentage

utilisation of the consumed resource. The exemplary environment is such as to offer a proportion of

additional resource to a client computer system by way of data records 912a, 912b and 912c according to a

classification of the client computer system in a set of classes 904.

According to the exemplary embodiment of Figure 9, an analysis component 208 generates a set of client classes 904 based on the client set 906. The analysis component 208 accordingly generates three classes 914a, 914b and 914c. "Low" class 914a corresponds to clients having a utilisation less than or equal to 5%. "Moderate" class 914b corresponds to clients having a utilisation between 5% and 95%. "High" class 914c corresponds to clients having a utilisation greater than or equal to 95%. Each class has associated a data record in the data record set

902. "Low" class 914a is associated to data record 912a offering 20% of additional available resource such that clients classified in "Low" class 914a are offered 20% of additional available resource. "Moderate" class 914b is associated to data record 912b offering 30% of additional available resource such that clients classified in

"Moderate" class 914b are offered 30% of additional available resource. "High" class 914c is associated to data record 912c offering 50% of additional available resource such that clients classified in "High" class

914c are offered 50% of additional available resource.

Figure 10 is a component diagram illustrating the classification of a client 1000 and the communication of a data record 912b to the client 1000 in the example embodiment of the present invention in use of Figure 9. The exemplary arrangement of Figure 10 illustrates an embodiment of the invention in use where a client computer system 1000 having a utilisation 1002 of 67% is classified by the classifier 210 for the identification of a record from the data record set 902. Initially the classifier 210 generates (1) a query 1006 via the query generator 312, the query 1006 having a set of possible result sets 1009. In the present example the query 1006 requires utilisation information as a response from a client. The possible result sets include: a result 1008a where the utilisation is less than or equal to 5%; a result 1008b where the utilisation is less than 95% and greater than 5%; and a result 1008c where the utilisation is greater than 95%. The query 1006 is communicated (2) to the client 1000. Subsequently, the client 1000 provides (3) the

utilisation 1002 to the class determination component 314 in response to the query 1006. The class determination component 314 also retrieves (3) the possible result sets

1007 associated with the query 1006. The class

determination component 314 processes the response provided by the client 1000 and the possible result sets 1009 to determine a class in the set of client classes 904 into which to the classify the client 1000. In view of the client's utilisation of 67% the appropriate class is identified (4) as "Moderate" class 914b. "Moderate" class 914b has associated data record 912b which is identified (5) for communication (6) to the client 1000.

Figure 11 is a component diagram illustrating the analysis of a consumer set 1106 to generate a set of consumer classes 1104 in a second example embodiment of the present invention in use. The arrangement of Figure 11 relates to an exemplary environment in which consumers

1122a, 1122b and 1122c record transactions. Consumers 1122a, 1122b and 1122c can include consumer software agents, consumer applications, consumer apps or technical entities representing real-world consumers, or any other type of consumer. Transactions can include exchanges of information between the consumers 1122a to 1122c, including transactions to achieve cooperation between consumers 1122a to 1122c and suppliers or to achieve a transfer of information between consumers 1122a to 1122c and suppliers. Suppliers can include supplier computer systems such as server computer systems or technical entities representing real-world suppliers.

According to the exemplary embodiment of Figure 11, an analysis component 208 generates a set of consumer classes 1104 based on the consumer set 1106. The analysis component 208 accordingly generates multiple classes of consumer 1114 in a set of consumer classes 1104. Each class 1114 of consumer represents some generalisation of the type of the consumers 1122a to 1122c in the consumer set 1106. Each consumer class 1144 has associated a data record as an offer 1112 in a data record set 1102.

In use, in the embodiment of Figure 11, a consumer having a particular set of transactions receives one or more queries from a classifier 210 to determine which consumer class 1114 the consumer should be associated with. Once determined, the offer data record 1112 associated with the determined class 1114 can be communicated to the consumer . Insofar as embodiments of the invention described are implementable, at least in part, using a software- controlled programmable processing device, such as a microprocessor, digital signal processor or other processing device, data processing apparatus or system, it will be appreciated that a computer program for configuring a programmable device, apparatus or system to implement the foregoing described methods is envisaged as an aspect of the present invention. The computer program may be embodied as source code or undergo compilation for implementation on a processing device, apparatus or system or may be embodied as object code, for example.

Suitably, the computer program is stored on a carrier medium in machine or device readable form, for example in solid-state memory, magnetic memory such as disk or tape, optically or magneto-optically readable memory such as compact disk or digital versatile disk etc., and the processing device utilises the program or a part thereof to configure it for operation. The computer program may be supplied from a remote source embodied in a

communications medium such as an electronic signal, radio frequency carrier wave or optical carrier wave. Such carrier media are also envisaged as aspects of the present invention.

It will be understood by those skilled in the art that, although the present invention has been described in relation to the above described example embodiments, the invention is not limited thereto and that there are many possible variations and modifications which fall within the scope of the invention.

The scope of the present invention includes any novel features or combination of features disclosed herein. The applicant hereby gives notice that new claims may be formulated to such features or combination of features during prosecution of this application or of any such further applications derived therefrom. In particular, with reference to the appended claims, features from dependent claims may be combined with those of the independent claims and features from respective

independent claims may be combined in any appropriate manner and not merely in the specific combinations enumerated in the claims.