← Back to Patent Explorer
US5787442A Expired / Lapsed US ⏱️ 0.0 years remaining

Creating interobject reference links in the directory service of a store and forward replication computer network

Assignee: Microsoft Technology Licensing LLC
•
Filing: 1996-07-11
•
Granted: 1998-07-28
•
Expires: 2016-07-11
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract The directory service of the present invention extends the mechanism used to define ordinary properties to define "links," pairs of properties that represent an interobject reference with a certain meaning. Each pair is given a unique "pair ID" and consists of a "link" property and a "backlink" property, which represent the "reference" and "is referenced by" semantics, respectively. Rather than storing interobject references with the referencing and/or the referenced objects themselves and imputing the link, instead the present invention stores the link instance itself as an unnamed object in a link database table, which is separate and distinct from the data information base, and imputes the values to be reported for the relevant properties on the referencing and referenced objects from the existence of records in the link table. When a directory service server learns of the deletion of an object (either via replication or because of a deletion occurring on that server), it removes from its link table all records that refer to that object in either the link ID or backlink ID column, which is an efficient operation. This eliminates any dangling references to the deleted object. Although this implicitly affects the values of the corresponding link and backlink properties on other objects in the directory (i.e., those named in the backlink or link properties of the object being deleted), the changes to those other objects do not need to be noted or replicated in any way, since the replication of the deletion of the original object will cause all other directory service servers to perform the same cleanup, thereby independently removing the same link instances. This allows the directory service to maintain referential integrity in a distributed manner, with minimal replication overhead.

Inventors

  • 👤 Donald Joseph Hacherl
  • 👤 Tsvi Michael Reiter

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-31 17:27
CPC Classifications
G; G06; G06F; G06F16/00; G06F16/20; G06F16/28; G06F16/289; Y; Y10; Y10S; Y10S707/00; Y10S707/99951; Y10S707/99952

Claims Analysis

Total Claims: 25
Claim 1
Independent Claim 184 words
In a directory service of a computer-based store and forward replication enterprise, wherein individual data objects are contained in a directory information base in which individual data objects are each identified by an object ID and wherein the individual data objects also have one or more corresponding object properties, a method for establishing interobject cross references between referencing objects and referenced objects contained in the directory, the method comprising the steps of: creating a directory schema that defines paired links, each paired link representing a relationship between two or more objects and each paired link being identified by a unique pair ID; locally creating a link database table at each replication location, said link database table having a plurality of individual entries each corresponding to a pair ID so that said link database table contains all relationships which link said objects; modifying at a replication location one of the corresponding object properties for a data object in the directory information base and replicating the change to other replication locations; and locally updating at each replication location the link database table to reflect the modification.
Claim 2
Dependent Claim 184 words
In a directory service of a computer-based store and forward replication enterprise, wherein individual data objects are contained in a directory information base in which individual data objects are each identified by an object ID and wherein the individual data objects also have one or more corresponding object properties, a method for establishing interobject cross references between referencing objects and referenced objects contained in the directory, the method comprising the steps of: creating a directory schema that defines paired links, each paired link representing a relationship between two or more objects and each paired link being identified by a unique pair ID; locally creating a link database table at each replication location, said link database table having a plurality of individual entries each corresponding to a pair ID so that said link database table contains all relationships which link said objects; modifying at a replication location one of the corresponding object properties for a data object in the directory information base and replicating the change to other replication locations; and locally updating at each replication location the link database table to reflect the modification.
Claim 3
Dependent Claim 216 words
In a directory service of a computer-based store and forward replication enterprise, wherein individual data objects are contained in a directory information base in which individual data objects are each identified by an object ID and wherein the individual data objects also have one or more corresponding object properties, a method for establishing interobject cross references between referencing objects and referenced objects contained in the directory, the method comprising the steps of: creating a directory schema that defines paired links, each paired link comprising a first link and a second link which represent a relationship between two or more objects and wherein the first and second links are logical complements of one another; locally creating a link database table at each replication location, said link database table having a plurality of individual entries each corresponding to a link pair so that said link database table contains all relationships which link said objects, each entry identifying the link pair, the object ID of the referencing object, and the object ID of the referenced object; modifying at each replication location one of the corresponding object properties for a data object in the directory information base and replicating the change to other replication locations; and locally updating at each replication location the link database table to reflect the modification.
Claim 4
Dependent Claim 216 words
In a directory service of a computer-based store and forward replication enterprise, wherein individual data objects are contained in a directory information base in which individual data objects are each identified by an object ID and wherein the individual data objects also have one or more corresponding object properties, a method for establishing interobject cross references between referencing objects and referenced objects contained in the directory, the method comprising the steps of: creating a directory schema that defines paired links, each paired link comprising a first link and a second link which represent a relationship between two or more objects and wherein the first and second links are logical complements of one another; locally creating a link database table at each replication location, said link database table having a plurality of individual entries each corresponding to a link pair so that said link database table contains all relationships which link said objects, each entry identifying the link pair, the object ID of the referencing object, and the object ID of the referenced object; modifying at each replication location one of the corresponding object properties for a data object in the directory information base and replicating the change to other replication locations; and locally updating at each replication location the link database table to reflect the modification.
Claim 5
Dependent Claim 87 words
The method of claim 1 or 2, wherein the step of creating a directory schema comprises the steps of: modifying the directory schema to define one or more pairs of complementary interobject links, each having a pair ID attribute and a backlink attribute; assigning to each pair of complementary interobject links a unique pair ID value; and identifying one property of each pair of complementary interobject links as a link property and identifying the other property of each pair of complementary interobject links as a backlink property.
Claim 6
Dependent Claim 75 words
The method of claim 3, wherein the step of creating a link database table comprises the step of creating a data table having a separate entry for each instance of an interobject link, each separate entry having a pair ID value corresponding to one of the pair ID values defined in the directory schema, a link ID value identifying the object ID of the referencing object, and a backlink ID value identifying the referenced object.
Claim 7
Dependent Claim 49 words
The method of claim 1 or 2 further comprising the step of updating, periodically, the link data table in response to deletion of an object by searching the link data table and deleting any entries in the link data table that include the object ID of the deleted object.
Claim 8
Dependent Claim 255 words
In a directory service of a computer-based store and forward replication enterprise, wherein individual data objects are contained in a directory information base in which individual data objects are each identified by an object ID and wherein the individual data objects also have one or more corresponding object properties, a method for establishing interobject cross references between referencing objects and referenced objects contained in the directory, the method comprising the steps of: modifying a directory schema to define one or more pairs of complementary interobject links, each having a pair ID attribute and a backlink attribute; assigning to each pair of complementary interobject links a unique pair ID value; identifying one property of each pair of complementary interobject links as a link property and identifying the other property of each pair of complementary interobject links as a backlink property; locally creating a link database table at each replication location, said link database table having a separate entry for each instance of an interobject reference, wherein each separate entry in the link database table has a pair ID value corresponding to one of the pair ID values defined in the directory schema, a link ID value identifying the object ID of the referencing object, and a backlink ID value identifying the referenced object; modifying at a replication location one of the corresponding object properties for a data object in the directory information base and replicating the change to other replication locations; and locally updating at each replication location the link database table to reflect the modification.
Claim 9
Dependent Claim 255 words
In a directory service of a computer-based store and forward replication enterprise, wherein individual data objects are contained in a directory information base in which individual data objects are each identified by an object ID and wherein the individual data objects also have one or more corresponding object properties, a method for establishing interobject cross references between referencing objects and referenced objects contained in the directory, the method comprising the steps of: modifying a directory schema to define one or more pairs of complementary interobject links, each having a pair ID attribute and a backlink attribute; assigning to each pair of complementary interobject links a unique pair ID value; identifying one property of each pair of complementary interobject links as a link property and identifying the other property of each pair of complementary interobject links as a backlink property; locally creating a link database table at each replication location, said link database table having a separate entry for each instance of an interobject reference, wherein each separate entry in the link database table has a pair ID value corresponding to one of the pair ID values defined in the directory schema, a link ID value identifying the object ID of the referencing object, and a backlink ID value identifying the referenced object; modifying at a replication location one of the corresponding object properties for a data object in the directory information base and replicating the change to other replication locations; and locally updating at each replication location the link database table to reflect the modification.
Claim 10
Dependent Claim 51 words
The method of claim 6, further comprising the steps of: searching the link database table for each entry identifying the referenced object by the backlink ID value for that entry; and imputing to the referenced object the name of the referencing object identified by the link value ID for that entry.
Claim 11
Dependent Claim 51 words
The method of claim 7, further comprising the steps of: searching the link database table for each entry identifying the referencing object by the link ID value for that entry; and imputing to the referencing object the name of the referenced object identified by the backlink value ID for that entry.
Claim 12
Dependent Claim 51 words
The method of claim 7, further comprising the steps of: searching the link database table for each entry identifying the referenced object by the backlink ID value for that entry; and imputing to the referenced object the name of the referencing object identified by the link value ID for that entry.
Claim 13
Dependent Claim 199 words
An article of manufacture for use in connection with a computer-based store and forward replication enterprise, wherein individual data objects are contained in a directory information base in which individual data objects are each identified by an object ID and wherein the individual data objects also have one or more corresponding object properties, the article of manufacture comprising: a computer usable medium having computer readable program code means embodied in said medium, said computer readable program code means comprising: means for creating a directory schema that defines paired links, each paired link representing a relationship between two or more objects and each paired link being identified by a unique pair ID; means locally for creating a link database table at each replication location, said link database table having a plurality of individual entries each corresponding to a pair ID so that said link database table contains all relationships which link said objects; means for modifying at a replication location one of the corresponding object properties for a data object in the directory information base and replicating the chance to other replication locations; and means for locally updating at each replication location the link database table to reflect the modification.
Claim 14
Dependent Claim 199 words
An article of manufacture for use in connection with a computer-based store and forward replication enterprise, wherein individual data objects are contained in a directory information base in which individual data objects are each identified by an object ID and wherein the individual data objects also have one or more corresponding object properties, the article of manufacture comprising: a computer usable medium having computer readable program code means embodied in said medium, said computer readable program code means comprising: means for creating a directory schema that defines paired links, each paired link representing a relationship between two or more objects and each paired link being identified by a unique pair ID; means locally for creating a link database table at each replication location, said link database table having a plurality of individual entries each corresponding to a pair ID so that said link database table contains all relationships which link said objects; means for modifying at a replication location one of the corresponding object properties for a data object in the directory information base and replicating the chance to other replication locations; and means for locally updating at each replication location the link database table to reflect the modification.
Claim 15
Dependent Claim 227 words
An article of manufacture for use in connection with a computer-based store and forward replication enterprise, wherein individual data objects are contained in a directory information base in which individual data objects are each identified by an object ID and wherein the individual data objects also have one or more corresponding object properties, the article of manufacture comprising: a computer usable medium having computer readable program code, means embodied in said medium, said computer readable program code means comprising: means for creating a directory schema that defines paired links each paired link comprising a first link and a second link which represent a relationship between two or more objects and wherein the first and second links are logical complements of one another; means for creating a link database table at each replication location, each link database table having a plurality of entries each corresponding to link so that said link database table contains all relationships which link said objects, each entry identifying the ink pair, the object ID of the referencing object, and the object ID of the referenced object; means for modifying at a replication location one of the corresponding object properties for a data object in the directory information base and replicating the change to other replication locations; and means for locally updating at each replication location the link database table to reflect the modification.
Claim 16
Dependent Claim 227 words
An article of manufacture for use in connection with a computer-based store and forward replication enterprise, wherein individual data objects are contained in a directory information base in which individual data objects are each identified by an object ID and wherein the individual data objects also have one or more corresponding object properties, the article of manufacture comprising: a computer usable medium having computer readable program code, means embodied in said medium, said computer readable program code means comprising: means for creating a directory schema that defines paired links each paired link comprising a first link and a second link which represent a relationship between two or more objects and wherein the first and second links are logical complements of one another; means for creating a link database table at each replication location, each link database table having a plurality of entries each corresponding to link so that said link database table contains all relationships which link said objects, each entry identifying the ink pair, the object ID of the referencing object, and the object ID of the referenced object; means for modifying at a replication location one of the corresponding object properties for a data object in the directory information base and replicating the change to other replication locations; and means for locally updating at each replication location the link database table to reflect the modification.
Claim 17
Dependent Claim 90 words
The article of manufacture of claim 10 or 11, wherein program code means further comprises: means for modifying the directory schema to define one or more pairs of complementary interobject links, each having a pair ID attribute and a backlink attribute; means for assigning to each pair of complementary interobject links a unique pair ID value; and means for identifying one property of each pair of complementary interobject links as a link property and identifying the other property of each pair of complementary interobject reference properties as a backlink property.
Claim 18
Dependent Claim 76 words
The article of manufacture of claim 12, wherein the means for creating a link database table comprises means for creating a data table having a separate entry for each instance of an interobject link, each separate entry having a pair ID value corresponding to one of the pair ID values defined in the directory schema, a link ID value identifying the object ID of the referencing object, and a backlink ID value identifying the referenced object.
Claim 19
Dependent Claim 66 words
The article of manufacture of claim 10 or 11, further comprising: means for searching the link database table for each entry identifying the referencing object and for imputing to the referencing object the name of the referenced object; and means for searching the link database table for each entry identifying the referenced object and for imputing to the referenced object the name of the referencing object.
Claim 20
Dependent Claim 55 words
The article of manufacture of claim 10 or 11, wherein the program code means further comprises means for updating, periodically, the link data table in response to deletion of an object by searching the link data table and deleting any entries in the link data table that include the object ID of the deleted object.
Claim 21
Dependent Claim 265 words
An article of manufacture for use in connection with a computer-based store and forward replication enterprise, wherein individual data objects are contained in a directory information base in which individual data objects are each identified by an object ID and wherein the individual data objects also have one or more corresponding object properties, the article of manufacture comprising: a computer usable medium having computer readable program code means embodied in said medium, said computer readable program code means comprising: means for modifying a directory schema to define one or more pairs of complementary interobject links, each having a pair ID attribute and a backlink attribute; means for assigning to each pair of complementary interobject links a unique pair ID value; means for identifying one property of each pair of complementary interobject links as a link property and identifying the other property of each pair of complementary interobject links as a backlink property; means for creating a link database table having a separate entry for each instance of an interobject link, wherein each separate entry in the link database table has a pair ID value corresponding to one of the pair ID values defined in the directory schema, a link ID value identifying the object ID of the referencing object, and a backlink ID value identifying the referenced object; means for modifying at a replication location one of the corresponding object properties for a data object in the directory information base and replicating the change to other replication locations; and means for locally updating at each replication location the link database table to reflect the modification.
Claim 22
Dependent Claim 265 words
An article of manufacture for use in connection with a computer-based store and forward replication enterprise, wherein individual data objects are contained in a directory information base in which individual data objects are each identified by an object ID and wherein the individual data objects also have one or more corresponding object properties, the article of manufacture comprising: a computer usable medium having computer readable program code means embodied in said medium, said computer readable program code means comprising: means for modifying a directory schema to define one or more pairs of complementary interobject links, each having a pair ID attribute and a backlink attribute; means for assigning to each pair of complementary interobject links a unique pair ID value; means for identifying one property of each pair of complementary interobject links as a link property and identifying the other property of each pair of complementary interobject links as a backlink property; means for creating a link database table having a separate entry for each instance of an interobject link, wherein each separate entry in the link database table has a pair ID value corresponding to one of the pair ID values defined in the directory schema, a link ID value identifying the object ID of the referencing object, and a backlink ID value identifying the referenced object; means for modifying at a replication location one of the corresponding object properties for a data object in the directory information base and replicating the change to other replication locations; and means for locally updating at each replication location the link database table to reflect the modification.
Claim 23
Dependent Claim 54 words
The article of manufacture of claim 16, further comprising: means for searching the link database table for each entry identifying the referencing object by the link ID value for that entry; and means for imputing to the referencing object the name of the referenced object identified by the backlink value ID for that entry.
Claim 24
Dependent Claim 54 words
The article of manufacture of claim 16, further comprising: means for searching the link database table for each entry identifying the referenced object by the backlink ID value for that entry; and means for imputing to the referenced object the name of the referencing object identified by the link value ID for that entry.
Claim 25
Dependent Claim 66 words
The article of manufacture of claim 16 wherein the computer readable program code means further comprises means for updating, periodically, the link data table in response to deletion of an object by searching the link data table and deleting any entries in the link data table that include the object ID of the deleted object in either the link ID value or the backlink ID value.

References Cited (Backward Citations)

US5369778A Cited
US5634124A Cited
US5185885A Cited
US5410688A Cited
US5481666A Cited
US5499364A Cited
US5548749A Cited
US5530852A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2001-07-27 2002-01-26 2002-07-28 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2005-07-27 2006-01-26 2006-07-28 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2009-07-27 2010-01-26 2010-07-28 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag