Abstract:
An apparatus (and method) is configured to perform an operation on a plurality of items of data. A memory stores data identifying said items. The apparatus generates a list of selected items identifying an item in response to a first selection signal; performs a selection operation to add an item to said list of selected items by: responsive to (a) a first move cursor signal: identifying a first item of said plurality of items stored in said memory; and adding said first identified item to said list of selected items if said item is not already on said list and (b) a second move cursor signal: identifying a second item of said plurality of items stored in said memory; removing said first identified item from said list of selected items. The apparatus adds said second identified item to said list of selected items if said second item is not on said list.

Description:
BACKGROUND 
       [0001]    1. Field of Art 
         [0002]    The present disclosure relates to data processing apparatus and a method of operating data processing apparatus, and more particularly to electronic devices that have a user interface configured for a user to select one or more data items (e.g., contacts) with which to perform an operation, such as to make a push to talk call. 
         [0003]    2. Description of the Related Art 
         [0004]    It is known to select one or more contacts from a list of contacts with which to perform a subsequent operation. For example, it is known to select one or more contacts from an address book on a mobile telephone with which to subsequently communicate. Typically, this is performed by a user using cursor keys on the keypad of the telephone to highlight one of a list of contacts displayed via an address book, and pressing a “select” button when a desired contact is highlighted to place a check mark in a check box associated with that contact. The user can repeat this operation to select as many contacts as desired, before pressing a “communicate” button to initiate a communications application such as a push to talk application, or an SMS application with the selected contacts. 
         [0005]    Conventional push-to-talk (PTT) applications are known to be used on mobile telephones. The push to talk application provides a two-way radio having a bi-directional radio transceiver operating as a half-duplex channel in which only one unit transmits at a time, and any number of units can listen. Such a service allows a user of the mobile telephone to instantly reach one or more users of other mobile telephones while eliminating the dialing and ringing steps that are required when making a regular cellular telephone call. Such operation is sometimes known as a “walkie-talkie” service. 
         [0006]    In order to set up a PTT call, a user must select one or more contacts by scrolling through a list of contacts and selecting those users with which they wish to participate in a PTT call. As long as those contacts are available, the user can hold down a PTT button on their mobile phone, speak into the microphone of their mobile phone, and a signal representative of their speech will be transmitted to the selected contact&#39;s mobile phones. 
       SUMMARY 
       [0007]    Aspects and embodiments disclosed herein were devised with the foregoing in mind. For example, in a first aspect, there is provided a method of operating a data processing apparatus to perform an operation on a plurality of items of data, the data processing apparatus having a memory which stores data identifying said plurality of items of data. 
         [0008]    In one example embodiment, the method comprises generating a list of selected items of data identifying at least one item of data in response to a first selection signal. The method comprises performing a further selection operation to add at least one further item of data to said list of selected items of data. Specifically, the method comprises, responsive to a first move cursor signal, identifying a first item of data of said plurality of items of data stored in said memory and adding said first identified item of data to said list of selected items of data if said item is not already on said list. In addition, the method comprises, responsive to a second move cursor signal, identifying a second item of data of said plurality of items of data stored in said memory, removing said first identified item of data from said list of selected items of data, and adding said second identified item of data to said list of selected items of data if said second item is not already on said list. The method also comprises performing an operation on the items identified by said list of selected items of data in response to receipt of an operation signal. 
         [0009]    In a second aspect, there is provided data processing apparatus for performing an operation on a plurality of items of data. In one embodiment, the apparatus comprises a processor and a memory. The memory has stored therein data identifying said plurality of items of data. The data processing apparatus configured to generate a list of selected items of data identifying at least one item of data in response to a first selection signal. 
         [0010]    In addition, the data processing apparatus is configured to perform a further selection operation to add at least one further item of data to said list of selected items of data by, responsive to a first move cursor signal, identifying a first item of data of said plurality of items of data stored in said memory and adding said first identified item of data to said list of selected items of data if said item is not already on said list, and by, responsive to a second move cursor signal, identifying a second item of data of said plurality of items of data stored in said memory, removing said first identified item of data from said list of selected items of data, and adding said second identified item of data to said list of selected items of data if said second item is not already on said list. The data processing apparatus also is configured to perform an operation on the items identified by said list of selected items of data in response to receipt of an operation signal. 
         [0011]    It is noted that the first identified item of data may be removed from said list of selected items of data if said second move cursor signal was received prior to a further selection signal. Further, identifying items of data in response to move cursor signals in this way can reduce and/or remove ambiguity when a user is selecting a plurality of items to perform the subsequent operation, and can also reduce the amount of user input required by a user in order to perform the operation. The data identifying said plurality of items of data may be contacts in an address book. 
         [0012]    Performing the operation may comprise setting up a communications operation with the contacts identified by said list of selected items of data. The communications operation may be a push-to-talk call. In some embodiments the operation may be an action/operation on the contacts that is not necessarily a communication operation, such as adding contacts to a group or deleting contacts. The operation may be a PTT operation, which may or may not be a communications operation to set up a PTT call. 
         [0013]    Identifying the first and/or second item may comprise displaying and highlighting the respective first and/or second item on a user interface of the data processing apparatus. Identifying the first and/or second item may comprise displaying a check mark in association with the respective first and/or second item on a user interface of the data processing apparatus. Identifying the first and/or second items in this way may provide a clear indication to the user of which items are selected for the operation. 
         [0014]    The data processing apparatus may comprise one of a mobile computing device, a mobile telephone, a personal digital assistant, a personal computer and a laptop. In addition, there may be provided a computer program comprising machine or computer-readable program elements for configuring a data processing apparatus or to configure a data processing apparatus as described herein and/or to implement a method described herein. 
         [0015]    It is noted that one or more embodiments described herein may provide a reduction in the number of keystrokes required for a user to select one or more items of data from a list before initiating an operation associated with those data items, and/or may reduce ambiguity as to which data items are selected for a subsequent operation. This may be achieved by associating a “floating check mark” with a data item when it is highlighted such that a user can unambiguously and easily determine whether or not that data item is currently selected for the subsequent operation. 
         [0016]    Highlighting for a local operation (such as moving a cursor over data items for adding data items to a list of selected items) may be disambiguated from the selection of data items for a global operation (the subsequent operation on the data items that have been added to list of selected data items). 
         [0017]    There may be provided a carrier medium carrying a computer program described herein. The carrier medium may be one of the following: solid-state memory; magnetic memory; CD-ROM; digital versatile disk (DVD); read-write CD; an electronic signal; radio frequency carrier wave or optical carrier wave. 
     
    
     
       BRIEF DESCRIPTION OF DRAWINGS 
         [0018]    The disclosed embodiments have other advantages and features which will be more readily apparent from the detailed description, the appended claims, and the accompanying drawings (or Figures). The Figures include: 
           [0019]    FIG. (or FIG.)  1  illustrates a mobile telephone; 
           [0020]      FIGS. 2A and 2B  illustrate an embodiment of a GUI; 
           [0021]      FIG. 3  illustrates an embodiment of a data processing apparatus; 
           [0022]      FIG. 4  shows schematically a process flow control diagram for an embodiment as described; and 
           [0023]      FIG. 5  shows schematically a process flow control diagram for an embodiment as described. 
       
    
    
     DETAILED DESCRIPTION 
       [0024]    The Figures (FIGS.) and the following description relate to preferred embodiments by way of illustration only. It should be noted that from the following discussion, alternative embodiments of the structures and methods disclosed herein will be readily recognized as viable alternatives that may be employed without departing from the principles of the claimed invention. 
         [0025]    Reference will now be made in detail to several embodiments, examples of which are illustrated in the accompanying figures. It is noted that wherever practicable similar or like reference numbers may be used in the figures and may indicate similar or like functionality. The figures depict embodiments of the disclosed system (or method) for purposes of illustration only. One skilled in the art will readily recognize from the following description that alternative embodiments of the structures and methods illustrated herein may be employed without departing from the principles described herein. 
         [0026]      FIG. 1  illustrates a prior art mobile telephone  100 . The mobile telephone  100  comprises a screen  102 , a numeric keypad  104 , directional cursor buttons  110 ,  112 ,  116 ,  118 , a center (select) button  114 , a “communicate” button  106  and a cancel button  108 . 
         [0027]    The screen  102  of mobile telephone  100  illustrated in  FIG. 1  is displaying a graphical user interface (GUI) comprising a list of seven contacts  122  with which a user of the mobile telephone can set up a PTT call. Associated with each contact  122  is a check box  120 . The contacts  122  are shown on the screen  102  in response to a user opening a PTT application program on the mobile telephone  100 . 
         [0028]    The user of the mobile telephone  100  can use the up and down cursor buttons  112 ,  118  to move a highlighted box  126  up and down through the list of contacts  122 . The user can then select those contacts with which they desire to set up a PTT call by pressing the center button  114  when a desired user is highlighted. In this example the user has previously selected John, Jennifer and Dennis, as indicated by the check marks in the check box column  120 . The highlighted box  126  is currently positioned over Emily. If the user were to press the “communicate” button  106  at this time, a PTT call would be initiated with John, Jennifer and Dennis. 
         [0029]    If the user wishes to also include Emily in the PTT call, they must press the center button  114  while Emily is highlighted such that a check mark appears in the corresponding check box  120 , before pressing the “communicate” button  106  to set up the call. 
         [0030]    If the user wishes to remove a check mark  124  from a check box  120  they can press the center button  114  when the highlighted box  126  is located over the desired check box  120  and contact  122 . Pressing the center button  114  toggles the status of the contact  122  between being selected as identified by a check mark  124  in check box  120 , and being unselected as identified by the check box  120  being empty. 
         [0031]    It is known for users to inadvertently omit a contact that is highlighted when they press the “communicate” button  106 , as they have not selected that contact by pressing the center button  114  before pressing the “communicate” button. The fact that a contact can be highlighted and not selected can be perceived as ambiguous and confusing to a user. 
         [0032]      FIG. 2A  illustrates an embodiment of a GUI  200 ′ that can be displayed on a screen  102  of a mobile telephone  100  such as that illustrated in  FIG. 1 . In this embodiment, the same seven contacts  222 ′ shown in  FIG. 1  are illustrated, and the same three contacts (John, Jennifer, Dennis) have been selected by a user using the center button  114  to place a check mark  224  in the associated check boxes  220 ′. In addition, the highlighted box  226 ′ is currently positioned over Emily. 
         [0033]    In contrast to the GUI illustrated in  FIG. 1 , a check mark  228 ′ is automatically placed in the check box  220 ′ associated with the contact identified by the highlighted box  226 ′. In this embodiment, the check mark  228 ′ may be known as a “floating check mark” as it “floats” with the highlighted box  226 ′. The floating check mark is not permanently associated with a contact  222 ′ unless a user provides an input to that effect, such as the user pressing the center button  114  while the contact  222 ′ is highlighted. The floating check mark  228 ′ may be displayed differently to the other semi-permanent check marks  224 , for example it may be a different color or it may be ghosted. A check mark  224  may be considered as semi-permanent if a user has provided a positive input that the contact is required, and the check mark  224  remains associated with the contact when the contact is no longer highlighted. 
         [0034]    If the user were to press the “communicate” button  106  while the screen displayed on GUI  200 ′ was being displayed, a PTT call would be set up with John, Jennifer, Dennis and Emily. Alternatively, if the user were to press the down cursor button  112  while the screen displayed the GUI  200 ′ illustrated in  FIG. 2A  (that is, without pressing the center button  114  while Emily is highlighted), the GUI would change to that shown in  FIG. 2B . The GUI  200 ″ illustrated in  FIG. 2B  shows that the highlighted box  226 ″ has moved from Emily to Matthew and that the floating check mark  228 ″ has also moved from the check box associated with Emily to the check box associated with Matthew. If the user were to press the “communicate” button  106  while the screen is displaying the GUI  200 ″ illustrated in  FIG. 2B , a PTT call would be set up with John, Jennifer, Dennis and Matthew. 
         [0035]    In other embodiments, the “communicate” button may be considered as an “action” or “operation” button that performs a pre-defined operation on the selected contacts, such as adding the contacts to a group, deleting the contacts from a group or deleting the contacts altogether. The pre-defined operation may be any operation that is available in a PTT environment, or any other environment that is being used. 
         [0036]    If at any time, the user wishes to convert a floating check mark  228  into a permanent check mark  224 , they can press the center button  114  to select that contact  222 . Alternatively, if a user wishes to remove the floating check mark  228  associated with the highlighted contact, they can press the center button  114  a first time to select, and a second time to subsequently deselect, that contact  222 . This will cause the highlighted contact to be deselected such that pressing the “communicate” button will set up a PTT call with only those users who have been positively selected. As with the mobile phone illustrated in  FIG. 1 , pressing the center button  114  toggles the status of a highlighted contact. 
         [0037]    Advantages associated with embodiments described herein can include reducing the number of keystrokes required for a user to select one or more contacts from a list before initiating a function associated with those contacts, and removing any ambiguity as to which contacts are currently selected for a subsequent operation such as a PTT call. 
         [0038]    One or more embodiments disclosed herein can disambiguate highlighting for a local operation (such as selection) from inclusion in a global operation (such as setting up a PTT call with those contacts that have a check mark shown in a check box associated with the contact). This can be achieved by ensuring that a selection made in the local plane is also meaningful in the global plane. A selection can be made in multiple planes, for example, highlighting an item (local domain) can also provide an unambiguous indication in the global domain by associating a floating check with the highlighted item. 
         [0039]    Setting up the PTT call with John, Jennifer, Dennis and Emily using the embodiment of  FIG. 2A  requires nine keystrokes, assuming the GUI initially shows John as highlighted. The nine keystrokes are: 
         [0040]      1 —center button  114  to select John; 
         [0041]      2 —down cursor button  112 ; 
         [0042]      3 —center button  114  to select Jennifer; 
         [0043]      4 —down cursor button  112 ; 
         [0044]      5 —down cursor button  112 ; 
         [0045]      6 —center button  114  to select Dennis; 
         [0046]      7 —down cursor button  112 ; 
         [0047]      8 —down cursor button  112  to highlight Emily; and 
         [0048]      9 —communicate button  106  to set up the call. 
         [0049]    By way of comparison, setting up the same PTT call using the mobile telephone of  FIG. 1  requires ten keystrokes. An additional press of the center button  114  is required after keystroke number  8  above to select Emily before the communicate button  106  is pressed. 
         [0050]    It will be appreciated that in other embodiments, the list of items need not necessarily be a list of contacts on a mobile telephone. Any items that can be selected for a subsequent function/operation can be used with one or more of the embodiments described herein, for example selecting items to purchase from an online shop, selecting computer files to attach to an email, and selecting image files to be printed. 
         [0051]    Furthermore, any means of selecting the items, for example the cursor buttons illustrated in  FIG. 1 , a joystick, a scroll wheel, a touch sensitive screen, or any combination thereof can also be used with embodiments described herein. In addition, it will be appreciated that the features of the embodiments described herein are not limited to mobile telephones, and can equally be employed in any other data processing apparatus. The data processing apparatus may be a computing device, such as a personal computer (PC), a laptop, or a personal digital assistant (PDA) or any form of communications device. 
         [0052]    In some embodiments, the contents of the list may be dynamic and may change over time. For example, the list of available contacts for setting up a PTT call may change as contacts change their presence/status as they become online and offline. 
         [0053]      FIG. 3  shows schematically a data processing apparatus  300  such as the mobile telephone  100  illustrated in  FIG. 1 . The data processing apparatus  300  comprises memory  302 , a processor  308 , and a user interface  310 , all of which are connected to a data bus  316 . 
         [0054]    Stored in memory  302  is a list of items  304  such as a list of contacts as described in relation to  FIGS. 1 and 2 , and a floating check mark application program  306 . The floating check mark application program  306  can be run by processor  308  and is configured to operate in the same way as described in  FIG. 2 . 
         [0055]    The user interface  310  is configured to generate signals that will cause the list of items  304 , or a subset of the list of items  304 , to be displayed to a user of the data processing apparatus  300 . The user interface  310  is also configured to receive signals representative of a user&#39;s selection of one or more of the items  340  and a user&#39;s selection of an option to initiate a subsequent operation. 
         [0056]    In some embodiments the data processing apparatus  300  may also comprise a communications interface for sending data from, and/or receiving data at, the data processing apparatus  300 . In some embodiments a communications interface is not essential as all processing may be performed locally at the data processing apparatus  300 . The data processing apparatus  300  may also have a PTT application (not shown) stored in memory  302  that can use the items/contacts selected from the list of items  304  by the floating check mark application program  306 . 
         [0057]    Embodiments described herein can improve the usability of the data processing apparatus, and can provide a more efficient way of navigating and selecting items from a list/menu. The keystrokes required to select one or more items from the list may be reduced compared with prior art systems, as the final item that is to be used for the subsequent operation can be selected as a default when that item is highlighted. That is, the final item can be selected without the requirement for the user to press a key to indicate that the item is to be used for the subsequent operation. 
         [0058]      FIG. 4  is a process control flow diagram for an embodiment of a data processing apparatus. Referring first to step  402 , a list of at least one selected items is generated. The list of selected items may be generated by a user scrolling through displayed items and manually adding one or more of the displayed items to the list, or by a user selecting a predefined group of items from memory. 
         [0059]    At step  404 , a first “move cursor signal” received in response to a user input, for example by the user scrolling through the displayed items as described above. Responsive to the receipt of the first move cursor signal, a first item is identified at step  406  and added to the list of selected items at step  408 . The first item is an item that is associated with the location of the cursor as represented by the first move cursor signal. For example, a move cursor signal may represent an item, or items, that have been highlighted by the user. 
         [0060]    If a second move cursor signal is received at step  410 , a second item is identified at step  412  and added to the list of selected items at step  414 . The second item is an item associated with the new location of the cursor as represented by the second move cursor signal. Also, the first item is removed from the list of selected items at step  416 , and this may comprise determining if the first item has not been positively selected by the user. The second item can replace the first item in the list of selected items if it is not selected by a user. The first and second items may be considered as automatically being provisionally selected when they are identified in response to receipt of a move cursor signal. 
         [0061]    An operation signal is received at step  418  and the operation is performed at step  420 . The operation signal may be received after the processing performed responsive to receipt of the first move cursor signal (after step  408 ) or the second move cursor signal (after step  416 ). 
         [0062]    In other embodiments, any number of move cursor signals may be received before an operation signal is received at step  418 . Steps  410  to  416  may be repeated for a third, fourth and any subsequent move cursor signals. In addition any number of selection and/or deselection signals may be received before an operation signal is received at step  418  as described in more detail in relation to  FIG. 5 . 
         [0063]      FIG. 5  is a process flow control diagram for an embodiment of a data processing apparatus. At step  502  there is a group of selected items labeled “X”. The group X may initially comprise no items, or may have already been populated by one or more items, such as by a user selecting items from a list that are to be added to group X. 
         [0064]    At step  504 , responsive to user input, a cursor is moved to an item labeled “Y” in a list of items and a move cursor signal is received. Moving the cursor to item Y, causes that item to be highlighted on a display of the data processing apparatus. Item Y may, or may not, already be present in group X. 
         [0065]    At step  506  the process flow determines whether or not an “operation signal” has been received. The operation signal is indicative of a user&#39;s input to request that an operation is performed on one or more of the items. For example, the operation signal may be generated when a user presses a “communicate” button to set up a PTT call with one or more contacts/items. 
         [0066]    If the user decides to initiate the operation before providing an input to select or deselect item Y then the operation is performed at step  508  on all of the items in group X as well as the highlighted item: item Y. If the user does not initiate an operation at step  506 , the process flow moves on to determine if they have provided an input indicative of selecting or deselecting an item or they have moved the cursor to highlight a different item. 
         [0067]    If the process flow determines at step  506  that an operation signal has not been received, the process flow moves on to step  510  to determine whether or not a “selection signal” has been received indicative of a user&#39;s input to select the item Y. If a selection signal has been received, the process flow moves on to step  512  where item Y is added to group X. The process flow then moves on to step  518  to check if an operation signal has been received, and if it has been received the operation is performed on group X at step  520 . If an operation signal has not been received at step  518 , the process flow returns to step  502 . 
         [0068]    If a selection signal has not been received at step  510 , the process flow moves on to step  514  to determine if a “deselection signal” has been received. If a deselection signal has been received at step  514 , then item Y is removed from the group X at step  516  (if item Y is not part of group X then no action is performed at step  516 ), and the process flow moves on to step  518  to determine whether or not an operation signal has been received. If an operation signal has been received, then the operation is performed on group X, and if not the process flow returns to step  502 . If it is determined that a deselection signal has not been received at step  514 , the process flow returns to step  502 . It will be appreciated that the items on which the operation is performed depends upon whether or not an item that is highlighted has been selected or deselected by a user. If the user has not selected or deselected a highlighted item when an operation is initiated (an operation signal is received), the operation is also performed on that highlighted item. 
         [0069]    One or more embodiments described herein may provide a reduction in the number of keystrokes required for a user to select one or more items of data from a list before initiating an operation associated with those data items, and/or may reduce ambiguity as to which data items are selected for a subsequent operation. This may be achieved by associating a “floating check mark” with a data item when it is highlighted such that a user can unambiguously and easily determine whether or not that data item is currently selected for the subsequent operation. 
         [0070]    Highlighting for a local operation (such as moving a cursor over data items for adding data items to a list of selected items) may be disambiguated from the selection of data items for a global operation (the subsequent operation on the data items that have been added to list of selected data items). 
         [0071]    Insofar as embodiments described herein are implementable, at least in part, using a software-controlled programmable processing device such as a general purpose processor or special-purposes processor, digital signal processor, microprocessor, or other processing device, data processing apparatus or computer system it will be appreciated that a computer program for configuring a programmable device, apparatus or system to implement the foregoing described methods, apparatus and system is envisaged as an aspect of the present invention. The computer program may be embodied as any suitable type of code, such as source code, object code, compiled code, interpreted code, executable code, static code, dynamic code, and the like. The instructions may be implemented using any suitable high-level, low-level, object-oriented, visual, compiled and/or interpreted programming language, such as C, C++, Java, BASIC, Perl, Matlab, Pascal, Visual BASIC, JAVA, ActiveX, assembly language, machine code, and so forth. A skilled person would readily understand that term “computer” in its most general sense encompasses programmable devices such as referred to above, and data processing apparatus and computer systems. 
         [0072]    Suitably, the computer program is stored on a carrier medium in machine readable form, for example the carrier medium may comprise memory, removable or non-removable media, erasable or non-erasable media, writeable or re-writeable media, digital or analog media, hard disk, floppy disk, Compact Disk Read Only Memory (CD-ROM), Company Disk Recordable (CD-R), Compact Disk Rewriteable (CD-RW), optical disk, magnetic media, magneto-optical media, removable memory cards or disks, various types of Digital Versatile Disk (DVD) subscriber identify module, tape, cassette solid-state memory. The computer program may be supplied from a remote source embodied in the communications medium such as an electronic signal, radio frequency carrier wave or optical carrier waves. Such carrier media are also envisaged as aspects of the present invention. 
         [0073]    It will be appreciated that any of the application programs, or any other logical module, may be made up of more than one functional unit that may be distributed across more than one server/computer. The one or more server computers may or may not be in the same physical location. 
         [0074]    As used herein any reference to “one embodiment” or “an embodiment” means that a particular element, feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment. The appearances of the phrase “in one embodiment” in various places in the specification are not necessarily all referring to the same embodiment. 
         [0075]    Some embodiments may be described using the expression “coupled” and “connected” along with their derivatives. It should be understood that these terms are not intended as synonyms for each other. For example, some embodiments may be described using the term “connected” to indicate that two or more elements are in direct physical or electrical contact with each other. In another example, some embodiments may be described using the term “coupled” to indicate that two or more elements are in direct physical or electrical contact. The term “coupled,” however, may also mean that two or more elements are not in direct contact with each other, but yet still co-operate or interact with each other. The embodiments are not limited in this context. 
         [0076]    As used herein, the terms “comprises,” “comprising,” “includes,” “including,” “has,” “having” or any other variation thereof, are intended to cover a non-exclusive inclusion. For example, a process, method, article, or apparatus that comprises a list of elements is not necessarily limited to only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Further, unless expressly stated to the contrary, “or” refers to an inclusive or and not to an exclusive or. For example, a condition A or B is satisfied by any one of the following: A is true (or present) and B is false (or not present), A is false (or not present) and B is true (or present), and both A and B are true (or present). 
         [0077]    In addition, use of the “a” or “an” are employed to describe elements and components of the invention. This is done merely for convenience and to give a general sense of the invention. This description should be read to include one or at least one and the singular also includes the plural unless it is obvious that it is meant otherwise. 
         [0078]    Upon reading this disclosure, those of skill in the art will appreciate still additional alternative structural and functional designs for a system and a process for data processing system and process that include configuration, identification and determination through the disclosed principles herein. Thus, while particular embodiments and applications have been illustrated and described, it is to be understood that the present invention is not limited to the precise construction and components disclosed herein and that various modifications, changes and variations which will be apparent to those skilled in the art may be made in the arrangement, operation and details of the method and apparatus of the present invention disclosed herein without departing from the spirit and scope of the invention as defined in the appended claims.