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

System and method for providing interoperability among heterogeneous object systems

Assignee: Information Builders Inc
•
Filing: 1994-09-15
•
Granted: 1998-03-24
•
Expires: 2014-09-15
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A system and method in accordance with a preferred embodiment enable objects from two or more heterogeneous object systems in a digital computer to interoperate and be combined in the creation of a larger object-oriented software project, as well as uses of such system and method. Objects from a foreign object system are unmodified, yet appear to be native to the object system in which they are used or accessed. A native proxy object (indistinguishable from other native objects) is constructed for the real foreign object. The proxy object contains an identifier to the real object, as well as a pointer to a software description of how to access and manipulate the object--e.g. how to call its methods, set its properties, and handle exceptions. When the proxy object is manipulated, it follows the instructions in the software description which, in turn, results in the corresponding manipulation of the foreign object.

Inventors

  • 👤 Daniel M. Foody
  • 👤 Michael A. Foody

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-28 17:33
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/46; G06F9/465; G06F2209/00; G06F2209/46; G06F2209/461

Claims Analysis

Total Claims: 110
Claim 1
Independent Claim 143 words
A device, for use in a digital computer system which provides for objects of first and second object models and corresponding first and second object systems using respective first and second implementations to implement, respectively, the first and second object models, the device for enabling the first object system to use objects of the second object model, the device comprising: description means for providing a description of an object of the second object model; proxy means for creating a proxy object that is an object of the first object system and that corresponds to the object of the second object model; receiving means for receiving a manipulation of the proxy object, the maximum rotation conforming to the first implementation; and forwarding means for forwarding the manipulation of the proxy object to the corresponding object of the second object model by utilizing the description.
Claim 2
Independent Claim 143 words
A device, for use in a digital computer system which provides for objects of first and second object models and corresponding first and second object systems using respective first and second implementations to implement, respectively, the first and second object models, the device for enabling the first object system to use objects of the second object model, the device comprising: description means for providing a description of an object of the second object model; proxy means for creating a proxy object that is an object of the first object system and that corresponds to the object of the second object model; receiving means for receiving a manipulation of the proxy object, the maximum rotation conforming to the first implementation; and forwarding means for forwarding the manipulation of the proxy object to the corresponding object of the second object model by utilizing the description.
Claim 3
Dependent Claim 78 words
A device according to claim 1, for enabling the first object system to use objects of a plurality of object models, wherein: (a) the proxy means comprises means for creating a plurality of proxy objects, each proxy being an object of the first object system and corresponding with an object of one of the plurality of object models; and (b) the forwarding means comprises means for forwarding manipulations of one of the proxy objects to its corresponding object.
Claim 4
Dependent Claim 37 words
A device according to claim 2, wherein the device includes means for adding or removing support for object systems and object models, said means for adding or removing support adding or removing support without compiling the device.
Claim 5
Dependent Claim 93 words
A device according to claim 2, further comprising a traditional application or object class construction environment, said environment comprising at least one of: means for subclassing from object classes of a plurality of object systems; means for utilizing or incorporating object classes of a plurality of object systems; means for instantiating and embedding object instances of a plurality of object systems; means for constructing objects which can be used according to implementations of a plurality of object systems; means for relocating object classes and objects among application processes, server processes and object systems.
Claim 6
Dependent Claim 145 words
A device according to claim 1, wherein the forwarding means further comprises: means for transferring control flow from the digital computer system to the device; means for retrieving semantic information from a call stack of the digital computer system, the semantic information and call stack being in accordance with the proxy object and the first implementation; means for placing the semantic information on a second call stack in accordance with the description of the object of the second object model; means for manipulating the corresponding object in accordance with the manipulation of the proxy object; means for retrieving semantic return information from the second call stack in accordance with the description of the object of the second object model; and means for placing the semantic return information on the call stack of the digital computer in accordance with the proxy object and the first implementation.
Claim 7
Dependent Claim 32 words
A device according to claim 5, wherein the means for retrieving semantic information further comprises means for associating the proxy object with the description of the object of the second object model.
Claim 8
Dependent Claim 43 words
A device according to claim 6, wherein the means for placing semantic information on the call stack further comprises means for traversing the description of the object of the second object model, the description of the object not being compiled into the device.
Claim 9
Dependent Claim 45 words
A device according to claim 5, wherein the means for placing semantic information on the call stack further comprises means for converting semantic types and language types from those used in the first implementation to corresponding semantic types and language types of the second implementation.
Claim 10
Dependent Claim 34 words
A device according to claim 8, wherein the means for converting semantic types and language types further comprises: means for converting between object types; and means for triggering creation of a new proxy object.
Claim 11
Dependent Claim 84 words
A device according to claim 1, wherein the device further comprises at least one of: means for mapping between fundamental calling mechanisms; and means for mapping between low-level calling conventions, wherein said means for mapping between low-level calling conventions is used in combination with at least one of: means for mapping between differences in semantic types; means for dynamically constructing proxy objects when required; means for mapping between differences in errors and exceptions; and means for mapping between differences in querying for object information.
Claim 12
Dependent Claim 23 words
A device according to claim 1, wherein the device further comprises means for mapping between different fundamental calling mechanisms of different object systems.
Claim 13
Dependent Claim 27 words
A device according to claim 1, wherein the device further comprises means for mapping between fundamental calling mechanisms and means for mapping between differences in language types.
Claim 14
Dependent Claim 35 words
A device according to claim 1, further comprising means for enabling the first object system to use features that are provided by the second object system, but are not provided by the first object system.
Claim 15
Dependent Claim 36 words
A device according to claim 1, further comprising means for using features provided by the first object system which require functionality of the proxy object, where such functionality is not implemented by the second object system.
Claim 16
Dependent Claim 61 words
A device according to claim 14, wherein the means for using features further comprises: means for associating an object with one or more elements of the description; and means for delegating execution of a feature by the proxy object to the associated object either before responding to a manipulation, instead of responding to a manipulation, or after responding to a manipulation.
Claim 17
Dependent Claim 19 words
A device according to claim 1, where the corresponding object is implemented using an interpreted language environment or runtime.
Claim 18
Independent Claim 130 words
A method, for use in a digital computer system which provides for objects of first and second object models and corresponding first and second object systems using respective first and second implementations to implement, respectively, the first and second object models, said method for enabling the first object system to use objects of the second object model, the method comprising: providing a description of an object of the second object model; creating a proxy object that is an object of the first object system and that corresponds to the object of the second object model; receiving a manipulation of the proxy object, the manipulation conforming to the first implementation; and forwarding the manipulation of the proxy object to the corresponding object of the second object model by utilizing the description.
Claim 19
Independent Claim 130 words
A method, for use in a digital computer system which provides for objects of first and second object models and corresponding first and second object systems using respective first and second implementations to implement, respectively, the first and second object models, said method for enabling the first object system to use objects of the second object model, the method comprising: providing a description of an object of the second object model; creating a proxy object that is an object of the first object system and that corresponds to the object of the second object model; receiving a manipulation of the proxy object, the manipulation conforming to the first implementation; and forwarding the manipulation of the proxy object to the corresponding object of the second object model by utilizing the description.
Claim 20
Dependent Claim 73 words
A method according to claim 17, for enabling the first object system to use objects of a plurality of object models, wherein: the creating step comprises creating a plurality of proxy objects, each one being an object of the first object system and corresponding with an object of one of the plurality of object models; and the forwarding step comprises forwarding a manipulation of one of the proxy objects to its corresponding object.
Claim 21
Dependent Claim 25 words
A method according to claim 18, further comprising the step of organizing objects and classes from a plurality of object systems into a unified namespace.
Claim 22
Dependent Claim 75 words
A method according to claim 18, further comprising at least one of the steps of: subclassing from object classes of a plurality of object systems; utilizing or incorporating object classes of a plurality of object systems; instantiating and embedding object instances of a plurality of object systems; relocating object classes and objects among application processes, server processes and object systems; and constructing objects which can be used by implementations of a plurality of object systems.
Claim 23
Dependent Claim 134 words
A method according to claim 17, wherein the forwarding step further comprises: transferring control flow from the digital computer system to the device; retrieving semantic information from a call stack of the digital computer system, the semantic information and the call stack being in accordance with the proxy object and the first implementation; placing the semantic information on a second call stack in accordance with a description of the object of the second object model; manipulating the corresponding object in accordance with the manipulation of the proxy object; retrieving semantic return information from the second call stack in accordance with the description of the object of the second object model; and placing the semantic return information on the call stack of the digital computer in accordance with the proxy object and the first implementation.
Claim 24
Dependent Claim 27 words
A method according to claim 21, wherein the creating step further comprises associating the proxy object with the description of the object of the second object model.
Claim 25
Dependent Claim 27 words
A method according to claim 21, wherein the placing step further comprises converting semantic and language types from the first object system to the second object system.
Claim 26
Dependent Claim 30 words
A method according to claim 23, wherein the step of converting semantic and language types further comprises: converting between object types; and triggering a creation of a new proxy object.
Claim 27
Dependent Claim 66 words
A method according to claim 17, further comprising: mapping between fundamental calling mechanisms; and mapping between low-level calling conventions, wherein said mapping between low-level calling conventions is performed in combination with at least one of the steps of: mapping between differences in semantic types; dynamically constructing proxy objects when required; mapping between differences in errors and exceptions; and mapping between differences in querying for object information.
Claim 28
Dependent Claim 18 words
A method according to claim 17, further comprising mapping between different fundamental calling mechanisms of different object systems.
Claim 29
Dependent Claim 23 words
A method according to claim 17, further comprising the steps of mapping between fundamental calling mechanisms and mapping between differences in language types.
Claim 30
Dependent Claim 36 words
A method according to claim 17, further comprising the step of enabling the first object system to use features that are provided by the second object system, but are not provided by the first object system.
Claim 31
Dependent Claim 40 words
A method according to claim 17, further comprising the step of using features provided by the first object system which require functionality of the proxy object in the case that such functionality is not implemented by the second object system.
Claim 32
Dependent Claim 56 words
A method according to claim 29, wherein the step of using features comprises: associating an object with one or more elements of the description; and delegating execution of a feature by the proxy object to the associated object either before responding to a manipulation, instead of responding to a manipulation, or after responding to a manipulation.
Claim 33
Dependent Claim 19 words
A method according to claim 17, wherein the corresponding object is implemented using an interpreted language environment or runtime.
Claim 34
Dependent Claim 154 words
Computer-executable process steps stored on a computer-readable medium, the steps for use in a digital computer system which provides for objects of first and second object models and corresponding first and second object systems using respective first and second implementations to implement, respectively, the first and second object models, the steps for enabling the first object system to use objects of the second object model, the steps comprising: a providing step to provide a description of an object of the second object model; a creating step to create a proxy object that is an object of the first object system and that corresponds to the object of the second object model; a receiving step to receive a manipulation of the proxy object, the manipulation conforming to the first implementation; and a forwarding step to forward the manipulation of the proxy object to the corresponding object of the second object model by utilizing the description.
Claim 35
Dependent Claim 154 words
Computer-executable process steps stored on a computer-readable medium, the steps for use in a digital computer system which provides for objects of first and second object models and corresponding first and second object systems using respective first and second implementations to implement, respectively, the first and second object models, the steps for enabling the first object system to use objects of the second object model, the steps comprising: a providing step to provide a description of an object of the second object model; a creating step to create a proxy object that is an object of the first object system and that corresponds to the object of the second object model; a receiving step to receive a manipulation of the proxy object, the manipulation conforming to the first implementation; and a forwarding step to forward the manipulation of the proxy object to the corresponding object of the second object model by utilizing the description.
Claim 36
Dependent Claim 32 words
Computer-executable process steps according to claim 32, wherein the creating step further comprises an associating step to associate the proxy object with the description of the object of the second object model.
Claim 37
Dependent Claim 82 words
Computer-executable process steps according to claim 32, for enabling the first object system to use objects of a plurality of object systems, wherein: the creating step comprises a creating step to create a plurality of proxy objects, each proxy being an object of the first object system and corresponding to an object of one of the plurality of object models, and the forwarding step comprises a forwarding step to forward a manipulation of one of the proxy objects to its corresponding object.
Claim 38
Dependent Claim 26 words
Computer-executable process steps according to claim 34, further comprising the step of organizing objects and classes from a plurality of object systems into a unified namespace.
Claim 39
Dependent Claim 94 words
Computer-executable process steps according to claim 34, further comprising at least one of the steps of: a subclassing step to subclass from object classes of a plurality of object systems; a utilizing step to utilize or incorporate object classes of a plurality of object systems; and an instantiating step to instantiate and embed object instances of a plurality of object systems; a relocating step to relocate object classes and objects among application processes and object systems; a constructing step to construct objects which can be used by implementations of a plurality of object systems.
Claim 40
Dependent Claim 20 words
Computer-executable process steps according to claim 36, wherein the corresponding object is implemented using an interpreted language environment or runtime.
Claim 41
Dependent Claim 162 words
Computer-executable process steps according to claim 32, wherein the forwarding step further comprises: a transferring step to transfer control flow from the digital computer system to the device; a first retrieving step to retrieve semantic information from a call stack of the digital computer system, the semantic information and the call stack being in accordance with the proxy object and the first implementation; a first placing step to place the semantic information on a call stack in accordance with a description of the object of the second object model; a manipulating step to manipulate the corresponding object in accordance with the manipulation of the proxy object; a second retrieving step for retrieving semantic return information from the second call stack in accordance with the description of the object of the second object model; and a second placing step for placing the semantic return information on the call stack of the digital computer in accordance with the proxy object and the first implementation.
Claim 42
Dependent Claim 34 words
Computer-executable process steps according to claim 32, wherein the first placing step further comprises a converting step to convert semantic types and language types from the first object system to the second object system.
Claim 43
Dependent Claim 40 words
Computer-executable process steps according to claim 32, wherein the converting step to convert semantic types and language types further comprises: a converting step to convert between object types; and a triggering step to trigger creation of a new proxy object.
Claim 44
Dependent Claim 91 words
Computer-executable process steps according to claim 32, further comprising: a mapping step to map between fundamental calling mechanisms; and a mapping step to map between low-level calling conventions, wherein said mapping between low-level calling conventions is performed in combination with at least one of the steps of: a mapping step to map between differences in semantic types; a constructing step to dynamically construct proxy objects when required; a mapping step to map between differences in errors and exceptions; and a mapping step to map between differences in querying for object information.
Claim 45
Dependent Claim 23 words
Computer-executable process steps according to claim 32, further comprising a mapping step to map between different fundamental calling mechanisms of different object systems.
Claim 46
Dependent Claim 29 words
Computer-executable process steps according to claim 32, further comprising a mapping step to map between fundamental calling mechanisms and a mapping step to map between differences in language types.
Claim 47
Dependent Claim 32 words
Computer-executable process steps according to claim 32, further comprising a using step to use features that are provided by the second object system but are not provided by the first object system.
Claim 48
Dependent Claim 42 words
Computer-executable process steps according to claim 32, further comprising a using step to use features provided by the first object system which require functionality of the proxy object in the case that such functionality is not implemented by the second object system.
Claim 49
Dependent Claim 65 words
Computer-executable process steps according to claim 45, wherein the step of using features comprises: an associating step to associate an object with one or more elements of the description; and a delegating step to delegate execution of a feature by the proxy object to the associated object either before acting on a manipulation, instead of acting on a manipulation, or after acting on a manipulation.
Claim 50
Independent Claim 151 words
A device, for use in a digital computer system providing objects of first and second object systems using respective first and second implementations which implement respective first and second object models, the device for enabling the first object system to use an object of the second object system, the device comprising: description means for providing a description of object aspects, object system aspects and object manipulations, said description describing first semantic types, first aspects, or first implementations that are supported by the first object system and not by the second object system and describing second semantic types, second aspects or second implementations supported by the second object system and not by the first object system; and forwarding means for forwarding a manipulation of a first object, the manipulation in accordance with the first implementation, to the second object by utilizing the description, wherein the first object corresponds to the second object.
Claim 51
Independent Claim 151 words
A device, for use in a digital computer system providing objects of first and second object systems using respective first and second implementations which implement respective first and second object models, the device for enabling the first object system to use an object of the second object system, the device comprising: description means for providing a description of object aspects, object system aspects and object manipulations, said description describing first semantic types, first aspects, or first implementations that are supported by the first object system and not by the second object system and describing second semantic types, second aspects or second implementations supported by the second object system and not by the first object system; and forwarding means for forwarding a manipulation of a first object, the manipulation in accordance with the first implementation, to the second object by utilizing the description, wherein the first object corresponds to the second object.
Claim 52
Dependent Claim 38 words
A device according to claim 47, wherein the forwarding means comprises mapping means to map the first semantic types and the first implementations to the second semantic types and the second implementations dynamically during execution of the device.
Claim 53
Dependent Claim 42 words
A device according to claim 47, wherein the forwarding means comprises mapping means to build steps for mapping the first semantic types and first implementations to the second semantic types and second implementations and execution means for executing the steps for mapping.
Claim 54
Independent Claim 143 words
A method, for use in a digital computer system providing objects of first and second object systems using respective first and second implementations which implement respective first and second object models, the method for enabling the first object system to use an object of the second object system, the method comprising the steps of: providing a description of object aspects, object system aspects and object manipulations, said description describing first semantic types or first implementations that are supported by the first object system and not by the second object system and describing second semantic types or second implementations supported by the second object system and not by the first object system; and forwarding a manipulation of a first object, the manipulation conforming to the first implementation, to the second object by utilizing the description, wherein the first object corresponds to the second object.
Claim 55
Independent Claim 143 words
A method, for use in a digital computer system providing objects of first and second object systems using respective first and second implementations which implement respective first and second object models, the method for enabling the first object system to use an object of the second object system, the method comprising the steps of: providing a description of object aspects, object system aspects and object manipulations, said description describing first semantic types or first implementations that are supported by the first object system and not by the second object system and describing second semantic types or second implementations supported by the second object system and not by the first object system; and forwarding a manipulation of a first object, the manipulation conforming to the first implementation, to the second object by utilizing the description, wherein the first object corresponds to the second object.
Claim 56
Dependent Claim 35 words
A method according to claim 50, wherein the forwarding step comprises mapping the first semantic types and the first implementations to the second semantic types and the second implementations dynamically during execution of the method.
Claim 57
Dependent Claim 36 words
A method according to claim 50, wherein the forwarding step comprises building steps for mapping the first semantic types and first implementations to the second semantic types and second implementations and executing the steps for mapping.
Claim 58
Dependent Claim 159 words
Computer-executable process steps stored on a computer-readable medium, the steps for use in a digital computer system providing objects of first and second object systems using respective first and second implementations which implement respective first and second object models, the steps for enabling the first object system to use an object of the second object system, the steps comprising the steps of: a providing step to provide a description of object aspects, object system aspects and object manipulations, said description describing first semantic types or first implementations that are supported by the first object system and not by the second object system and describing second semantic types or second implementations supported by the second object system and not by the first object system; and a forwarding step to forward a manipulation of the first object, the manipulation conforming to the first implementation, to the second object by utilizing the description, wherein the first object corresponds to the second object.
Claim 59
Dependent Claim 159 words
Computer-executable process steps stored on a computer-readable medium, the steps for use in a digital computer system providing objects of first and second object systems using respective first and second implementations which implement respective first and second object models, the steps for enabling the first object system to use an object of the second object system, the steps comprising the steps of: a providing step to provide a description of object aspects, object system aspects and object manipulations, said description describing first semantic types or first implementations that are supported by the first object system and not by the second object system and describing second semantic types or second implementations supported by the second object system and not by the first object system; and a forwarding step to forward a manipulation of the first object, the manipulation conforming to the first implementation, to the second object by utilizing the description, wherein the first object corresponds to the second object.
Claim 60
Dependent Claim 36 words
Computer-executable process steps according to claim 53, wherein the forwarding step comprises mapping the first semantic types and the first implementations to the second semantic types and the second implementations dynamically during execution of the method.
Claim 61
Dependent Claim 37 words
Computer-executable process steps according to claim 53, wherein the forwarding step comprises building steps for mapping the first semantic types and first implementations to the second semantic types and second implementations and executing the steps for mapping.
Claim 62
Independent Claim 90 words
A method for utilizing a foreign object of a foreign object model implemented by a foreign object system in the case that the foreign object is called by a native object system implementing a native object model, the method comprising the steps of: creating a proxy object of the native object model, said proxy object corresponding to the foreign object; extracting semantically meaningful information from a call stack of the native system; transferring the semantically meaningful information to a call stack of the foreign system; and calling the foreign object.
Claim 63
Independent Claim 90 words
A method for utilizing a foreign object of a foreign object model implemented by a foreign object system in the case that the foreign object is called by a native object system implementing a native object model, the method comprising the steps of: creating a proxy object of the native object model, said proxy object corresponding to the foreign object; extracting semantically meaningful information from a call stack of the native system; transferring the semantically meaningful information to a call stack of the foreign system; and calling the foreign object.
Claim 64
Dependent Claim 85 words
A method according to claim 56, wherein said extracting step comprises utilizing a description of the foreign object to determine steps required to extract semantically meaningful information from a call stack of the native object system in accordance with the description of the proxy object, and wherein said transferring step comprises performing the steps required to extract the semantically meaningful information and transferring the semantically meaningful information to a call stack of the foreign object system in accordance with the description of the foreign object.
Claim 65
Dependent Claim 22 words
A method according to claim 57, wherein said extracting step further comprises dynamically loading a device in order to utilize the description.
Claim 66
Dependent Claim 29 words
A method according to claim 57, wherein, in the transferring step, the semantically meaningful information is transferred to a call stack of any of a plurality foreign object systems.
Claim 67
Dependent Claim 51 words
A method according to claim 57, wherein said transferring step further comprises converting data types of the semantically meaningful information extracted from the call stack of the native system to data types of the foreign object model before transferring the semantically meaningful information to the call stack of the foreign system.
Claim 68
Dependent Claim 46 words
A method according to claim 57, further comprising extracting semantically meaningful return information from the call stack of the foreign system by utilizing a description of the foreign object and transferring the return information from the foreign object to the call stack of the native system.
Claim 69
Dependent Claim 29 words
A method according to claim 57, wherein the foreign object provides functionality to the native object system which cannot be provided by an object of the native object system.
Claim 70
Independent Claim 97 words
A device for utilizing a foreign object of a foreign object model implemented by a foreign object system in the case that the foreign object is called by a native object system implementing a native object model; comprising; creating means for creating a proxy object of the native object model, said proxy object corresponding to the foreign object; extracting means for extracting semantically meaningful information from a call stack of the native system; transferring means for transferring the semantically meaningful information to a call stack of the foreign system; and calling means for calling the foreign object.
Claim 71
Independent Claim 97 words
A device for utilizing a foreign object of a foreign object model implemented by a foreign object system in the case that the foreign object is called by a native object system implementing a native object model; comprising; creating means for creating a proxy object of the native object model, said proxy object corresponding to the foreign object; extracting means for extracting semantically meaningful information from a call stack of the native system; transferring means for transferring the semantically meaningful information to a call stack of the foreign system; and calling means for calling the foreign object.
Claim 72
Dependent Claim 90 words
A device according to claim 63, wherein said extracting means comprises utilizing means for utilizing a description of the foreign object to determine steps required to extract semantically meaningful information from a call stack of the native object system in accordance with the description, and wherein said transferring means comprises performing means for performing the steps required to extract the semantically meaningful information and transferring means for transferring the semantically meaningful information to a call stack of the foreign object system in accordance with the description of the foreign object.
Claim 73
Dependent Claim 29 words
A device according to claim 64, wherein said extracting means further comprises loading means for dynamically loading a device in order for the utilizing means to utilize the description.
Claim 74
Dependent Claim 27 words
A device according to claim 64, wherein said transferring means transfers the semantically meaningful information to a call stack of any of a plurality foreign object systems.
Claim 75
Dependent Claim 54 words
A device according to claim 64, wherein said transferring means further comprises converting means for converting data types of the semantically meaningful information extracted from the call stack of the native system to data types of the foreign object model before transferring the semantically meaningful information to the call stack of the foreign system.
Claim 76
Dependent Claim 51 words
A device according to claim 64, wherein said extracting means extracts semantically meaningful return information from the call stack of the foreign system by utilizing a description of the foreign object and said transferring means transfers the return information from the foreign object to the call stack of the native system.
Claim 77
Dependent Claim 29 words
A device according to claim 64, wherein the foreign object provides functionality to the native object system which cannot be provided by an object of the native object system.
Claim 78
Dependent Claim 110 words
Computer-executable process steps stored on a computer-readable medium, the steps for utilizing a foreign object of a foreign object model implemented by a foreign object system in the case that the foreign object is called by a native object system implementing a native object model, the steps comprising: a creating step to create a proxy object of the native object model, said proxy object corresponding to the foreign object; an extracting to extract semantically meaningful information from a call stack of the native system; a transferring step to transfer the semantically meaningful information to a call stack of the foreign system; and a calling step to call the foreign object.
Claim 79
Dependent Claim 110 words
Computer-executable process steps stored on a computer-readable medium, the steps for utilizing a foreign object of a foreign object model implemented by a foreign object system in the case that the foreign object is called by a native object system implementing a native object model, the steps comprising: a creating step to create a proxy object of the native object model, said proxy object corresponding to the foreign object; an extracting to extract semantically meaningful information from a call stack of the native system; a transferring step to transfer the semantically meaningful information to a call stack of the foreign system; and a calling step to call the foreign object.
Claim 80
Dependent Claim 97 words
Computer-executable process steps according to claim 70, wherein said extracting step comprises a utilizing step to utilize a description of the proxy object so as to determine steps required to extract semantically meaningful information from a call stack of the native object system in accordance with the description of the foreign object, and wherein said transferring step comprises a performing step to perform the steps required to extract the semantically meaningful information and to transfer the semantically meaningful information to a call stack of the foreign object system in accordance with the description of the foreign object.
Claim 81
Dependent Claim 27 words
Computer-executable process steps according to claim 71, wherein said extracting step further comprises a loading step to dynamically load a device in order to utilize the description.
Claim 82
Dependent Claim 30 words
Computer-executable process steps according to claim 71, wherein, in the transferring step, the semantically meaningful information is transferred to a call stack of any of a plurality foreign object systems.
Claim 83
Dependent Claim 56 words
Computer-executable process steps according to claim 71, wherein said transferring step further comprises a converting step to convert data types of the semantically meaningful information extracted from the call stack of the native system to data types of the foreign object model before transferring the semantically meaningful information to the call stack of the foreign system.
Claim 84
Dependent Claim 57 words
Computer-executable process steps according to claim 71, further comprising a second extracting step to extract semantically meaningful return information from the call stack of the foreign system by utilizing a description of the foreign object and a second transferring step to transfer the return information from the foreign object to the call stack of the native system.
Claim 85
Dependent Claim 30 words
Computer-executable process steps according to claim 71, wherein the foreign object provides functionality to the native object system which cannot be provided by an object of the native object system.
Claim 86
Independent Claim 136 words
A device, for use in a digital computer system providing a plurality of processes and object systems, the device for enabling a native object system having a native implementation for implementing a native object model and located in a first process to use an object located in a second process via a foreign object system using a foreign object model, the device comprising: description means for providing a description of the object; proxy means for creating a proxy object conforming to the native object system that corresponds with the object located in the second process; receiving means for receiving a manipulation of the proxy object, the manipulation conforming to the native implementation; and forwarding means for forwarding the manipulation of the proxy object to the corresponding object by utilizing the description and the foreign object system.
Claim 87
Independent Claim 136 words
A device, for use in a digital computer system providing a plurality of processes and object systems, the device for enabling a native object system having a native implementation for implementing a native object model and located in a first process to use an object located in a second process via a foreign object system using a foreign object model, the device comprising: description means for providing a description of the object; proxy means for creating a proxy object conforming to the native object system that corresponds with the object located in the second process; receiving means for receiving a manipulation of the proxy object, the manipulation conforming to the native implementation; and forwarding means for forwarding the manipulation of the proxy object to the corresponding object by utilizing the description and the foreign object system.
Claim 88
Independent Claim 118 words
A method, for use in a digital computer system providing a plurality of processes and object systems, the method for enabling a native object system having a native implementation and located in a first process to use an object located in a second process via a foreign object system using a foreign object model, the method comprising: providing a description of the object; creating a proxy object conforming to the native object system that corresponds with the object located in the second process; receiving a manipulation of the proxy object, the manipulation conforming to the native implementation; and forwarding the manipulation of the proxy object to the corresponding object by utilizing the description and the foreign object system.
Claim 89
Independent Claim 118 words
A method, for use in a digital computer system providing a plurality of processes and object systems, the method for enabling a native object system having a native implementation and located in a first process to use an object located in a second process via a foreign object system using a foreign object model, the method comprising: providing a description of the object; creating a proxy object conforming to the native object system that corresponds with the object located in the second process; receiving a manipulation of the proxy object, the manipulation conforming to the native implementation; and forwarding the manipulation of the proxy object to the corresponding object by utilizing the description and the foreign object system.
Claim 90
Dependent Claim 142 words
Computer-executable process steps stored on a computer-readable medium, the steps for use in a digital computer system providing a plurality of processes and object systems, the steps for enabling a native object system having a native implementation and located in a first process to use an object located in a second process via a foreign object system using a foreign object model, the steps comprising: a providing step to provide a description of the object; a creating step to create a proxy object conforming to the native object system that corresponds with the object located in the second process; a receiving step to receive a manipulation of the proxy object, the manipulation conforming to the native implementation; and a forwarding step to forward the manipulation of the proxy object to the corresponding object by utilizing the description and the foreign object system.
Claim 91
Dependent Claim 142 words
Computer-executable process steps stored on a computer-readable medium, the steps for use in a digital computer system providing a plurality of processes and object systems, the steps for enabling a native object system having a native implementation and located in a first process to use an object located in a second process via a foreign object system using a foreign object model, the steps comprising: a providing step to provide a description of the object; a creating step to create a proxy object conforming to the native object system that corresponds with the object located in the second process; a receiving step to receive a manipulation of the proxy object, the manipulation conforming to the native implementation; and a forwarding step to forward the manipulation of the proxy object to the corresponding object by utilizing the description and the foreign object system.
Claim 92
Independent Claim 20 words
A device according to claims 1, 47 or 77, wherein an implementation includes fundamental calling conventions and low-level calling conventions.
Claim 93
Dependent Claim 21 words
(Amended) A method according to claims 17, 50 or 78 wherein an implementation includes fundamental calling conventions and low-level calling conventions.
Claim 94
Dependent Claim 21 words
Computer-executable process steps according to claims 32, 53 or 79, wherein an implementation includes fundamental calling conventions and low-level calling conventions.
Claim 95
Independent Claim 20 words
A device according to claims 1, 47, 64, or 77, wherein a description describes both semantic information and implementation information.
Claim 96
Dependent Claim 27 words
A device according to claim 83, wherein the device provides an application programming interface to enable a system or an object to be described to the device.
Claim 97
Dependent Claim 38 words
A device according to claim 83, wherein the device provides an application programming interface to a plurality of programming languages, the application programming interface enabling elements of a programming language to emulate an object of an object system.
Claim 98
Independent Claim 20 words
A method according to claims 17, 50, 57, or 78, wherein a description describes both semantic information and implementation information.
Claim 99
Dependent Claim 24 words
A method according to claim 86, further comprising providing an application programing interface to enable an object system or an object to be described.
Claim 100
Dependent Claim 37 words
A method according to claim 86, further comprising providing an application programming interface to a plurality of programing languages, the application programming interface enabling elements of a programing language to emulate an object of an object system.
Claim 101
Dependent Claim 21 words
Computer-executable process steps according to claims 32, 53, 71, or 79, wherein a description describes both semantic information and implementation information.
Claim 102
Dependent Claim 29 words
Computer-executable process steps according to claim 89, further comprising a providing step to provide an application programming interface to enable an object system or an object to be described.
Claim 103
Dependent Claim 40 words
A method according to claim 90, further comprising a providing step to provide an application programming interface to a plurality of programming languages, the application programming interface enabling elements of the language to emulate an object of an object system.
Claim 104
Independent Claim 25 words
A device according to claims 47, 63, or 77, further comprising means for organizing objects from a plurality of object systems into a unified namespace.
Claim 105
Independent Claim 23 words
A method according to claims 50, 57, or 78, further comprising organizing objects from a plurality of object systems into a unified namespace.
Claim 106
Dependent Claim 28 words
Computer-executable process steps according to claims 53, 70 or 79, further comprising an organizing step to organize objects from a plurality of object systems into a unified namespace.
Claim 107
Independent Claim 24 words
A device according to claims 47, 63, or 77, further comprising means for dynamically relocating objects among application processes, server processes or object systems.
Claim 108
Independent Claim 22 words
A method according to claims 50, 57, or 78, further comprising dynamically relocating objects among application processes, server processes or object systems.
Claim 109
Dependent Claim 27 words
Computer-executable process steps according to claims 53, 70, or 79, further comprising a relocating step to dynamically relocate objects among application processes, server processes or object systems.
Claim 110
Dependent Claim 25 words
A device according to claim 2, further comprising means for organizing objects and classes from a plurality of object systems into a unified viewing space.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2001-03-23 2001-09-22 2002-03-24 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2005-03-23 2005-09-22 2006-03-24 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2009-03-23 2009-09-22 2010-03-24 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag