Patent US6061692A successfully refreshed from Google Patents.
← Back to Patent Explorer
US6061692A Expired / Lapsed US ⏱️ 0.0 years remaining

System and method for administering a meta database as an integral component of an information server

Assignee: Microsoft Technology Licensing LLC
•
Filing: 1997-11-04
•
Granted: 2000-05-09
•
Expires: 2017-11-04
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract An information server adapted to service requests for information has an integral database containing configuration information, application information, and/or content information. The information in the database is stored in a hierarchical fashion with elements that correspond, in some degree, with physical storage structure or individual information objects on the information server. Path names received in information requests are broken into constituent components and are used to retrieve configuration information, application information, and/or content information from the database and information objects from physical storage. In the database properties stored at one hierarchical level may be inherited by lower hierarchical levels. The database is preferably provided with a programmatic interface that allows concurrent access to and administration of the database. Mechanisms to notify registered users of changes or events that occur with respect to the database are implemented.

Inventors

  • 👤 Michael W. Thomas
  • 👤 James E. Allard
  • 👤 Michael Howard
  • 👤 Sophia Chung
  • 👤 Cameron Ferroni
  • 👤 Douglas C. Henbenthal
  • 👤 John Ludeman
  • 👤 Kim Stebbens
  • 👤 II Henry L. Sanders
  • 👤 David R. Treadwell, III

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-07 21:16
CPC Classifications
G; G06; G06F; G06F16/00; G06F16/20; G06F16/23; G06F16/2308; G06F16/2336; G06F16/2343; G06F16/25; G06F16/252; H; H04; H04L; H04L67/00; H04L67/01; H04L69/00; H04L69/30; H04L69/32; H04L69/322; H04L69/329; G06F16/24; Y; Y10; Y10S; Y10S707/00; Y10S707/912; Y10S707/918; Y10S707/953; Y10S707/956

Claims Analysis

Total Claims: 42
Claim 1
Independent Claim 172 words
In an information server that has access to a storage medium wherein information objects are stored according to a storage hierarchy and further has access to a database comprising a plurality of key locations that are arranged hierarchically and store metadata, a method for retrieving an information object and metadata associated with the information object, said method comprising the steps of: obtaining a path name comprising a hierarchy of constituent names; resolving said path name into its constituent names; while proceeding from parent to child through the constituent names, performing the steps of: identifying a key location in said database that corresponds to one of the constituent names and retrieving metadata from said identified key location; identifying a storage location in the storage hierarchy of the storage medium that corresponds to another of the constituent names; and resolving a physical location of the information object at the storage medium by using said other of the constituent names and any children constituent names thereof; and retrieving the information object from the physical location.
Claim 2
Dependent Claim 172 words
In an information server that has access to a storage medium wherein information objects are stored according to a storage hierarchy and further has access to a database comprising a plurality of key locations that are arranged hierarchically and store metadata, a method for retrieving an information object and metadata associated with the information object, said method comprising the steps of: obtaining a path name comprising a hierarchy of constituent names; resolving said path name into its constituent names; while proceeding from parent to child through the constituent names, performing the steps of: identifying a key location in said database that corresponds to one of the constituent names and retrieving metadata from said identified key location; identifying a storage location in the storage hierarchy of the storage medium that corresponds to another of the constituent names; and resolving a physical location of the information object at the storage medium by using said other of the constituent names and any children constituent names thereof; and retrieving the information object from the physical location.
Claim 3
Dependent Claim 44 words
A method as recited in claim 1 further comprising the steps of: checking for an indication that the retrieved metadata should be inherited; and if such indication exists then applying said retrieved metadata to subsequent constituent names that are part of said path name.
Claim 4
Dependent Claim 38 words
A method as recited in claim 1 further comprising the step of storing in at least one of said plurality of key locations an access control list that identifies the type of access that clients may be granted.
Claim 5
Dependent Claim 38 words
A method as recited in claim 3 further comprising the step of prior to retrieving said metadata first checking said access control list to determine if a client requesting the information object is authorized for the requested access.
Claim 6
Dependent Claim 23 words
A method as recited in claim 1 further comprising the step of attempting to obtain a read lock prior to retrieving said metadata.
Claim 7
Dependent Claim 54 words
A method as recited in claim 5 wherein said plurality of key locations of said database are arranged in a hierarchical relationship and when said read lock is obtained, all key locations in a child relationship and all key locations in a parent relationship to said identified key location are also locked for reading.
Claim 8
Dependent Claim 42 words
A method as recited in claim 5 wherein said plurality of key locations of said database are arranged in a hierarchical relationship and said read lock is not granted if any other client has a write lock on said identified key location.
Claim 9
Dependent Claim 51 words
A method as recited in claim 1 wherein said database comprises a programmatic interface through which access to said database is allowed and wherein said metadata is retrieved from said identified key location by making an appropriate call into said programmatic interface and receiving the requested metadata through said programmatic interface.
Claim 10
Dependent Claim 49 words
A method as recited in claim 1 wherein at least one of the constituent names corresponds both to at least one of said plurality of key locations and to at least one of either a storage location in the storage hierarchy of the storage medium or the information object.
Claim 11
Dependent Claim 25 words
A method as recited in claim 1 further comprising the step of synchronizing the information in said database with a second copy of said database.
Claim 12
Dependent Claim 56 words
A method as recited in claim 1 wherein at least some of the metadata comprises an indication that the metadata is secure, the method further comprising the steps of: encrypting said secure metadata if said secure metadata is written to disk; and encrypting said secure metadata if said secure metadata is sent outside a trusted environment.
Claim 13
Dependent Claim 41 words
A method as recited in claim 11 further comprising the step of storing in at least one of said plurality of key locations an access control list that identifies the type of access that clients may be granted to said database.
Claim 14
Dependent Claim 45 words
A method as recited in claim 1 further comprising the step of checking said retrieved metadata and based on said retrieved metadata performing at least one of two possible actions such that the action performed is determined at least in part by said retrieved metadata.
Claim 15
Dependent Claim 190 words
In an information server that has access to a storage medium wherein information objects are stored according to a storage hierarchy and further has access to a database comprising a plurality of key locations that are arranged hierarchically and store metadata, a method for responding to a request from a client for retrieval of an information object, said method comprising the steps of: at said information server, receiving from said client said request for said information object, said request including a path name comprising a hierarchy of constituent names; resolving said path name into its constituent names; while proceeding from parent to child through the constituent names, performing the steps of: identifying a key location in said database that corresponds to one of the constituent names and retrieving metadata from said identified key location; identifying a storage location in the storage hierarchy of the storage medium that corresponds to another of the constituent names; and resolving a physical location of the information object at the storage medium by using said other of the constituent names and any children constituent names thereof; and retrieving the information object from the physical location.
Claim 16
Dependent Claim 190 words
In an information server that has access to a storage medium wherein information objects are stored according to a storage hierarchy and further has access to a database comprising a plurality of key locations that are arranged hierarchically and store metadata, a method for responding to a request from a client for retrieval of an information object, said method comprising the steps of: at said information server, receiving from said client said request for said information object, said request including a path name comprising a hierarchy of constituent names; resolving said path name into its constituent names; while proceeding from parent to child through the constituent names, performing the steps of: identifying a key location in said database that corresponds to one of the constituent names and retrieving metadata from said identified key location; identifying a storage location in the storage hierarchy of the storage medium that corresponds to another of the constituent names; and resolving a physical location of the information object at the storage medium by using said other of the constituent names and any children constituent names thereof; and retrieving the information object from the physical location.
Claim 17
Dependent Claim 44 words
A method as recited in claim 14 further comprising the steps of: checking for an indication that the retrieved metadata should be inherited; and if such indication exists then applying said retrieved metadata to subsequent constituent names that are part of said path name.
Claim 18
Dependent Claim 38 words
A method as recited in claim 14 further comprising the step of storing in at least one of said plurality of key locations an access control list that identifies the type of access that clients may be granted.
Claim 19
Dependent Claim 38 words
A method as recited in claim 16 further comprising the step of prior to retrieving said metadata first checking said access control list to determine if a client requesting the information object is authorized for the requested access.
Claim 20
Dependent Claim 22 words
A method as recited in claim 14 further comprising the step attempting to obtain a read lock prior to retrieving said metadata.
Claim 21
Dependent Claim 54 words
A method as recited in claim 18 wherein said plurality of key locations of said database are arranged in a hierarchical relationship and when said read lock is obtained, all key locations in a child relationship and all key locations in a parent relationship to said identified key location are also locked for reading.
Claim 22
Dependent Claim 27 words
A method as recited in claim 18 wherein said read lock is not granted if any other client has a write lock on said identified key location.
Claim 23
Dependent Claim 51 words
A method as recited in claim 14 wherein said database comprises a programmatic interface through which access to said database is allowed and wherein said metadata is retrieved from said identified key location by making an appropriate call into said programmatic interface and receiving the requested metadata through said programmatic interface.
Claim 24
Dependent Claim 49 words
A method as recited in claim 14 wherein at least one of the constituent names corresponds both to at least one of said plurality of key locations and to at least one of either a storage location in the storage hierarchy of the storage medium or the information object.
Claim 25
Dependent Claim 25 words
A method as recited in claim 14 further comprising the step of synchronizing the information in said database with a second copy of said database.
Claim 26
Dependent Claim 56 words
A method as recited in claim 14 wherein at least some of the metadata comprises an indication that the metadata is secure, the method further comprising the steps of: encrypting said secure metadata if said secure metadata is written to disk; and encrypting said secure metadata if said secure metadata is sent outside a trusted environment.
Claim 27
Dependent Claim 45 words
A method as recited in claim 24 further comprising the step of checking said retrieved metadata and based on said retrieved metadata performing at least one of two possible actions such that the action performed is determined at least in part by said retrieved metadata.
Claim 28
Dependent Claim 218 words
In an information server that has access to a storage medium wherein information objects are stored according to a storage hierarchy and further has access to a database comprising a plurality of key locations that are arranged hierarchically and store metadata, a method for retrieving information objects and metadata associated with the information objects, said method comprising the steps of: obtaining a first path name comprising a first hierarchy of constituent names; obtaining a second path name comprising a second hierarchy of constituent names; resolving said first path name and said second path name into their constituent names; for each of the first path name and the second path name, while proceeding from parent to child through the constituent names of the particular path name, performing the steps of: identifying a key location in said database that corresponds to one of the constituent names of the particular path name and retrieving metadata from said identified key location; identifying a storage location in the storage hierarchy of the storage medium that corresponds to another of the constituent names of the particular path name; and resolving a physical location of the information object at the storage medium by using said other of the constituent names and any children constituent names thereof; and retrieving the information objects from the physical locations.
Claim 29
Dependent Claim 218 words
In an information server that has access to a storage medium wherein information objects are stored according to a storage hierarchy and further has access to a database comprising a plurality of key locations that are arranged hierarchically and store metadata, a method for retrieving information objects and metadata associated with the information objects, said method comprising the steps of: obtaining a first path name comprising a first hierarchy of constituent names; obtaining a second path name comprising a second hierarchy of constituent names; resolving said first path name and said second path name into their constituent names; for each of the first path name and the second path name, while proceeding from parent to child through the constituent names of the particular path name, performing the steps of: identifying a key location in said database that corresponds to one of the constituent names of the particular path name and retrieving metadata from said identified key location; identifying a storage location in the storage hierarchy of the storage medium that corresponds to another of the constituent names of the particular path name; and resolving a physical location of the information object at the storage medium by using said other of the constituent names and any children constituent names thereof; and retrieving the information objects from the physical locations.
Claim 30
Dependent Claim 175 words
A computer system comprising: a database comprising a plurality of key locations arranged in a hierarchical relationship, said plurality of key locations representing storage locations where metadata may be stored; a plurality of information objects that can be accessed and returned to a requesting client; and a computer-readable medium having computer-executable instructions that include: means for receiving a path name comprising a hierarchy of constituent names from a client; means for resolving said path name into its constituent names; means for retrieving said metadata from said database using a first constituent name of the path name and for accessing and returning an information object using a second constituent name of the path name in response the path name being received from the client, said means for retrieving comprising means for interpreting properties included in the metadata retrieved from said database such that said means for retrieving can perform actions based on the properties; and means for providing a programmatic interface to said database such that access to said database in obtained through said programmatic interface.
Claim 31
Dependent Claim 175 words
A computer system comprising: a database comprising a plurality of key locations arranged in a hierarchical relationship, said plurality of key locations representing storage locations where metadata may be stored; a plurality of information objects that can be accessed and returned to a requesting client; and a computer-readable medium having computer-executable instructions that include: means for receiving a path name comprising a hierarchy of constituent names from a client; means for resolving said path name into its constituent names; means for retrieving said metadata from said database using a first constituent name of the path name and for accessing and returning an information object using a second constituent name of the path name in response the path name being received from the client, said means for retrieving comprising means for interpreting properties included in the metadata retrieved from said database such that said means for retrieving can perform actions based on the properties; and means for providing a programmatic interface to said database such that access to said database in obtained through said programmatic interface.
Claim 32
Dependent Claim 41 words
A computer system as recited in claim 27 wherein said database further comprises access control means for identifying the type of access to at least one of either said database or an information object that is to be granted certain clients.
Claim 33
Dependent Claim 83 words
A computer system as recited in claim 27 wherein said computer-executable instructions further include means for placing read locks at key locations, said read locks comprising at least a first type of read lock and a second type of read lock, said first type of read lock being placed on an identified key location and key locations in a child relationship thereto and said second type of read lock being placed on key locations in a parent relationship to said identified key location.
Claim 34
Dependent Claim 109 words
A computer system as recited in claim 27 wherein said computer-executable instructions further include means for placing write locks at key locations, said write locks comprising at least a first type of write lock and a second type of write lock, said first type of write lock being placed on an identified key location and key locations in a child relationship thereto and said second type of write lock being placed on key locations in a parent relationship to said identified key location, said first type of write lock granting the right to write data and said second type of write lock not granting the right to write data.
Claim 35
Dependent Claim 37 words
A computer system as recited in claim 27 wherein said metadata comprise an indicator that allows said metadata to be inherited by key locations in a child relationship to the key location where said metadata is stored.
Claim 36
Dependent Claim 32 words
A computer system as recited in claim 31 wherein metadata stored in a designated key location can override metadata inherited from key locations in a parent relationship with said designated key location.
Claim 37
Dependent Claim 26 words
A computer system as recited in claim 27 wherein said computer-executable instructions further include means for synchronizing said database with a second copy of said database.
Claim 38
Dependent Claim 53 words
A computer system as recited in claim 27 wherein said computer-executable instructions further include means for storing secure data in said database, said secure data being encrypted whenever said secure data is written outside of system memory and said secure data being encrypted whenever said secure data is sent outside a trusted environment.
Claim 39
Dependent Claim 31 words
A computer system as recited in claim 27 wherein said computer-executable instructions further include means for allowing write access to said database by a first administrator and a second administrator simultaneously.
Claim 40
Dependent Claim 45 words
A computer system as recited in claim 35 wherein said computer-executable instructions further include means for sending notification to said first administrator when said second administrator releases write access and means for second notification to said second administrator when said first administrator releases write access.
Claim 41
Dependent Claim 22 words
A computer system as recited in claim 27 wherein said computer-executable instructions further include means for allowing remote administration of said database.
Claim 42
Dependent Claim 25 words
A computer system as recited in claim 27 wherein said computer-executable instructions further include means for sending notification to identified clients when designated events occur.

References Cited (Backward Citations)

US5745752A Cited
US5758154A Cited
US5878415A Cited
US5991777A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2003-05-09 2003-11-08 2004-05-09 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2007-05-09 2007-11-08 2008-05-09 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2011-05-09 2011-11-08 2012-05-09 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag