|
Claims  |
|
|
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. |
|
|
|
|
Claims  |
|
|
Description  |
|
|
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 | | |