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

Method and system for referring to and binding to objects using identifier objects

Assignee: Microsoft Technology Licensing LLC
•
Filing: 1997-08-20
•
Granted: 2001-07-17
•
Expires: 2017-08-20
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and system for referring to and binding to objects using a moniker object is provided. In a preferred embodiments moniker object contains information to identify linked source data and provides methods through which a program can bind to the linked source data. A binding method is provided that returns an instance of an interface through which the linked source data can be accessed. The moniker object can identify source data that is stored persistently or nonpersistently. In addition, moniker objects can be composed to form a composite moniker object. A composite moniker object is used to identify linked source data that is nested in other data. In a preferred embodiment, the moniker object provides other methods including a reducing method that returns a more efficient representation of the moniker object; equality and hash methods for comparing moniker objects; and inverse, common prefix, and relative-path-to methods for comparing and locating moniker objects from other moniker objects. Several implementations of a moniker object are provided including a file moniker, an item moniker, a generic composite moniker, a pointer moniker, and an anti moniker. Each implementation is a moniker class and has a class identifier that identifies code to manage the moniker class.

Inventors

  • 👤 Robert G. Atkinson
  • 👤 Antony S. Williams
  • 👤 Edward K. Jung

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-02 22:08
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/30; G06F9/44; G06F9/448; G06F9/4488; G06F9/449; G06F16/00; G06F16/20; G06F16/28; G06F16/289; G06F16/90; G06F16/93; G06F40/00; G06F40/10; G06F40/12; G06F40/131; G06F40/134; G06F40/137; G06F40/166; G06F40/174; G06F40/177; G06F40/18; G06F9/46; G06F9/465; G06F9/54; G06F9/543; Y; Y10; Y10S; Y10S707/00; Y10S707/99941; Y10S707/99944

Claims Analysis

Total Claims: 25
Claim 1
Independent Claim 94 words
In a computer system, a computer-implemented method for binding to source data, the method comprising: providing an identifier object, the identifier object having naming information that identifies source data of a data type, wherein the identifier object has binding code that, when invoked, binds by locating a server object associated with the data type and connecting to the source data identified by the naming information; invoking the binding code of the identifier object to bind to the source data; and when the binding code is invoked, returning an indicator of the bound source data.
Claim 2
Dependent Claim 94 words
In a computer system, a computer-implemented method for binding to source data, the method comprising: providing an identifier object, the identifier object having naming information that identifies source data of a data type, wherein the identifier object has binding code that, when invoked, binds by locating a server object associated with the data type and connecting to the source data identified by the naming information; invoking the binding code of the identifier object to bind to the source data; and when the binding code is invoked, returning an indicator of the bound source data.
Claim 3
Dependent Claim 99 words
The method of claim 1 wherein the source data is stored in a file, wherein the naming information that identifies the source data is a file name, the file name indicating the data type of the source data stored within the file, and wherein the binding code of the identifier object, when invoked, instantiates the server object associated with the data type indicated by the file name stored as the naming information, requests the instantiated server object to load the source data from the file referred to by the file name, and returns a reference to the loaded data.
Claim 4
Dependent Claim 16 words
The method of claim 1 , further comprising storing the identifier object in a persistent medium.
Claim 5
Dependent Claim 75 words
In a computer system, a computer-implemented method of binding to source data having associated persistent storage for containing the source data, the method comprising: providing an identifier object, the identifier object having binding code; storing a reference to the source data in the identifier object as naming information; and accessing the source data by invoking the binding code of the identifier object to obtain an indicator of the persistent storage associated with the source data.
Claim 6
Dependent Claim 75 words
In a computer system, a computer-implemented method of binding to source data having associated persistent storage for containing the source data, the method comprising: providing an identifier object, the identifier object having binding code; storing a reference to the source data in the identifier object as naming information; and accessing the source data by invoking the binding code of the identifier object to obtain an indicator of the persistent storage associated with the source data.
Claim 7
Dependent Claim 152 words
In a computer system, a computer-implemented method for binding to a source object, the source object being identified by a composite identifier object, the composite identifier object having a first identifier object and a second identifier object, the method comprising: when binding code of a composite identifier object is invoked by a client, invoking binding code of a second identifier object passing a reference to a first identifier object; and when binding code of the second identifier object is invoked, invoking binding code of the first identifier object to bind to a container object referred to by the first identifier object; receiving a reference to the bound container object referred to by the first identifier object; using the received reference to the bound container object to locate and connect to an item referred to by the second identifier object, thereby binding to the source object referred to by the composite identifier object.
Claim 8
Dependent Claim 152 words
In a computer system, a computer-implemented method for binding to a source object, the source object being identified by a composite identifier object, the composite identifier object having a first identifier object and a second identifier object, the method comprising: when binding code of a composite identifier object is invoked by a client, invoking binding code of a second identifier object passing a reference to a first identifier object; and when binding code of the second identifier object is invoked, invoking binding code of the first identifier object to bind to a container object referred to by the first identifier object; receiving a reference to the bound container object referred to by the first identifier object; using the received reference to the bound container object to locate and connect to an item referred to by the second identifier object, thereby binding to the source object referred to by the composite identifier object.
Claim 9
Dependent Claim 94 words
A computer-implemented method in a computer system of creating an object that refers to a source object that is stored in memory of the computer system, the source object having a pointer, the method comprising: creating an instance of an identifier object of an identifier class, the identifier class having a binding member function that, when invoked, binds to the source object by locating and accessing the source object; storing the pointer to the source object in the created identifier object for use by the binding member function to bind to the source object.
Claim 10
Dependent Claim 94 words
A computer-implemented method in a computer system of creating an object that refers to a source object that is stored in memory of the computer system, the source object having a pointer, the method comprising: creating an instance of an identifier object of an identifier class, the identifier class having a binding member function that, when invoked, binds to the source object by locating and accessing the source object; storing the pointer to the source object in the created identifier object for use by the binding member function to bind to the source object.
Claim 11
Dependent Claim 12 words
The method of claim 6 wherein the pointer is a memory address.
Claim 12
Dependent Claim 61 words
In a computer system, a computer-implemented method of creating an object that refers to a source object, the method comprising: creating an identifier object, the identifier object having binding code that, when invoked, binds to the source object; marshalling a reference from an object that provides naming information of the source object; storing the marshalled reference in the created identifier object.
Claim 13
Dependent Claim 61 words
In a computer system, a computer-implemented method of creating an object that refers to a source object, the method comprising: creating an identifier object, the identifier object having binding code that, when invoked, binds to the source object; marshalling a reference from an object that provides naming information of the source object; storing the marshalled reference in the created identifier object.
Claim 14
Dependent Claim 27 words
The method of claim 8 wherein the object that provides the naming information is instantiated in a process different from the process that created the identifier object.
Claim 15
Dependent Claim 31 words
The method of claim 8 including binding to the source object by executing the binding code wherein the marshalled reference is used to retrieve the naming information of the source object.
Claim 16
Dependent Claim 134 words
In a computer system, a computer-implemented method of encapsulating access to file data of a file data type with a first object, the first object supporting binding with a second object operative to process file data of the file data type, the method comprising: creating a first object for filed data, the first object encapsulating access to the file data; with the first object, determining a file data type of the file data; with the first object, identifying a second object operative to process data of the determined file data type, wherein said identifying occurs by locating the second object in a registry; creating the second object; and associating the file data with the second object, whereby the file data is made accessible to the second object by binding supported through the first object.
Claim 17
Dependent Claim 134 words
In a computer system, a computer-implemented method of encapsulating access to file data of a file data type with a first object, the first object supporting binding with a second object operative to process file data of the file data type, the method comprising: creating a first object for filed data, the first object encapsulating access to the file data; with the first object, determining a file data type of the file data; with the first object, identifying a second object operative to process data of the determined file data type, wherein said identifying occurs by locating the second object in a registry; creating the second object; and associating the file data with the second object, whereby the file data is made accessible to the second object by binding supported through the first object.
Claim 18
Dependent Claim 32 words
The method of claim 11 wherein determining a file data type comprises: determining a file name for the file data; determining the file data type from a suffix of the file name.
Claim 19
Dependent Claim 22 words
The method of claim 11 wherein associating the file data with the second object comprises loading the file data from persistent storage.
Claim 20
Dependent Claim 121 words
In a computer system, a computer-implemented method of encapsulating access to arbitrary data with a first object, the first object supporting the mapping of data types to appropriate objects for the data types for binding, the method comprising: creating a first object for arbitrary data, the first object encapsulating access to the arbitrary data; with the first object, determining a second object operative to process the arbitrary data, wherein said determining considers a data type of the arbitrary data; creating the second object; and associating the arbitrary data with the second object, whereby the arbitrary data is made accessible to the second object by a mapping of data types to appropriate objects for the data types supported through the first object.
Claim 21
Dependent Claim 121 words
In a computer system, a computer-implemented method of encapsulating access to arbitrary data with a first object, the first object supporting the mapping of data types to appropriate objects for the data types for binding, the method comprising: creating a first object for arbitrary data, the first object encapsulating access to the arbitrary data; with the first object, determining a second object operative to process the arbitrary data, wherein said determining considers a data type of the arbitrary data; creating the second object; and associating the arbitrary data with the second object, whereby the arbitrary data is made accessible to the second object by a mapping of data types to appropriate objects for the data types supported through the first object.
Claim 22
Dependent Claim 20 words
The method of claim 14 wherein determining the second object comprises locating the second object through a registry look up.
Claim 23
Dependent Claim 29 words
The method of claim 14 further comprising: before determining the second object, determining a name for the arbitrary data; determining the data type from a suffix of the name.
Claim 24
Dependent Claim 123 words
In a computer system, a computer-implemented method of accessing arbitrary data through a first object that encapsulates access to the arbitrary data, the first object supporting the mapping of data types to appropriate objects for the data types for binding, the method comprising: receiving by a client a reference to a first object for arbitrary data; sending by the client a request to the first object, wherein the first object determines an appropriate second object responsive to the request for operating upon the arbitrary data, wherein said determining considers a data type of the arbitrary data; creating the second object by the client; associating the arbitrary data with the second object; and accessing the arbitrary data by the client through the second object.
Claim 25
Dependent Claim 123 words
In a computer system, a computer-implemented method of accessing arbitrary data through a first object that encapsulates access to the arbitrary data, the first object supporting the mapping of data types to appropriate objects for the data types for binding, the method comprising: receiving by a client a reference to a first object for arbitrary data; sending by the client a request to the first object, wherein the first object determines an appropriate second object responsive to the request for operating upon the arbitrary data, wherein said determining considers a data type of the arbitrary data; creating the second object by the client; associating the arbitrary data with the second object; and accessing the arbitrary data by the client through the second object.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2004-07-16 2005-01-15 2005-07-17 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2008-07-16 2009-01-15 2009-07-17 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2012-07-16 2013-01-15 2013-07-17 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag