WikiPatents - Community Patent Review
Create Free Account  |  License or Sell Your Patent  |  WikiPatents Marketplace  |  WikiPatents Blog
Username:  Password:  
    
Advanced Search
Linking system and method for accessing directory information about an object in one context when information in another context is known    
United States Patent5491817   
Link to this pagehttp://www.wikipatents.com/5491817.html
Inventor(s)Gopal; Gita (Wayne, NJ); Wuu; Sze-Ying (Branchburg, NJ)
AbstractOur linking method is implemented in our linking system which includes an interconnection network, which employs a standard directory protocol, such as X.500, and linking components. The interconnection network includes interfaces for interconnection users and local directories. The linking components include linking directories and linking applications which are connected to the interconnection network via interfaces. Linking directories contain entries, and each entry comprises linking references pointing to entities, which include local directories and linking applications and have access to information about the object in different contexts. In the linking directory, there is an entry for each object, and this entry is accessible using a linking identifier unique the object. The linking application coordinates a response to the user's request and sends queries to the linking directory, local directories, and other linking application to fulfill user's requests. A user can access requested information by inputting known information about an object in one context along with a request for information about the object in another context. The known information is used by the linking application to query a local directory in the network for the linking identifier corresponding to the object. The linking application then uses the linking identifier to query the linking directory for linking references pointing entities having further access to information about the object in the specified context. The linking application uses the linking reference to locate the entities pointed to and the linking identifier as a key to retrieve the requested information. This retrieved information is formatted by the linking application and forwarded to the user in response to the request.
   














 Title Information Submit all comments and votes
 
Patent Text Patent PDF Print Page Summary File History
Plain text PDF images Print Summary File History
Drawing from US Patent 5491817
Linking system and method for accessing directory information about an

     object in one context when information in another context is known - US Patent 5491817 Drawing
Linking system and method for accessing directory information about an object in one context when information in another context is known
Inventor     Gopal; Gita (Wayne, NJ); Wuu; Sze-Ying (Branchburg, NJ)
Owner/Assignee     Bell Communications Research Inc. (Livingston, NJ)
Patent assignment
All assignments
Publication Date     February 13, 1996
Application Number     08/068,822
PAIR File History     Application Data   Transaction History
Image File Wrapper   Patent Term   Fees
Litigation
Filing Date     May 25, 1993
US Classification     707/200
Int'l Classification     G06F 017/30
Examiner     Black; Thomas G.
Assistant Examiner     Loomis; John C.
Attorney/Law Firm     Charles, Yeadon; Loria B. Suchyta; Leonard
Address
Parent Case    
Priority Data    
USPTO Field of Search     395/200 395/600 395/650
Patent Tags     linking accessing directory information about an object one context when information another context is known
   
Enter a comma (,) or semicolon (;) between multiple tag words/phrases.
Describe this patent:
 Amusing   
 Clever   
 Complex   
 Efficient   
 Historic   
 Important   
 Innovative   
 Interesting   
 Practical   
 Simple   
[no votes]
Patent WIKI

Share information and news about this patent, including information and news about the technology, inventors, company, ligation and licensing.

 References Submit all comments and votes
 
*references marked with an asterisk below are user-added references
 U.S. References
 
Add a new US reference:  
ReferenceRelevancyCommentsReferenceRelevancyComments
5345586
Hamala
707/10
Sep,1994

[0 after 0 votes]
5303235
Chan
370/254
Apr,1994

[0 after 0 votes]
5058152
Solomon
379/67.1
Oct,1991

[0 after 0 votes]
4954958
Savage
701/202
Sep,1990

[0 after 0 votes]
4313035
Jordan
379/211.02
Jan,1982

[0 after 0 votes]
4878239
Solomon
379/88.23
Dec,1969

[0 after 0 votes]
 Foreign References
 Other References
 Market Review Submit all comments and votes
   
Market Size
Estimate the gross annual revenues of the relevant market sector:
> $10B
$5B - $10B
$2B - $5B
$500M - $2B
$100M - $500M
$10M - $100M
$1M - $10M
$500K - $1M
$100K - $500K
< $100K
[No votes]
$0
 
$0   $2.5B   $5B   $7.5B   $10B
Market Share
Estimate the percentage of the relevant market sector this invention will capture:
75% - 100%
50% - 74.99%
25% - 49.99%
10 - 24.99%
5 - 9.99%
2 - 4.99%
1 - 1.99%
< 1%
[No votes]
0.0%
 
0%   25%   50%   75%   100%
Reasonable Royalty
What percentage of gross sales should the inventor or assignee be paid?
75% - 100%
50% - 74.99%
25% - 49.99%
10 - 24.99%
5 - 9.99%
2 - 4.99%
1 - 1.99%
< 1%
[No votes]
0.0%
 
0%   25%   50%   75%   100%
Public's "Guesstimation" of Royalty Value
Market SizeN/A[No votes]
xMarket ShareN/A[No votes]
xReasonable RoyaltyN/A[No votes]

N/A

License Availablity
If you are NOT the owner or assignee, answer here:
Yes, license is available for purchase

No, license is not currently available



[No votes]
License Availablity
If you ARE the owner or assignee, answer here:
Yes, license is available for purchase

No, license is not currently available



[No votes]
Competitive Advantage
Does this invention have a significant competitive advantage over similar technologies?
Yes

No



[No votes]
Most helpful competitive advantage comment
[No comments]

Commercial Alternatives
Are there viable commercial alternatives for this invention?
Yes

No



[No votes]
Most helpful commercial alternative comment
[No comments]

 Technical Review Submit all comments and votes
 Claims Submit all comments and votes
 


What is claimed is:

1. A method of retrieving information in a system including a network which interconnects users and local directories and employs a standard directory protocol, at least one linking application, and at least one linking directory, comprising the steps of:

receiving at a linking application input from a user which includes known information about an object in a first context and a request for information about said object in at least one particular context;

sending from said linking application a first query to one of said local directories holding said known information about said object in said first context to retrieve a linking identifier which uniquely identifies said object;

sending from said linking application a second query, which includes said linking identifier, to a linking directory to access an entry in said linking directory corresponding to said object and to retrieve linking references which point to entities containing further information regarding said object in said other context, said entities including local directories and linking applications;

retrieving from said linking directory a key corresponding to each of said entities for accessing requested information about said object;

sending a third query, which includes said corresponding key, from said linking application to each of said entities pointed to by said linking reference to retrieve requested information; and

at said linking application, formatting said requested information retrieved from said entities and sending said formatted information to said user in response to said request.

2. A method of retrieving information in a system including a network which interconnects users and local directories and employs a standard directory protocol, at least one linking application, and at least one linking directory, comprising the steps of:

receiving at a linking application user input which includes known information about an object in a first context and a request for information about said object in at least one particular context;

sending from said linking application a first query to one of the local directories holding said known information about said object in said first context to retrieve an identifier which uniquely identifies said object;

sending from said linking application a second query, which includes said identifier, to a linking directory to access an entry of said linking directory corresponding to said object and to retrieve at least one linking reference which points to an entity having further access to information regarding said object in said particular context, said entity being from the group of entities which includes local directories and linking applications;

sending a third query from said linking application to said entity pointed to by said linking reference to retrieve requested information; and

formatting said requested information retrieved from said entity and sending said formatted information in response to said user's request.

3. The method of claim 2 of retrieving information in a network, wherein said identifier is a linking identifier which uniquely identifies said object in the network.

4. The method of claim 3 of retrieving information in a network, further comprising the step of

retrieving from said linking directory a second identifier to be sent to said entity pointed to for accessing requested information.

5. The method of claim 4 of retrieving information in a network, wherein said second identifier is said linking identifier which uniquely identifies said object in the network.

6. The method of claim 4 of retrieving information in a network, wherein said entity pointed to includes one of the local directories which contains information about said object and wherein said second identifier is a local identifier which is a key for accessing said one of the local directories pointed to when access cannot be gained using said linking identifier.

7. The method of claim 2 of retrieving information in a network, wherein said identifier is a local identifier which uniquely identifies said object in said one of the local directories and in said entry of said linking directory.

8. The method of claim 2 of retrieving information in a network, wherein said entity pointed to is a second linking application having further access to another linking directory which contains another linking reference which further points to information requested about said object in said particular context.

9. The method of claim 9 of retrieving information in a network, wherein said second linking application queries a second linking directory to retrieve a second linking reference pointing to a second entity being from the group of entities which includes local directories and linking applications.

10. A system for retrieving information held in local directories based upon a user's request for information about an object in a particular context, comprising:

a network for interconnecting a plurality of users and a plurality of local directories, said network including

user interfaces for connecting said users to said network and

a plurality of directory interfaces, certain of said directory interfaces connecting said local directories to said network, wherein said user interfaces and said directory interfaces communicate using a standard directory protocol;

at least one linking directory connected to said network via one of said directory interfaces and having entries, wherein each entry corresponds to one object, contains linking references which point to entities having further access to information about its corresponding object in different contexts, and contains a linking identifier which uniquely identifies its corresponding object; and

at least one linking application connected to said network via one of said directory interfaces and including means for sending a first query to said local directories to obtain said linking identifier uniquely identifying the object, means for sending a second query to said linking directory including said linking identifier to obtain said linking references which point to said entities, and means for sending a third query, which includes said linking identifier, to said entities pointed to by said linking references to retrieve requested information about the object in the particular context in response to the user's request wherein said entities are from the group of entities which includes local directories and linking applications.

11. A system for retrieving information held in local directories based upon a user's request for information about an object in a particular context, comprising:

a network for interconnecting at least one user and a plurality of local directories, said network including

a user interface for each user for connecting the user to said network and

a plurality of directory interfaces, certain of said directory interfaces for connecting said local directories to said network, wherein said user interlace and said directory interfaces communicate using a standard directory protocol;

at least one linking directory connected to said network via one of said directory interfaces and having entries, wherein one of said entries corresponds to the object, contains at least one linking reference which points to an entity having further access to information about the object in the particular context, and is accessible in response to an identifier which uniquely identifies the object; and

at least one linking application connected to said network via one of said directory interfaces and including means for communicating with said local directories to obtain said identifier for the object, means for communicating with said linking directory using said identifier to obtain said linking reference which points to said entity, and means for communicating with said entity pointed to by said linking reference to retrieve information about the object in the particular context in response to the user's request, wherein said entity of said linking directory is from the group of entities which includes local directories and linking applications.

12. The system of claim 11 for retrieving information held in local directories based upon a user's request for information about an object in a particular context, wherein said linking application further comprises means for formatting retrieved information and sending said formatted information to said user interface of the user in response to the user's request, said, retrieved information being formatted with the option of not revealing to the user the identity of said local directory from which said information was retrieved.

13. The system of claim 11 for retrieving information held in local directories based upon a user's request for information about an object in a particular context, wherein said identifier is a linking identifier which uniquely identifies the object in the network.

14. The system of claim 13 for retrieving information held in local directories based upon a user's request for information about an object in a particular context, wherein said means of said linking application for communicating with said entity includes means for sending to said entity a second identifier to retrieve information about the object in the particular context in response to the user's request.

15. The system of claim 14 for retrieving information held in local directories based upon a user's request for information about an object in a particular context, wherein said second identifier is said linking identifier.

16. The system of claim 14 for retrieving information held in local directories based upon a user's request for information about an object in a particular context, wherein said entity pointed to is one of said local directories which contains information about the object in the particular context and wherein said second identifier is a local identifier which uniquely identifies the object at said one of said local directories.

17. The system of claim 14 for retrieving information held in local directories based upon a user's request for information about an object in a particular context, wherein said entity pointed to is another linking application.

18. The system of claim 11 for retrieving information held in local directories based upon a user's request for information about an object in a particular context, wherein said identifier is a local identifier which uniquely identifies the object corresponding to said one of said entries of said linking directory.

19. The system of claim 11 for retrieving information held in local directories based upon a user's request for information about an object in a particular context, wherein said standard directory protocol is X.500.

20. The system of claim 8 for retrieving information held in local directories based upon a user's request for information about an object in a particular context, wherein said directory interfaces communicate with one another using X.500 directory system protocol and said user interface communicates with said directory interfaces using X.500 directory access protocol.

21. The system of claim 20 for retrieving information held in local directories based upon a user's request for information about an object in a particular context, wherein said directory interfaces comprise a knowledge reference which includes an entry which maps said linking reference to said another linking application.
 Description Submit all comments and votes
 


RELATED APPLICATION

Pending U.S. patent application Ser. No. 07/621,607, entitled Network and Method for Providing Cross-Media Connection filed on Dec. 3, 1990, for applicants P. C. Bates, J. M. Eisman, G. Gopal, N. A. Ostroff, and F-L Wu, now U.S. Pat. No. 5,239,577, issued Aug. 24, 1993, which is assigned to the assignee hereof, contains subject matter related to that of the present application and is incorporated herein by reference.

1. Field of the Invention

The present invention relates to a network of directories employing a standard directory protocol and a method for retrieving information in response to queries from directory users.

2. Background of the Invention

The X.500 standard has been developed by the International Telegraph and Telephone Consultative Committee (CCITT) to support the interconnection of local directories holding information and users of directory information for the purpose of providing directory services. CCITT, The Directory--Overview Concepts, Models, and Services, X.500 Series Recommendation, Document AP IX-47-E. X.500 defines a standard protocol for directory users to communicate with different local directories which are owned, operated, or managed by different entities. This standard also defines directory services available to users.

The usefulness of the standard is demonstrated by the following example. Assume that a user wishes to retrieve credit information about a person, John Doe. As shown in the table of FIG. 1, John Doe has credit information in different contexts (e.g. residential, business, etc.) scattered among multiple local directories held by various entities. Residential information about John Doe is held by both the BOC Telephone Company in its Whites Pages directory, and the Division of Motor Vehicles (DMV) in its directory of Licensed Drivers. Mr. Doe also has automobile, mortgage, and personal loans at ABC Bank, and information regarding these loans is maintained in three separate directories of ABC Bank. In addition, Mr. Doe also has mastercard and visa credit cards through the Credit Card (CC) Company, and information regarding these cards is held in CC's Visa and Mastercard directories. Lastly, DOM Corporation is Mr. Doe's place of employment, and business information, such as his date of employment, salary, and outstanding loan against his pension plan, is held in DOM's Personnel and Pension directories, respectively.

Prior to the X.500 standard being established, a user wishing to contact various local directories maintained by different entities to obtain John Doe's credit information could not easily do so because of language and communication barriers between the user and various entities. The user had to know and adapt to the specific protocol of each entity maintaining desired directory information in order to communicate requests for information to the entity in cognizable form and to translate information once retrieved. The X.500 standard provides a standard protocol which reduces these communication barriers and allows users to access information and also permits local directories maintained by different entities and to communicate with one another.

FIG. 2 depicts a basic functional model of an interconnection network 100 employing the X.500 standard for providing directory service. This model shows four main elements: directory service users 10, 15; directory user agents (DUAs) 20, 25; directory system agents (DSAs) 30-60; and local directories 75. Users 10 and 15 are entities utilizing directory services. Traditionally, a directory service user has been a human being, but a user could also include a machine such as a computer executing an automated software program.

DUAs 20 and 25 serve as the interface for users 10 and 15 in the interconnection network 100. A user interacts with a DUA in inputting a directory request and retrieving requested information. The DUA drives menus and presentations of information at a human-machine interface (for a human user) or an application to directory application interface (for a computer automated user). The DUA also formats the user's request and communicates the request to DSAs performing data retrieval from local directories 75 in the network.

In general, a DSA serves as interface between one or more local directories 75 and DUAs or other DSAs. A DSA also serves as a point of interconnection between DUAs and other DSAs. As shown in FIG. 2, DSA 50 serves as an interface between multiple local directories 75 and DUA 20 and other DSAs in the interconnection network 100. DSA 60 serves as a point of interconnection between DSA 30 and DSA 50 as well as an interface between its local directory 75 and other DSAs in the interconnection network 100.

DSAs support access to information in local directories and manage and retrieve directory information. Also, after retrieving information from its local directories, the DSA formats the response to directory requests from users, and communicates the response to the user's DUA. The DSA also communicates with and forwards requests to other DSAs when it cannot find the requested information locally.

A DSA and a DUA communicate using X.500 directory access protocol (DAP), and two DSAs communicate using standard X.500 directory system protocol (DSP). As shown in FIG. 2, DSAs 30 and 50 are connected to DUA 20 via links 80 and 82, respectively, using the DAP protocol, and likewise, DSA 40 and DUA 25 communicate via link 81 using the DAP protocol. Furthermore, DSA 30 is connected to DSAs 40 and 60 via links 90 and 92, respectively, using the DSP protocol, and DSAs 60 and 50 are connected via link 94 also using DSP protocol.

In addition to minimizing the communication barriers between users and local directories, the X.500 standard also provides some directory services capabilities to facilitate retrieval of directory information. FIG. 3 depicts an interconnection of a user and different entities which contain credit information for John Doe, as discussed in the example above and shown in the table of FIG. 1. Under the X.500 standard, user 10 could request John Doe's visa card balance by sending, via its DUA 20, the distinguished name of the entry for John Doe in CC's Visa directory to DSA 130. The distinguished name is a term of art under the X.500 standard and is the distinctive name of a network element (i.e. DSA, DUA, local directory and directory entry) which uniquely and unambiguously identifies the element in the network. Therefore, to be consistent with the standard, the term distinguished name is used to identify network elements.

The distinguished name inputted by user 10 uniquely and unambiguously identifies the entry for John Doe in the Visa directory 141 connected to the DSA-CC 140. In order to provide the proper distinguished name, the user must know that John Doe has a visa card with CC Company. Providing the distinguished name also requires that the user knows the full path from the top of the global directory (here, we assume that the interface to the top of the global directory is DSA 130) for John Doe in the Visa directory 141.

Upon receiving a request from the user 10 which includes the distinguished name of the entry for John Doe in the Visa directory 141, DSA 130 has the option of handling this request using different capabilities of the X.500 standard which include chaining, referral, and search capabilities. The chaining, referral, and search capabilities are available through the implementation at each DSA of knowledge references about other neighboring DSAs. If a DSA receives a query indicating a distinguished name not held by the DSA, the DSA knowledge references enables the DSA to know to which other DSA to chain or refer the request. For example, in FIG. 3., DSA 130 has knowledge references which indicate that directory queries indicating the distinguished name for the CC Company should be sent to DSA-CC 140 and directory queries indicating the distinguished name for ABC Bank should be sent to DSA-ABC 150.

Upon receiving a request from the user 10 which includes the distinguished name of the entry for John Doe in the Visa directory 141, DSA 130 can either transfer the request to DSA 140 using the chaining capabilities of the X.500 standard or refer the user 10 directly to DSA 140 using the referral capability of the X.500 standard. The chaining capability allows a DSA, which does not hold the requested information, to handle the request for the user by transferring the request directly to the DSA corresponding to the distinguished name specified by the user. The referral capability allows a DSA, which does not hold the requested information, to refer the user to another DSA by returning to the user the distinguished name of the other DSA so that the user can launch a request directly to the other DSA.

Another capability of the X.500 standard is searching. Illustratively, the search capability allows the user 10 to specify the distinguished name of the CC Company and to request a broadcast search for information regarding John Doe on all of its local directories. From the distinguished name of CC Company, DSA 130 will determine that DSA-CC 140 corresponds to the CC Company and will send the query to DSA 140 for a broadcast search. This search is less efficient than a direct search by the distinguished name of John Doe's entry in the Visa directory. Furthermore, DSA-CC 140 could deny such a broadcast search request. Therefore, if user 10 does not know all necessary information to compose the distinguished name for the information sought or cannot contact the proper DSA directly, accessing desired information is difficult, since the X. 500 has limited capabilities.

A drawback of the X.500 standard is that it does not provide an effective mechanism for cross-referencing information in the interconnection network or for efficiently narrowing the scope of the search for local directories to locate the requested information. Even if the user knows information about John Doe in one context held by one local directory, in most cases, the user cannot cross-reference this information to access information about John Doe in another context held in another local directory in the network. For example, even if user 10 knows that John Doe has loan accounts at ABC Bank and knows the distinguished name for John Doe's entry in the Automobile, Mortgage, and Personal directories of ABC Bank, this knowledge would not be useful in accessing John Doe's visa credit card information in the Visa directory of the CC Company. Therefore, if user 10 launches a request for John Doe's visa card information to DSA-ABC 150 (via its DUA 20 and DSA 130), DSA-ABC 150 would search its local directories for the requested information and would respond with a "not found" message indicating that the requested information could not be found in its local directories.

X.500 does not provide a complete solution which permits the user to access requested information about John Doe when other directory information is known, since this standard does not define DSA mechanisms for relating or cross-referencing directory entries associated with the same object. Such mechanisms are left as a matter for the users and providers of directory services to agree upon. However, two mechanisms, aliases and seeAlso references, which are defined in the standard, could be used to provide limited support for relating directory entries associated with an object. However, the full functionality and effectiveness of arbitrary cross-context searches cannot be achieved using the aliases and seeAlso mechanisms.

A drawback of using the seeAlso mechanism is high administrative overhead since relating directory entries holding information of the same object requires that entries of an object maintain a seeAlso reference for every other directory entry of the same object. Another problem with seeAlso reference is that a DSA maintaining the seeAlso reference does not use the reference to query information from another directory entry. Instead, the user is responsible for sending the appropriate query to the directory entry identified by the seeAlso reference.

Although the X.500 standard provides interconnection between DSAs and some limited directory service capabilities, it does not provide a viable method for cross-referencing or narrowing the search scope for directories having entries associated with the same object. Nor does the standard permit a user to access information in one context when information in another context is known. To improve directory services under the X.500 standard, a linking directory could be employed. A linking directory includes one entry per object which could be a person as in the above example, such as John Doe, but an object could also be a business, an account, or any "thing" for which information could be stored in a local directory. Each entry in the linking directory comprises pointers to other directories which include more comprehensive information about the object. Thus, the linking directory does not attempt to collect together comprehensive information about an object, but instead is a directory of directories.

Previous research on interconnecting directories has been directed to locating directory entries in distributed directory systems. (B. Lampson, "Designing a global name service," Proceedings of Fifth Symposium on the Principles of Distributed Computing, August 1986; D. Oppen and Y. Dalal, "The Clearinghouse: a decentralized agent for locating named objects in a distributed environment," ACM Transactions on Office Information Systems, Vol. 1, No. 3, July 1983; L. L. Peterson, "The Profile Naming Service," ACM Transactions on Computer Systems, Vol. 6, No. 4, Nov. 1988.) However, none of these prior art studies has provided a satisfactory solution for linking together entries distributed among directories for objects in multiple contexts to permit cross-context retrieval of information within the directory network. Furthermore, none of these prior art studies have demonstrated an effective mechanism which allows cross-context information retrieval in a directory network employing a standard protocol, such as X.500, and which enhances the directory service capabilities of the standard without changing its structure and characteristics.

Accordingly, it is an object of the present invention to provide a linking system for improving services in a network of directories which employs a standard directory protocol, such as the X.500 standard. It is a further object of our invention to provide a method for allowing a user to access directory information about an object in one context by knowing directory information about the object in another context.

SUMMARY OF THE INVENTION

Our invention relates to a linking system for enhancing directory service in a network of directories employing a standard directory protocol such as the X.500 standard. Our invention also relates to a method to be implemented in a network of directories employing a standard directory protocol for accessing directory information about an object in one context, when directory information about the object in another context is known.

This linking system comprises an interconnection network which employs a standard directory protocol, such as X.500, and linking components. The interconnection network comprises DUAs and DSAs for interconnecting users and directories. DUAs are users' interfaces in the interconnection network. DUAs format users' requests, communicate requests to DSAs, and receive requested information in response to users' requests. DSAs serves as interfaces for one or more directories to DUAs and other DSAs and for linking components to the interconnection network. DSAs also serve as points of interconnection between DUAs, other DSAs, and linking components.

The linking components include linking directories and linking applications. Users access a linking application by inputting the distinguished name of a corresponding services directory. Users perceive the services directory to be a logically centralized directory containing comprehensive information about multiple objects in different contexts. DSAs contain an entry in its knowledge reference which maps the distinguished name of the services directory to distinguished name of the linking application.

