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

Integrating relational databases in an object oriented environment

Assignee: Oracle International Corp
•
Filing: 1997-07-25
•
Granted: 1999-08-10
•
Expires: 2017-07-25
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A relational mapper supports the storage of objects from an object oriented environment in one or more relational databases. The relational mapper generates tables in a relational data store for abstract class types, and it generates a mapping, in any predetermined relationship, to map at least one member of an object to a table for the class type in the relational data store. The relational mapper maps members of a class type to members of a data source. A storage type map is generated to map the data source members of the data source to columns of the relational database table for the class type. The relational mapper is bidirectional such that the relational mapper maps data from a relational database to create objects in accordance with a type system of an object oriented environment. The relational mapper generates metadata to describe the object such that the object, created from the relational database, is a full fledged object of the object oriented system.

Inventors

  • 👤 Jonathan Wetherbee

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-30 21:19
CPC Classifications
G; G06; G06F; G06F16/00; G06F16/20; G06F16/28; G06F16/289; Y; Y10; Y10S; Y10S707/00; Y10S707/99931; Y10S707/99932; Y10S707/99941; Y10S707/99944

Claims Analysis

Total Claims: 40
Claim 1
Independent Claim 145 words
A method of storing an object in a relational database, said method comprising the steps of: selecting at least one class type from an object oriented software system for storage in a table of a relational database, wherein said class type is defined in accordance with a type system of said object oriented software system that includes at least one type system member; generating class type mapping information, as metadata, to map said class type to a logical relational database table comprising at least one column; and generating member mapping information, as metadata, to map said at least one type system member of said class type to said at least one column of said logical relational database table corresponding to said class type, wherein said mapping information is independent of an implementation of said class type and independent of an implementation of a relational database.
Claim 2
Independent Claim 145 words
A method of storing an object in a relational database, said method comprising the steps of: selecting at least one class type from an object oriented software system for storage in a table of a relational database, wherein said class type is defined in accordance with a type system of said object oriented software system that includes at least one type system member; generating class type mapping information, as metadata, to map said class type to a logical relational database table comprising at least one column; and generating member mapping information, as metadata, to map said at least one type system member of said class type to said at least one column of said logical relational database table corresponding to said class type, wherein said mapping information is independent of an implementation of said class type and independent of an implementation of a relational database.
Claim 3
Dependent Claim 77 words
The method as set forth in claim 1, further comprising the steps of: generating mapping tables, for use in said object oriented system, to describe said mapping between said at least one type system member of said class type to said relational database table for said class type; generating a relational database table from said logical relational database table; and storing objects, instantiated from said class type, in said relational table in accordance with said mapping tables.
Claim 4
Dependent Claim 73 words
The method as set forth in claim 1, wherein the step of generating mapping information comprises the steps of: generating a relational type map object for each class type to specify a mapping for a class type to a relational database table; and generating a relational member map object for each type system member of a class type to specify a mapping of a type system member to a corresponding relational database table.
Claim 5
Dependent Claim 49 words
The method as set forth in claim 1, wherein the step of generating a logical relational table comprises the step of: generating a table object for each logical relational table; and generating at least one column object for each table object to describe columns of said logical relational table.
Claim 6
Dependent Claim 37 words
The method as set forth in claim 1, further comprising the steps of storing said mapping information in a physical repository such that said mapping information persists in a data store accessible to said object oriented system.
Claim 7
Dependent Claim 31 words
The method as set forth in claim 1, further comprising the steps of generating a logical relational table to support a plurality of class types derived from a single class hierarchy.
Claim 8
Dependent Claim 70 words
The method as set forth in claim 1, wherein the step of generating mapping information to map said at least one type system member of said class type to at least one column of said logical relational database table comprises the step of mapping at least one attribute on an interface supported by said class type to a column of said logical relational table that corresponds to said class type.
Claim 9
Dependent Claim 52 words
The method as set forth in claim 7, wherein the step of mapping at least one attribute on an interface comprises the step of mapping scalar and complex scalar attributes on an interface supported by said class type to a column of said logical relational table that corresponds to said class type.
Claim 10
Dependent Claim 45 words
The method as set forth in claim 7, wherein the step of mapping at least one attribute on an interface comprises the step of mapping a collection of class types to a logical relational table that corresponds to said class type of said collection referenced.
Claim 11
Dependent Claim 60 words
The method as set forth in claim 1, wherein the steps of generating mapping information comprises the steps of: generating class type members, wherein each class type member comprises a type; defining type system members on said class type as class type members; and mapping said class type members to columns of said logical relational table for said class type.
Claim 12
Dependent Claim 44 words
The method as set forth in claim 10, wherein the step of mapping said class type members comprises the step of mapping a private attribute of a class type, not exposed by an interface supported by said class type, to a class type member.
Claim 13
Dependent Claim 57 words
The method as set forth in claim 10, further comprises the steps of: providing a means to generate an association to associate at least two interfaces supported by a least one class type; and providing, through said class type members, a means to constrain an association to specific class types that support said interface of said association.
Claim 14
Dependent Claim 59 words
The method as set forth in claim 1, wherein the steps of generating mapping information comprises the step of generating at least one data source for said class type, wherein said data source comprises data source members and defines a data structure to store instances of said class type in accordance with a particular implementation of said class type.
Claim 15
Dependent Claim 81 words
The method as set forth in claim 13, further comprising the steps of generating, after modification of a class type, a second data source for said class type that includes data source members that support modification of said class type, wherein objects instantiated from said class type subsequent to modification are supported by said second data source, and objects instantiated from said class type prior to modification are supported by an original data source so that data sources supports legacy objects.
Claim 16
Dependent Claim 41 words
The method as set forth in claim 13, wherein the step of mapping members of a class type to said archive members in said archive comprises the step of mapping multiple members of a class type to a single archive member.
Claim 17
Independent Claim 105 words
A method for integrating at least one table of a relational database into in an object oriented system, said method comprising the steps of: storing metadata to describe at least one class type and interface registered with said object oriented system; analyzing metadata for a schema of objects; mapping a table from said relational database to a class type and interface based on said metadata; and generating class type and interface definitions for said table in accordance with said mapping, such that said class type and interface definitions permit instantiation of full fledged objects in said object oriented system from tables in said relational database.
Claim 18
Independent Claim 105 words
A method for integrating at least one table of a relational database into in an object oriented system, said method comprising the steps of: storing metadata to describe at least one class type and interface registered with said object oriented system; analyzing metadata for a schema of objects; mapping a table from said relational database to a class type and interface based on said metadata; and generating class type and interface definitions for said table in accordance with said mapping, such that said class type and interface definitions permit instantiation of full fledged objects in said object oriented system from tables in said relational database.
Claim 19
Dependent Claim 32 words
The method as set forth in claim 16, wherein the step of generating class type and interface definitions comprises the step of generating metadata to describe said class type and interface definitions.
Claim 20
Dependent Claim 43 words
The method as set forth in claim 16, wherein the step of mapping tables to class type and interface definitions comprises the step of mapping at least one column of a table to an attribute on an interface supported by a class type.
Claim 21
Dependent Claim 154 words
A computer readable medium comprising a set of instructions stored therein, which when executed by a computer, causes the computer to perform the steps of: selecting at least one class type from an object oriented software system for storage in a table of a relational database, wherein said class type is defined in accordance with a type system of said object oriented software system that includes at least one type system member; generating class type mapping information, as metadata, to map said class type to a logical relational database table comprising at least one column; and generating member mapping information, as metadata, to map said at least one type system member of said class type to said at least one column of said logical relational database table corresponding to said class type, wherein said mapping information is independent of an implementation of said class type and independent of an implementation of a relational database.
Claim 22
Dependent Claim 154 words
A computer readable medium comprising a set of instructions stored therein, which when executed by a computer, causes the computer to perform the steps of: selecting at least one class type from an object oriented software system for storage in a table of a relational database, wherein said class type is defined in accordance with a type system of said object oriented software system that includes at least one type system member; generating class type mapping information, as metadata, to map said class type to a logical relational database table comprising at least one column; and generating member mapping information, as metadata, to map said at least one type system member of said class type to said at least one column of said logical relational database table corresponding to said class type, wherein said mapping information is independent of an implementation of said class type and independent of an implementation of a relational database.
Claim 23
Dependent Claim 78 words
The computer readable medium as set forth in claim 19, further comprising instructions for: generating mapping tables, for use in said object oriented system, to describe said mapping between said at least one type system member of said class type to said relational database table for said class type; generating a relational database table from said logical relational database table; and storing objects, instantiated from said class type, in said relational table in accordance with said mapping tables.
Claim 24
Dependent Claim 73 words
The computer readable medium as set forth in claim 19, wherein instructions for generating mapping information comprise instructions for: generating a relational type map object for each class type to specify a mapping for a class type to a relational database table; and generating a relational member map object for each type system member of a class type to specify a mapping of a type system member to a corresponding relational database table.
Claim 25
Dependent Claim 50 words
The computer readable medium as set forth in claim 19, wherein the instructions for generating a logical relational table comprise instructions for: generating a table object for each logical relational table; and generating at least one column object for each table object to describe columns of said logical relational table.
Claim 26
Dependent Claim 38 words
The computer readable medium as set forth in claim 19, further comprising instructions for storing said mapping information in a physical repository such that said mapping information persists in a data store accessible to said object oriented system.
Claim 27
Dependent Claim 32 words
The computer readable medium as set forth in claim 19, further comprising instructions for generating a logical relational table to support a plurality of class types derived from a single class hierarchy.
Claim 28
Dependent Claim 70 words
The computer readable medium as set forth in claim 19, wherein instructions for generating mapping information to map said at least one type system member of said class type to at least one column of said logical relational database table comprise instructions for mapping at least one attribute on an interface supported by said class type to a column of said logical relational table that corresponds to said class type.
Claim 29
Dependent Claim 52 words
The computer readable medium as set forth in claim 25, wherein instructions for mapping at least one attribute on an interface comprise instructions for mapping scalar and complex scalar attributes on an interface supported by said class type to a column of said logical relational table that corresponds to said class type.
Claim 30
Dependent Claim 45 words
The computer readable medium as set forth in claim 25, wherein instructions for mapping at least one attribute on an interface comprise instructions for mapping a collection of class types to a logical relational table that corresponds to said class type of said collection referenced.
Claim 31
Dependent Claim 60 words
The computer readable medium as set forth in claim 19, wherein instructions for generating mapping information comprise instructions for: generating class type members, wherein each class type member comprises a type; defining type system members on said class type as class type members; and mapping said class type members to columns of said logical relational table for said class type.
Claim 32
Dependent Claim 44 words
The computer readable medium as set forth in claim 28, wherein instructions for mapping said class type members comprise instructions for mapping a private attribute of a class type, not exposed by an interface supported by said class type, to a class type member.
Claim 33
Dependent Claim 58 words
The computer readable medium as set forth in claim 28, further comprising instructions for: providing a means to generate an association to associate at least two interfaces supported by a least one class type; and providing, through said class type members, a means to provide an association to specific class types that support said interface of said association.
Claim 34
Dependent Claim 60 words
The computer readable medium as set forth in claim 19, wherein the instructions for generating mapping information comprise instructions for generating at least one data source for said class type, wherein said data source comprises data source members and defines a data structure to store instances of said class type in accordance with a particular implementation of said class type.
Claim 35
Dependent Claim 82 words
The computer readable medium as set forth in claim 31, further comprising instructions for generating, after modification of a class type, a second data source for said class type that includes data source members that support modification of said class type, wherein objects instantiated from said class type subsequent to modification are supported by said second data source, and objects instantiated from said class type prior to modification are supported by an original data source so that data sources supports legacy objects.
Claim 36
Dependent Claim 42 words
The computer readable medium as set forth in claim 31, wherein the instructions for mapping members of a class type to said archive members in said archive comprise instructions for mapping multiple members of a class type to a single archive member.
Claim 37
Dependent Claim 102 words
A computer readable medium comprising a set of instructions stored therein, which when executed by a computer, causes the computer to perform the steps of: storing metadata to describe all class types registered with said object oriented system; analyzing metadata for a schema of objects; mapping a table from said relational database to a class type and interface based on said metadata; and generating class type and interface definitions for said table in accordance with said mapping, such that said class type and interface definitions permit instantiation of full fledged objects in said object oriented system from tables in said relational database.
Claim 38
Dependent Claim 102 words
A computer readable medium comprising a set of instructions stored therein, which when executed by a computer, causes the computer to perform the steps of: storing metadata to describe all class types registered with said object oriented system; analyzing metadata for a schema of objects; mapping a table from said relational database to a class type and interface based on said metadata; and generating class type and interface definitions for said table in accordance with said mapping, such that said class type and interface definitions permit instantiation of full fledged objects in said object oriented system from tables in said relational database.
Claim 39
Dependent Claim 32 words
The computer readable medium as set forth in claim 34, wherein instructions for generating class type and interface definitions comprise instructions for generating metadata to describe said class type and interface definitions.
Claim 40
Dependent Claim 45 words
The computer readable medium as set forth in claim 34, wherein instructions for mapping tables to class type and interface definitions comprise instructions for mapping at least one column of a table to an attribute o n a n interface supported by a class type.

References Cited (Backward Citations)

US5297279A Cited
US5235701A Cited
US5499371A Cited
US5615362A Cited
US5737601A Cited
US5806075A Cited
US5627979A Cited
US5805804A Cited
US5659735A Cited
US5752245A Cited
US5826085A Cited
US5819251A Cited
US5819256A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2002-08-09 2003-02-08 2003-08-10 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2006-08-09 2007-02-08 2007-08-10 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2010-08-09 2011-02-08 2011-08-10 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag