referring to fig1 at the physical or bearer level the telecommunications environment of a user u 1 in a particular locality comprises a cellular telephone , or a personal digital assistant , t 1 which may include a global positioning system receiver and which is carried by the user ; a facsimile apparatus t 2 and conventional telephone t 3 ; and a computer workstation t 4 . the various terminals t 1 - t 4 are each capable of receiving different signal formats , as follows : t 4 — high bit rate data in various formats or any of the above . in communication with the various terminals are a number of different communications channels forming parts of different notional networks ( although some or all may be commonly owned ). a public land mobile network ( plmn ) ( e . g . a gsm — compatible digital cellular network ) n 1 is connected via a base station b 1 of the plmn and a radio interface to terminal t 1 . the base station b 1 provides a cell in the environment of the area within which the user u 1 is located . a public switched telephone network ( pstn ) n 2 is connected via a local line to terminal t 3 , and via a local line to terminal t 4 . a local area network ( lan ) n 3 , including a lan server is connected via a data link to terminal t 3 . further terminals ( not shown ) at different distances from the user are also connected in the lan . the user u 1 carries an identifying device interacting with a location update device via which his position within the telecommunications environment may be tracked . for example , in this embodiment the identifying device comprises a chip carrying card or “ smart card ” carrying data identifying the user , and some or all of the terminals t 1 - t 4 carrying a location update device in the form of a card reader arranged to read the card . alternatively , it could comprise a ‘ smart badge ’ transponder , the location of which is tracked automatically . specifically , the terminals t 1 - t 4 may carry such smart card readers to signal tracking information via the networks to which they are connected . additional smart card readers are installed at access points to a building or area , and are connected , for example to the lan n 3 , to signal a user &# 39 ; s location . further , preferably , the terminal t 1 comprises , in addition to cellphone communicating components , a location update device in the form of a global positioning system ( gps ) receiver and is arranged to derive and signal its position , speed and direction from a gps satellite s 1 periodically as disclosed in ep 0467651 ( motorola ). alternatively , the cellphone t 1 could perform positioning additionally using a land - based positioning signal , such as by differential gps positioning , or purely using land - based positioning signals , such as differential gsm triangulation signals as described in wo 96 / 35306 ( telecom securicor ). the terminal t 1 signals the user &# 39 ; s location , speed and direction via plmn n 1 . thus , the position of the user u 1 is signalled by one or more of several means ; firstly , it may be signalled from the terminal at which he has logged in , for example by password and / or by the insertion of his smart card ; secondly , his geographical position may be signalled from a positioning signal receiver ; and thirdly , his position within a building or area may be signalled from the access system . his speed and direction may also be signalled from the positioning signal receiver . alternatively , the user can communicate his location by calling using t 1 or t 2 , in which case he may be identified by calling line identity ( cli ). each of the networks n 1 - n 3 is connected , via gateways g 1 - g 3 respectively , to a wide area network ( wan ), such as the internet , consisting of packet switches ps interconnected by high speed data links , such as asynchronous transfer mode ( atm ) links . the wan provides connections , via the packet switches ps , to distributed information servers , such as web servers ws , containing multi - media information sources , such as web pages . the wan also provides access to distributed processing environment ( dpe ) servers ds , which are connected to and distributed between the packet switches ps of the wan . the dpe servers ds provide a distributed processing environment ( dpe ) which supports the interaction of software objects . the communication between the objects may be handled by object request brokers ( orbs ), such as provided by the object management group &# 39 ; s common object request broker architecture ( corba ). furthermore , the dpe servers ds provide for persistent storage of the software objects held therein . this may be provided for example by objectstore &# 39 ; s pse ( persistent storage engine ) pro ( trademark ). each of the dpe servers ds stores intelligent software agents , as discussed in further detail below . for the reasons described in the above referenced prior art , it is advantageous to employ a so called “ agent based ” control mechanism . the term “ agent ” has in the past been used with a number of different senses ; here , except where the context makes it clear that this is unnecessarily limiting , it will be understood to mean an independently executing control program under control of which a computer or computer controlled switching centre performs the functions attributed to the “ agent ”. the term is not necessarily limited to control programs which monitor their environment and adapt their behaviour and response thereto , but encompasses such programs . each agent makes use of data , and it is convenient that the agents should therefore operate in “ object - oriented ” fashion ; that is to say , that the data should be “ encapsulated ” so as to be accessible and alterable only by associated control programs , acting in response to “ messages ” ( which need not , however , be physically transmitted but could simply be data passed via the stack of a single computer ). the agents are embodied by a mobile agent software system , such as ibm &# 39 ; s “ aglets ” ( trademark ) system , objectspace &# 39 ; s “ voyager ” ( trademark ) system or suchlike . a discussion of mobile agents may also be found in “ mobile agents ”, lecture notes in computer science , rothermal k . popescu - zeletin eds ., first int . workshop , ma &# 39 ; 97 , berlin , april 1997 . being mobile , the agents are able to access information either remotely , via the data links described , or locally , by moving themselves to the location of the information . it will , however , be understood that the use of mobile agents and the object oriented format is inessential to the invention . referring to fig2 the software architecture of the system includes a location updater object class 2 , a terminal agent object class 4 , a personal agent object class 6 , an information agent object class 8 and a location index object class 10 . each user in the system has a personal agent operating in the system on its behalf . each information source in the system has at least one information agent operating in the system on its behalf . each location update device in the system has a location updater object operating in the system on its behalf and to which its location updating signals are transmitted . each terminal in the system has a terminal agent operating in the system on its behalf through which the terminal interacts with the distributed processing environment . finally , a location indexing network has location index objects operating on its behalf . each agent and each of the location index objects includes a software code which is stored in the system . the relative locations of the agents within the system is not critical , since the agents are accessible by means of the networks n 1 - n 3 . however , in an advantageous arrangement , at least some of the terminal agents 4 may be located on the respective terminals they represent and the location updaters may be held on a dpe server ds at the point of receipt of the location updating information sent via one of the networks n 1 - n 3 . the personal agents 6 and information agents 8 may be located on dpe servers holding the respective nodes of the location index with which they are interacting , as will be described in further detail below . each personal agent has data storage attributes for storing the following data : 1 . its user &# 39 ; s preference data , including preferred categories of data to be accessed , age , gender , state of health , friends , interests , language preferences , information format type preferences , dynamic update preferences , location - based preferences , time / date - based preferences , cost limits on information retrieval , wildcard key words , etc . 2 . an item details list detailing information sources , terminals offering service and users present in the current locality of the user . 3 . a shortlist of selected item details already presented to the user . 5 . the identity of the terminal currently being used by the user . 7 . the speed and direction in which the user is currently travelling . 9 . a selection algorithm for filtering information by reference to the user &# 39 ; s preference data . the personal agent 6 interfaces with each of the location index , information agents 8 , terminal agents 4 and location updater 2 as will be described below . the information agent has data storage attributes for storing an item details object for the information source , to be described further below . the terminal agent 4 has attributes for containing the following data : 2 . the system address of the personal agent of the current terminal user . 3 . a shortlist of item details sent to the terminal by the current personal agent . 4 . the system address of the currently selected information source , if any . 5 . an item details object for the terminal , to be described in further detail below . 7 . a list of file format translations which the terminal agent supports . the location updater 2 has data storage attributes for containing the following data : 1 . the current location , and speed and direction if appropriate , of the corresponding location update device , such as the gps receiver . 2 . the identities of users , and the system addresses of their personal agents , being serviced by the location updater ( multiple users if the location update device is fixed , single user if the location update device is mobile ). each location index object derived from the location index object class 10 forms a node of an indexing network , interconnected with related nodes of the indexing network . each node of the index has a locality index for storing item details objects to be indexed on a locality basis , and a name index for storing item details objects and pointers to item details objects to be indexed by the name of the agent concerned . in addition , each node is provided with the following set and stored attributes : 1 . a locality of responsibility ( lor ), specified in the form of cartesian coordinates for its centre and parameters defining its size and shape . 2 . a predefined level within the indexing network . the indexing network includes a root node at level 1 , responsible for a large locality , and subnodes at levels 2 and above , responsible for localities which form sub - localities of that of the root node , and that of nodes above their level in the indexing network . it is to be noted that , herein , “ higher ” level nodes have numerical designations which are smaller than that of “ lower ” level nodes . 3 . references to nodes to which the node is related in the network , including one or more of parent nodes , children nodes , sibling nodes , uncle nodes , nephew nodes and cousin nodes . location index objects having different , and in particular spaced , localities of responsibility are stored on different of the dpe servers ds to allow very large scale scalability , by having a large number of dpe servers each handling a fraction of the data storage and retrieval operations of the system . in order to create , or alter , an indexing network , new nodes are created at a particular level , and their attributes are set in accordance with data specified by a party responsible for the indexing network itself , as illustrated in fig3 . as a first step , the new nodes are instantiated , step 100 . the new nodes are then defined within the indexing network by setting their locality of responsibility ( lor ), step 102 , setting their level within the network , step 104 , and setting the relationships of the new node and setting references to the new node in the previously existing nodes in accordance with their relationship within the network , step 106 . the relationships are set by a new node querying its parent for the various adjacent relations which include contenders for relations of the new node . the lors of the nodes returned by the parent are analysed by the new node in order to decide whether to connect to them , in which case the new node stores the adjacent node in its relations database . it also informs the related node of its presence in order to establish reciprocal connections . an indexing node network is constructed by functionality provided in the location index object class by use of the following rules set : 1 . if no tree currently exists , create a root node at level 1 , by instantiating an instance of the location index object class . 2 . if a node has a lor which is itself insufficiently small for certain location - specific information , or if the node has a current processing load which exceeds a set threshold , create one or more nodes which are responsible for sub - localities of the locality for which that particular node , referred to herein as the splitting node , is responsible . if a plurality of new nodes which are adjacent are created , interconnect the new nodes via a sibling relationship , with the splitting node as their parent . set each new node within the indexing network to the level of their parent , plus 1 . 3 . if the splitting node has siblings or cousins , compare each new child node with the splitting node &# 39 ; s siblings and cousins . if the localities of responsibility by the two nodes being compared are adjacent , create an uncle / nephew link between them . set the depth of the relationship , being the comparative levels of the nodes , to 1 . 4 . if the splitting node has one or more uncles , compare each new child node with each of the splitting node &# 39 ; s uncles . if the localities of responsibility covered by the two nodes being compared are adjacent , create an uncle / nephew link between them . set the depth of the link equal to the depth of the matching uncle relationship , plus 1 . these related nodes are referred to herein as great - uncles . 5 . if the splitting node has one or more nephews with depths n where n & gt ; 1 , being a great - uncle / nephew relationship , compare the locality of responsibility set for each new child node with that of the splitting node &# 39 ; s nephews . if the two nodes are adjacent , set an uncle / nephew link between them with a depth of n − 1 . 6 . if the splitting node has one or more nephews with depth 1 , compare the locality of responsibility of each new child node with that of each of the splitting node &# 39 ; s nephews . if the areas covered by the two nodes are adjacent , create a cousin link between them . the operation of these rules is illustrated with reference to fig4 to 6 . referring to fig4 a , which illustrates an indexing network at an early stage in creation , the indexing network includes a root node 110 which has a locality of responsibility corresponding to the entire geographical coverage of the indexing network , illustrated in fig4 b as outer rectangle 112 . the network level of the root node 110 is 1 . the root node 110 only has children relationships . the child no des 114 each have a locality of responsibility which forms a subset of the locality of responsibility of the root node 110 , illustrated by inner rectangles 116 a , 116 b , 116 c , 116 d in fig4 b . the child nodes are created using rule 2 described above applied to the root node 110 . referring to fig5 a , one of the child nodes 114 d may be split to provide further child nodes 118 a - d , which are grandchildren of the root node 110 . the new child nodes 118 a - d have localities of responsibility which form sub - localities 120 a - d of the locality of responsibility 116 d of their immediate parent node 114 d , and consequently also form sub - localities of the locality of responsibility 112 of the higher level node 110 . the relationships of the new nodes 118 a - d are set by defining sibling relationships between each of the new nodes 118 a - d , parent / child relationships with the parent node 114 d , and , where the localities of responsibility 120 a - d of the new nodes 118 a - d are adjacent to the localities of responsibility of higher nodes in the network , uncle / nephew relations are set by references to those higher level nodes 114 a - c . these uncle / nephew relationships are set in accordance with rule 3 above . referring to fig6 a and 6b , a node 114 c adjacent to the previously split node 114 d may also be split to produce four new children nodes 118 e - h . these new children nodes have localities of responsibility which are set to be sub - localities of the locality of responsibility 116 c of their immediate parent node 114 c . their level in the network is set at 3 , in accordance with rule 2 above . their relationships within the indexing network include parent / child relationships with the parent node 114 c , uncle / nephew relationships with nodes 114 a , b d at the same level as their parent node 114 c and sibling relationships between each of the new nodes 118 e - h . in addition , the new nodes 118 e - h which have localities of responsibility 120 e , 120 f , 120 g , 120 h which adjoin the localities of responsibility of the previously created nodes 118 a , c at the same level are defined to have cousin relationships with those previously created nodes , in accordance with rule 6 above . in each of fig4 a , 5 a and 6 a , parent / child relationships are illustrated with bold , solid , arrowed lines . sibling relationships are illustrated with solid , arrowed lines . uncle / nephew relationships are illustrated with closely spaced dashed , arrowed lines . cousin relationships are illustrated with spaced dashed , arrowed lines . fig4 to 6 illustrate the principle of construction , and the division of the localities of responsibility of an indexing network , by means of nodes at a plurality of levels below the root node level . as the network is increased further in depth , the localities of responsibility for nodes defined at each next lower level becoming progressively smaller , such that the indexed information , to be described below , at each node becomes increasingly location - specific . this structure allows agents interacting with the indexing network to index information at a certain level of location specificity , and to obtain information at a certain level of location specificity , to thereby provide a level of detail appropriate to the information storage act or information retrieval act being performed . it is to be understood that the rectangular localities of responsibility illustrated in fig4 b , 5 b and 6 b are examples only . the localities may be defined as other two dimensional shapes , and may also be defined as three dimensional volumes . the node splitting procedures may also have different , or variable , cardinalities . fig7 is a flow chart illustrating the functionality provided at each node , by the location index object class , for allowing information agents to index location - specific data in the nodal network . each information source has a node in the indexing network with which the information agent is set to interact , referred to herein as a gateway node . in order to index an information source for which the information agent is acting , the information agent transmits an advertise - in - locality request to its gateway node , passing across its item details object with the advertise request . 1 . the gateway node at which the information agent is currently set to communicate with the indexing network . 3 . data specifying a locality of pertinence ( lop ) of the information held on the information source for which the information agent is acting . the locality is specified in the form of cartesian coordinates and parameters defining its size and shape . 4 . meta - information concerning the information stored in the information source , including a list of the files contained in the information source , format identifiers ( for example multipurpose internet multimedia extension ( mime ) records ), the sizes of the files , the language ( for example english ) of a text file , encoding identifiers , a best before date and a priority indication indicating the relative importance of the respective files in the information source . 5 . the system address of the information source . in the case of an information source in the form of a web page , this consists of a uniform resource locator ( url ). when an advertise - in - locality request is received , by a node , step 200 , the node applies a heuristic function method to the lop in the passed item details object , to determine whether the lop intersects with its locality of responsibility of the node , step 202 . if there is no intersection , the node passes the request , along with the item details object , to its parent node , step 204 . if the lop and the lor are found to intersect , the node proceeds to apply a further heuristic function to determine whether the lop of the information source and the lor of the node are similar in size , step 206 . here , “ similar in size ” includes a range of similarity in size , which is dependent primarily on the interval in size between the lors of nodes at different levels in the indexing network . for example the similarity function may be arranged such that the size of the lop may range from midway between the size of the node &# 39 ; s lor and the size of the lor of the parent node down to midway between the size of the node &# 39 ; s lor and the size of the lor of the child node of the node in question in order for the lop and lor to be considered similar in size . thus , where child nodes are formed by quartering in an indexing network , the range in size for which the information source &# 39 ; s lop is considered to be similar in size to that of the node &# 39 ; s lor could range from of the order of twice the size of the lor down to of the order of half of the size of the lor . if the lop is found not to be similar in size in accordance with the similarity function applied , it is determined whether the lor is significantly larger , step 208 . if so , the advertise request , along with the item details object , is passed to each of the node &# 39 ; s children which have an lor intersecting with the lop of the request , step 210 . if no children currently exist for the node , the items details are indexed at the current node , to be passed down if the node subsequently divides . otherwise , the request is passed to the parent of the node , step 212 . as the parent node has a locality of responsibility which includes that of the upwardly passing node , the parent node , or other parent nodes higher up in the indexing network will be able to accept the advertise - in - locality request . if in step 206 the locality of pertinence and the locality of relevance are found to be similar in size by the node receiving the advertise request , the node places the item details object in its locality index , to be stored for future retrieval by personal agents interacting with the indexing network , step 214 . the item details object for an information source contains an attribute which specifies a propagation characteristic of the information . namely , this propagation attribute specifies whether the advertise request is to be propagated to a level below the level at which the lop and lor are similar in size , and if so , the number of levels to which the item details are to be propagated . thus , the item details are provided with one of the following possible propagation categories : 1 . propagate fully . the item details are passed down to be indexed at child nodes at every level in the network below the node at which the lop and lor are similar in size . 2 . bounded - propagate . the item details are passed down to be indexed at child nodes at every level until a more location - specific information source relating to the same subject - matter is indexed . 3 . normal . such item details are not propagated down the indexing network . to give an example , information such as health and safety notices for a building may be defined with a locality of pertinence corresponding with the whole area of the building , and a bounded - propagate property , such that the item details for the information source will be passed down the indexing network until a node covering a more specific locality , such as for example a laboratory room , at which more specific health and safety instructions are required . as a further example , notices regarding the opening times of a building may be defined to have a locality of pertinence corresponding with that of the building , and with a propagate fully property , so that such a notice is passed down to all nodes having localities of responsibility within the building . on the other hand , high level information , such as the location of the building in the context of a larger site , may be defined with a locality of pertinence equal to that of the building , and a normal category , so that the information is only accessible at nodes having localities of responsibility which are relatively large . thus , the item details are propagated down the indexing network in accordance with the specified propagation characteristics , steps 216 and 218 . next , in step 220 , the node initially in receipt of the advertise request checks the localities of responsibility of its related nodes which have adjacent localities of responsibility , in order to determine whether the lop specified in the item details object intersects with the lor or these adjacent nodes . if so , the node passes the advertise request to the adjacent nodes having intersecting lors , step 222 . these adjacent nodes then proceed to step 206 in the procedure illustrated in fig7 . by repeating the procedure illustrated in fig7 for each information agent , the indexing network nodes are populated with item details objects at the appropriate locational specificity . once the locality indexes of the indexing network is populated with item details objects , the corresponding information sources may be accessed by personal agents in a location - specific manner in accordance with the procedure illustrated in fig8 . in order to access the indexing network , a personal agent transmits a what - is - here ? request to a gateway node in the indexing network with which the personal agent is set to interact , passing across data defining a locality of interest ( loi ) of the user for which the personal agent is acting . this locality is specified in the form of cartesian coordinates and parameters defining its size and shape . the loi of the user may be obtained in two ways . first , the user may specify a locality of interest via the terminal which the user is currently using , which is then passed on to the user &# 39 ; s personal agent . this locality of interest is not necessarily related to the current location of the user . secondly , an loi may be derived from the tracking information received from a location updater device , via the corresponding location updater object , which provides the current location , speed and direction of travel of the user . the loi may be derived from each of these parameters . in the case of a stationary user , the loi is defined by default to be centred at the current location of the user , and to have a size equal to the locality of responsibility of the lowest level node in the indexing network which covers the current location of the user , thereby to ensure access to the most location - specific information . the stationary user may however request , via their current terminal , a locality of interest which is larger than this default loi . the loi of the stationary user is defined by default to have a circular outline . in the case of a travelling user , the speed and direction characteristics signalled by the user &# 39 ; s location updater device is used to define the user &# 39 ; s loi differently . namely , the loi is centred at a point offset from the current location of the user in the direction of travel of the user , the distance increasing with the speed of travel of the user . the size of the locality of interest of the user is also increased , to increase the level of generality of the information derived from the indexing network . finally , the shape of the loi is altered to extend the loi to a greater extent in the direction of travel of the user then in a direction normal to the direction of travel . the setting of the loi of the user is carried out by the user &# 39 ; s personal agent , which is continually updated with the user &# 39 ; s current location , speed and direction of travel . in the case of a mobile location updater , such as the positioning signal receiver described above , a location update message is transmitted to the personal agent when the user carrying the location updater device moves a predefined threshold distance since a previous location update . the personal agent proceeds to generate a what - is - here ? request when the location of the user has altered a significant degree in relation to the size of the user &# 39 ; s current loi . referring again to fig8 on receipt of the what - is - here ? request ( step 300 ), the receiving node applies an intersection function method to the loi passed in the request , to determine whether the loi intersects with the lor of the node , step 302 . if there is no intersection , the receiving node passes the request , along with the loi of the request , to its parent node , step 304 . alternatively , if there is no intersection the node may compare the loi with the lor of any related adjacent nodes , passing the request to the best locality match , or passing the request to the parent if no good match is found . if the lor and the loi are found to intersect , the node proceeds to apply a similarity function , such as that described in relation to fig7 to determine whether the loi of the user and the lor of the node are similar in size , step 306 . if the loi is found not to be similar in size in accordance with the similarity function applied , it is determined whether the lor is significantly larger , step 308 . if so , the what - is - here ? request , along with the specified loi , is passed to each of the node &# 39 ; s children which have an lor intersecting with the loi of the request , step 310 . otherwise , the loi is significantly larger in size than the lor , and the request is passed to the parent of the node , step 312 . as the parent node has a locality of responsibility which includes that of the upwardly passing node , the parent node , or other parent nodes higher up in the indexing network will be able to accept the what - is - here ? request . if the loi of the user and the lor of the node subject to the request are similar in size , the receiving node further determines whether the user &# 39 ; s loi intersects with the lors of its related nodes which exist at the same level in the indexing network , being either sibling nodes or cousin nodes , step 314 . if the loi also intersects with the lors of any adjacent nodes of equal level , the receiving node transmits a what - is - here ? request to each of the found adjacent nodes , step 316 . these selected nodes return an item details list consisting of the item details objects stored in their locality indexes , step 318 . the receiving node then proceeds to construct a full item details list which includes the item details objects from adjacent nodes having lors which intersect with the loi specified in the original request , and the item details objects held in its own locality index , step 320 . if the node finds no adjacent nodes with lors which intersect with the loi of the user , the item details list to be transmitted consists of item details objects held solely in the receiving node &# 39 ; s locality index . finally , the item details list is passed to the requesting personal agent , step 322 . on receipt of an item details list , the personal agent performs its selection algorithm , using the user &# 39 ; s preference data , in order to filter out information objects representing information sources which are considered to be of low potential interest to the user , and to produce a shortlist of the remaining information objects which are transmitted to the terminal agents of the terminal currently serving the user , for the presentation of summary information to the user at their terminal . on reviewing the summary information , the user is able to select information sources which are of interest , and access information held in the information sources , by means of the system address for the information source specified in the corresponding information object now held in the terminal agent . information agents may be configured to act on behalf of terminals accessible within the geographical area covered by the indexing network . in this manner , a personal agent acting on behalf of the user may locate terminals , using a what - is - here ? request , to identify terminals accessible in the immediate locality of the user . furthermore , the information stored in the corresponding item details object representing the terminal may specify the formats of data and transmission protocols accepted by the terminal , thereby allowing the personal agent to select a terminal appropriate for a particular type or format of information to be received by the user . in addition to information agents and terminal agents , personal agents may also advertise within the indexing network . in order to do this , each personal agent is provided with an item details object to pass over to the indexing network for indexing at an appropriate level . the item details object for the personal agent include the following data storage attributes : 1 . the gateway node at which the personal agent is currently set to communicate with the indexing network . 4 . a locality of pertinence ( lop ) for the user . this may be derived either from the locality of interest ( loi ) currently set for the user , which is dependent on the current location , speed and direction of travel of the user , and / or may include a “ home ” locality of pertinence for the user . the locality is specified in the form of cartesian coordinates and parameters defining its size and shape . 7 . a system address for an information source associated with the user , for example the url of a personal web page . in order to index its information details object by locality , the personal agent transmits an advertise - in - locality request containing the item details object to the personal agent is gateway node , which then proceeds with the steps described in relation to fig7 in order to index the user &# 39 ; s personal item details object within the indexing network . the indexing network is provided with a name index , consisting of individual databases distributed between the nodes of the network . in order to feature in the name index , an agent transmits an advertise - by - name request to its gateway node . fig9 illustrates the procedure followed by a gateway node in receipt of an advertise - by - name request from an agent previously not indexed in the system . along with the request , the agent passes its current item details object to the node . on receipt , step 400 , the gateway node stores the passed item details object , in its name index , step 402 . a request to add a pointer , associated with a unique name for the agent , is passed to the parent node , step 404 . the parent node adds this pointer to its name index , and then passes a similar request to its parent node , which repeats the same until the root node is reached . thus , when an agent is advertised - by - name within the indexing network , a reference to the gateway node will be present at a directly related node at each level in the indexing network above the gateway node , at which the agent &# 39 ; s item details object is held . in order to find an agent , the procedure illustrated in fig1 is followed by a node requested to find the agent by name , step 500 . the request need only contain the unique name of the agent . if a reference to the agent identified by the unique name in the find - by - name request is not present in the name index of the node receiving the request , step 502 , it passes the request directly to its parent , step 504 , which proceeds from step 500 . once a node in receipt of a find - by - name request does have a reference to the identified agent in its name index , unless the node is the gateway node , step 506 , it passes the request to the node immediately below it identified by the pointer held in its name index , step 508 . once the request reaches the gateway node , it returns the system address of the agent to the original requesting party , step 510 . fig1 illustrates the way in which the name index feature operates . in the example shown , a first agent , ag 1 is set with a gateway node at level 2 , node 114 a . second , third and fourth agents , ag 2 , ag 3 and ag 4 are set with gateway nodes at level 3 , nodes 118 d , 118 a and 118 e , respectively . fig1 illustrates each of agents ag 1 , ag 3 and ag 4 attempting to find a reference to agent ag 2 in the network . agent ag 3 is set with a gateway node which is a sibling node of the gateway node which agent ag 2 is set to , and the find - by - name request transmitted by agent ag 3 to its gateway node is propagated only to its parent node , at which a pointer to agent ag 2 will be found in the name index of the node . the find - by - name request transmitted by agent ag 1 will be passed from its gateway node , node 114 a , to the root node 110 , at which point a pointer to the item details object of agent 2 is present in a name index . a find - by - name request transmitted by agent ag 4 to its gateway node , node 118 e , will be passed on by that node , and the parent node 114 a , in turn , which each do not have references to agent ag 2 within their name indexes . the find - by - name request is then passed down from the root node 110 in accordance with the pointers stored in the name indexes of the handling nodes , until it reaches the gateway node of agent ag 2 , which returns the system address of agent ag 2 to agent ag 4 . thus , each of the categories of agent which interact directly with the indexing network , being the information agent , the personal agent and the terminal agent , are set to communicate with a particular gateway node of the indexing network . as the indexing network consists of a distributed network which extends over a plurality of distributed computing nodes , such as the dpe servers ds described in relation to fig1 and since the agents in question may be mobile , a procedure is defined whereby an agent may move and alter the gateway node with which the agent is set to communicate . the gateway node moving procedure may be initiated either by the agent itself or by a node of the indexing network . for example , if an agent detects that response delays in communications with the currently set gateway node have become excessive , the agent may initiate a move to a node having a locality of responsibility which is closer to , or intersecting with , the locality of pertinence or locality of interest of the agent . alternatively , if a particular node of the indexing network detects overloading , it may instruct certain of the agents currently communicating with the node as a gateway node to move to an adjacent node . fig1 illustrates the steps carried out by the gateway node of an agent on receipt of a move - node request from the agent , step 600 . the gateway node first determines whether the loi or lor of the requesting agent intersects with the lor of an adjacent node , step 602 . if no such intersection exists , the gateway node passes the request to its parent node , step 604 . otherwise , the gateway node passes the move - node request to the most appropriate adjacent node having an lor which intersects with the lop or loi of the requesting agent ( step 606 ). referring to fig1 , when a particular node receives a move - node request for an agent from another node , step 700 , the receiving node first determines whether the agent specified in the move - node request is advertising within the indexing network by name , step 702 . this information will be found in the item details object passed with the move - node request , which item details object contains a flag indicating whether or not the agent is advertising - by - name . if the agent is advertising - by - name , it is necessary to ensure the consistency of the name indexes when an agent is moving . accordingly , the receiving node places the item details object within its own name index , step 704 . the receiving node must also initiate a process whereby the name indexes of other nodes are updated , step 706 . the receiving node follows the following rules when updating the name indexes of other nodes : 1 . if the move - node request is received from a parent node , no updating is required . 2 . if the move - node request is received from a child node , the receiving node transmits a remove - by - name request to the sending node , which results in the deletion of the corresponding item details object from the sending node &# 39 ; s name index . 3 . if the move - node request is received from a sibling node , the receiving node transmits a remove - by - name request to the sending node , and transmits a request to its parent to update the pointer in its name index . 4 . if the move - node request is received from a cousin node , the receiving node transmits a remove - by - name request to the sending node , and transmits a request to its parent node to add a pointer in its name index and to propagate the request upwards until a previous entry for the agent is found , and thence to propagate a request downwards to remove all previous pointers which are now incorrect . 5 . if the move - node request is received from an uncle node , the receiving node transmits a remove - by - name request to the sending node . the receiving node also transmits an advertise - by - name request its parent nodes including a request to add and update name index pointers which is propagated up to and including n + 1 nodes above the receiving node &# 39 ; s location , where n is the depth of the uncle minus the depth of the receiving node . 6 . if the move - node request is received from a nephew node , a request is sent to the node &# 39 ; s parent to update the pointer in the parent node &# 39 ; s name index . a remove - by - name request is transmitted to the sending node , including a request for the removal of pointers from the name indexes of the sending node &# 39 ; s parents to a level of n above the sending node where n is the depth of the nephew node minus the depth of the receiving node . once the name indexes of the other nodes in the network are updated , the receiving node applies the intersection function to determine whether the locality passed in the request intersects with the lor of the receiving node , step 708 . this is not necessarily the case , if the request was received from a child node . if no intersection is present , the move - node request is passed on to a more appropriate node , which is determined as per step 602 described in relation to fig1 , step 710 . if an intersection is found to occur , the receiving node applies a size similarity function to determine whether the locality passed in the move - node request is similar in size to its own lor , step 712 . if not , the node determines whether its lor is significantly larger than the passed locality , step 714 , and if so it passes the move - node request to a child node with an intersecting lor , step 716 . otherwise , the move - node request is passed upwards to the parent node , step 718 . finally , if the node receiving the move - node request is an appropriate gateway node , the requesting agent is informed of the system address of the new node with which the agent is now set to communicate , step 720 .