The linking application receives users' requests and coordinates a response by sending queries to its linking directory, local directories, and other linking applications (which are perceived to be services directories) in the interconnection network. Linking directories contain entries, and there is one entry for each object. This entry is accessible using a linking identifier which is unique to the object. Each entry comprises linking references which may point to local directories and linking applications perceived to be services directories. Local directories pointed to by linking references hold more comprehensive information about the object in particular contexts. Linking applications pointed by linking references access other linking directories containing linking references which further pointed to local directories holding information about the object. Therefore, the linking directory is a directory of directories.

The use of the linking system for retrieving directory information can be explained by taking for example a user who wishes to access credit information for John Doe, who is the object. However, the user only knows John Doe's driver's license number. To access Mr. Doe's visa credit information, the user inputs its request to its DUA which includes John Doe's driver's license number along with a request for John Doe's visa credit card information. This request is formatted at the user's DUA and transferred to what the user perceives to be the Credit Bureau services directory which is perceived to hold credit information about various persons in different contexts. However, in reality, the request is transferred through mapping at a DSA, to the Credit Bureau linking application. The Credit Bureau linking application then forwards a first query to the DSA-DMV where the Licensed Driver directory is connected. At the Licensed Driver directory, the linking identifier for John Doe is retrieved. Thus, in response to the user's request which includes known information about John Doe in one context, the Credit Bureau linking application obtains the linking identifier uniquely identifying John Doe.

The Credit Bureau linking application then launches a second query containing the linking identifier to the Credit Bureau linking directory to retrieve the linking reference which points to the local directory containing information about John Doe in the credit cards context. Alternatively, the linking reference could point to another linking application which, from the perspective of the Credit Bureau linking directory, is perceived to be another services directory. The linking application pointed to by the linking reference facilitates access to another linking directory containing linking references which further points to a local directory containing the requested information.

The Credit Bureau linking application then launches a third query using the linking reference to locate CC's Visa directory and the linking identifier as a key to access the directory entry for John Doe and retrieve the requested information. This retrieved information is formatted by the Credit Bureau linking application and forwarded to the user's DUA in response to the user's request.

Use of our linking system and method has several important advantages which include:

Enhanced Directory Service--users can access information even when all the information necessary to compose the distinguished name of the entry containing the information is not known;

Cross-Context Retrieval Capabilities--users can access information about an object in one context by knowing information about the object in another context;

Preservation of Standard Directory Protocol--directory service capabilities are enhanced without changing the functional model of the X.500 standard;

Security--each directory database can provide its own access restrictions;

Privacy--the linking application can respond to a user's request without revealing the directory from which the information was retrieved or its distinguished name;

Ownership of Information--information is distributed among entities that control and maintain the information, and all information about different objects need not be centralized in a single location; and

Controlled data redundancy--the unique linking identifier of an object serves as a link among many directories, thereby eliminating or reducing the need to store the same information in many directories.

Thus, our inventive linking system, by employing linking applications and linking directories, provides a highly advantageous structure and method for cross-context retrieval of information without altering the standard directory protocol.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a table showing different entities holding directory information regarding John Doe.

FIG. 2 depicts a functional model of an interconnection network employing the X.500 standard, from the prior art, for interconnecting directories and users of directory information.

FIG. 3 depicts an X.500 standard network interconnecting a user and multiple directories which contain credit information about John Doe as shown in FIG. 1.

FIG. 4 depicts a representative embodiment of our linking system, in accordance with an aspect of our invention, for enhancing directory service in a network of directories, which network employs a standard directory protocol, such as the X.500 standard.

FIG. 4A depicts an illustrative embodiment of our linking application in accordance with an aspect of our invention.

FIG. 5 depicts a linking system comprising an interconnection network, which interconnects a user and multiple directories via multiple DUAs and DSAs, and multiple linking applications and linking directories in accordance with an aspect of our invention.

FIGS. 6 and 7 illustrate entries containing information about John Doe in the residential context at the White Pages and Licensed Drivers directories, respectively.

FIGS. 8(A), 8(B) and 8(C) illustrate entries containing information about John Doe in the loan context at ABC's Automobile, Mortgage, and Personal directories, respectively.

FIGS. 9(A) and (B) illustrate entries for John Doe in the credit card context at CC's Visa and Mastercard directories.

FIGS. 10(A) and (B) illustrate entries for John Doe at DOM's Personnel and Pension directories in the business and loan contexts, respectively.

FIGS. 11, 12, 13 and 14 depict entries in Credit Bureau, DOM, BOC, and ABC linking directories corresponding to John Doe in various contexts.

FIG. 15 depicts information formatted and sent by the Credit Bureau linking application to the user in response to the user's request.

DETAILED DESCRIPTION OF THE INVENTION

FIG. 4 depicts a representative embodiment of our linking system for enhancing directory service in a network of local directories, which network employs a standard directory protocol, such as the X.500 standard. This linking system 500 comprises an interconnection network 550 which employs a standard directory protocol, such as X.500, and linking components 200 and 300. The interconnection network 550 comprises DUAs 20 and 25 and DSAs 30-70 for interconnecting multiple users 10 and 15, and local directories 75, which contain information about different objects. DUAs are users' interfaces in the interconnection network 550 and function as discussed in the Background of the Invention. DSAs serve as interfaces for one or more local directories in the interconnection network as discussed in the Background of the Invention. In addition, DSAs 30 and 70 serve as interfaces for linking components 200 and 300 to the interconnection network 550. DSAs are connected to DUAs via links 80 - 82 using standard protocol, such as the DAP protocol of the X.500 standard. Furthermore, DSAs are interconnected by links 90 - 96 using a standard protocol, such as the DSP protocol of the X.500 standard.

Each local directory 75 contains multiple entries, and each entry contains information about one object. Each entry also contains an identifier which uniquely identifies its corresponding object. The identifier may be a linking identifier which uniquely identifies the object globally in the interconnection network. The identifier may also be a local identifier which uniquely identifies the object within the local directory where the entry for the object is held.

The linking components include the linking directory 300 and the linking application 200. The linking system 500 of FIG. 4 illustratively shows a single linking application and a single linking directory. However, multiple linking applications and linking directories may be employed in the linking system. The linking directory 300 is a data base comprising memory for storing directory entries. The linking directory 300 is a directory of directories containing an entry for each object, which entry is accessible using a linking or local identifier which is unique to the object. Each entry contains linking references, which point to entities having further access to information regarding the object. The entities pointed to could be local directories holding more comprehensive information about the object in a particular context. The entities could also be linking applications which facilitate access to other linking directories containing linking directories which further point to local directories holding information about the object.

The linking application 200 is a computer system and an illustrative embodiment of this linking component is depicted in FIG. 4A. As shown, the linking application 200 comprises a DSP interface 210 for communicating with DSA 70 via link 98 using the DSP protocol. The linking application 200 receives user requests and communicates with other network elements via the DSP interface 210. The DSP interface 210 is connected to the query processors 220, 230, and 240 which formulate and launch queries to be sent to local directories, the linking directory or other linking applications, respectively, in the network. Optionally, a single query processor could be used for formulating and launching queries to any combination of the local directories, the linking directory or other linking applications. The linking application 200 also comprises a system memory store 250 for storing linking computer software used for operating the linking application. Control processor 260 implements software stored in system memory store 250 and controls the formulation and launching of queries at query processors 220, 230, and 240. The control processor 260 also controls a format processor 270 which receives information retrieved from local directories and formats the information, as illustratively shown in FIG. 15, to be sent to requesting users.

The linking application 200 coordinates the retrieval of information in response to a user's request and formats the information to be sent to the user in response to the user's request. Users can access a linking application by inputting the distinguished name of a corresponding services directory. Users perceive the services directory to be a logical centralized directory containing comprehensive information about multiple objects in different contexts. DSAs contain an entry in its knowledge reference which maps the distinguished name of the services directory to the distinguished name of the linking application, thus permitting access to the linking application.

The coordination function of the linking application 200 includes: using known information inputted by the user to query a local directory to identify the linking identifier uniquely identifying the object; using the linking identifier to query the linking directory to access the linking reference which points to the entity (local directory or linking application) having further access to information regarding the object; and using the li