Table Of Content115005717924». ‘ 1
United States Patent [191 [11] Patent Number: 5,717,924
Kawai [45] Date of Patent: Feb. 10, 1998
[54] METHOD AND APPARATUS FOR G. Decorte et al., “An Object-Oriented Model for Capturing
MODIFYING EXISTING RELATIONAL Data Semantics,” IEEE Computer Society Press, Feb. 1992,
DATABASE SCHEMAS T0 REFLECT pp. 126-135.
CHANGES MADE IN A CORRESPONDING M. Hammer and D. McLeod, “Database Description with
OBJECT MODEL SDM: A Semantic Database Model.” ACM Transaction 0n
Database Systems, vol. 6, No. 3, Sep. 1981, pp. 351-386.
[75] Inventor: Kenji Kawni, Seattle, Wash.
D. M. Kroenke, "Developing Object-Oriented Database
Applications on Microcomputers.” The Second Interna
[73] Assignee: Wall Data Incorporated, Kirkland,
tional Conference on Computers and Applications, The
Wash.
Computer Society of the IEEE, Jun. 1987, pp. 70-77.
D. M. Kroenke, Database Processing: Fundamentals,
[21] Appl. No.: 499,392
Design, Implementation, 4th Ed., Macmillan Publishing
[221 Filed: Jul. 7, 1995 Company, 1992, Chapters 5 and 7, pp. 123-167 and pp.
205-252.
[511 1111. c1.6 G06F 17/50
D. Keim et a1., “Object-Oriented Querying of Existing
[52] US. Cl. 95/613; 3951612; 395/614
Relational Database,” Databases and Expert Systems Appli
[58] Field of Search ................................... .. 395/612. 613. cation, 4th International Conference, Sep. 6-8, 1993, pp.
395/614
326-336.
[56] References Cited F. Leymann, “UDH: A Universal Relation System.” Data &
Knowledge Engineering vol. 5, (1990) pp. 21-38.
us. PATENT DOCUMENTS
(List continued on next page.)
4,930,071 5/1990 Tan et a1. 395/604
5,212,787 5/1993 Baker et. al. 395/612
Primary Examiner-John C. Loomis
5,263,167 11/1993 Conner, Jr. et al. 3951604
5,278,946 1/1994 Shimada et a]. 395/62 Attorney Agent, or Firm-Christensen, O’Connor, Johnson
5,295,256 311994 Bapat 395/500 & Kindness PLLC
5,307,499 4/1994 Yin 3951705
[57] ABSTRACT
5,418,950 5/1995 L141 41. . 3951604
5,495,567 2/1996 lizawa et =11. .. . 395/334
An object model comprises one or more semantic objects
5,499,371 3/1996 Henninger a 41. 395/709
that represent items about which data is stored in a relational
5,548,749 8/1996 Kroenke et a]. 3951613
$550,971 8/1996 Brunner et al. 395/603 database in a computer system. Each semantic object has
one or more components that de?ne the data stored for each
FOREIGN PATENT DOCUMENTS item. The object model is mapped into a current relational
database schema. As a user makes changes to the model the
0 560 543 A2 9/1993 European Pat. 01f. .
computer system generates a proposed relational database
UPI-[ER PUBLIC/“TONS schema, and the di?erenoes between the current relational
database schema and the proposed relational database
D. R. McClanahan, "Database Design: Relational Rules,”
schema are determined. The relation database is modi?ed to
DBMS, vol. 4, No. 12, Nov. 1991, pp. 54-58.
re?ect changes made in the corresponding object model
D. R. McClanahan, “Conceptual Design,” DBMS, vol. 5,
based upon the di?‘erences between the current and proposed
No. 1, Jan. 1992, p. 66(5).
relational database schemas.
Codd, E. E, “Extending the Database Relational Model to
Capture More Meaning," ACM Transactions on Database
Systems, vol. 4, No. 4, Dec. 1979, pp. 397-434. 15 Claims, 30 Drawing Sheets
5,717,924
Page 2
OTHER PUBLICATIONS Blaha et a1., “Relational Database Design Using An Objec
t-Oriented Methodology,” Communications of the ACM,
“Visual Representation of Database Query De?nition," IBM
Technical Disclosure Bulletin, Vol. 33, No. 9 Feb. 1991, pp. vol. 31, No. 4 Apr. 1988, pp. 414-427.
238-242.
Lejter et 111., “Support for Maintaining Object-Oriented
International Search Report dated Jan. 31. 1995.
S. Dewitz and M. Olson, “Semantic Object Modeling with Programs,” IEEE Transactions on Software Engineering,
SALSA,” Mitchell McGraw-Hill Publishing Company,
vol. 18, Dec. 1992, pp. 1045-1052.
1994.
US. Patent Feb. 10, 1998 Sheet 1 of 30 5,717,924
{76
711 {72
' MEMORY
col {-74
(70 ' DISK DRIVE
CP U I77
KEYBOARD{ 78 6; 80
FIG. 1.
US. Patent Feb. 10, 1998 Sheet 2 of 30 5,717,924
EMPLOYEE 1 00
NAME I
ADDRESS
\— —BIR THDAY
EMPLOYEE 1 05 1 07
NAME ADDRESS SOC_SEC_N0 I BIRTHDAY I
PRIMARY IQ!’ = SOC_SEC_N0
FIG. 2.
5,717,924
US. Patent Feb. 10, 1998 Sheet 3 of 30
STUDENT 112
I110 STUDENTJD ADDRESS PHONE
3 STUDENTJD
ADDRESS
PHONE
F'MAJURO
PRIMARY KEY = STUDENT__ID
I114
MAJOR
SURROGATE IGIY MAJOR STUDENTJD
. PRIMARY IG'Y = SURROGATE KEY
STUDENTJD IS FOREIGN KEY TO STUDENTJD OF STUDENT
FIG. 3.
US. Patent Feb. 10, 1998 Sheet 4 of 30 5,717,924
MANAGER SECRETARY
:NAME I120 :NAME I”?
ADDRESS éDDREISS
‘WAN 17PM
\ $418 \
\ SECRETARY ' \ 4424
MANAGER
0.1
0.1
MANAGER
NAME ADDRESS SALARY '26 NAME_1 '30
PRIMARY KEY = NAME
NAME_! IS FOREIGN IG'Y T0 NAME OF SECRETARY
SECRET
NAME ADDRESS SALARY NPM '28
PRIMARY KEY = NAME
FIG. 4.
US. Patent Feb. 10, 1998 Sheet 5 of 30 5,717,924
IiQQL AUTHOR
TITLE W34 NAME fuss
:Ismv ADDRESS
PRICE \
\ 138 140
\ AUTHOR \ BOOK
1.1V 1.1V
BOOK 144
TITLE ISBN PRICE
PRIMARY KEY = ISBN
AUTHOR 146
SURROGATE KEY NAME ADDRESS I
PRIMARY KEY = SURROGATE' KEY
AUTHOR - BOOK '48
SURROGATE' HY ISBN f
PRIMARY KEY = (SURROGATE KEY, ISBN)
SURROGATE KEY IS FOREIGN KEY TO SURROGATE HY OF AUTHOR
ISBN IS FOREIGN IG'Y TO ISBN OF BOOK
FIG. 5.
US. Patent Feb. 10, 1998 Sheet 6 of 30 5,717,924
_—W I150 M ,52
£800 sgc 1V0 PROD_GROUP f
' ' SALARY
\ \ f154
\ ‘456 \ EMPLOYEE
MANAGER P
YEE
158
NAME SOC__SEC_N0
PRIMARY KEY = SOC__SEC_N0
sURRocATE KEY PROILGROUP SALARY '60 SOC_SEC__N0 '62
PRIHARY BY = SURRUEATK KEY
SOLSECJO IS FOREIGN KEY 1'0 SOILSECJO 0F EIPMYFE
FIG. 6.
US. Patent Feb. 10, 1998 Sheet 7 of 30 5,717,924
{172
{'70 STUDENT
STUD_ENT STUDENTJD NAME ADDRESS MAJOR
:STUDENTJD
NAME
ADDRESS
MAJOR 0 ,
K .
' PRIMARY KEY = STUDENTJD
(172 6?
STUDENT
STUDENTJD NAME ADDRESS MAJOR
PRIMARY KEY = STUDENT__ID
MAJOR
MAJOR STUDENLID SURROGATE KEY
PRIMARY KEY = SURROGATE' KEY
STUDENT_ID IS FOREIGN KEY TO STUDENT_ID OF STUDENT
FIG. 7.
US. Patent Feb. 10, 1998 Sheet 8 of 30 5,717,924
yrso {182
: NImFESSOR PROFESSOR
AGE NAME AGE DEPT STUDENTJD
DEPT
STUDENT
ADVLS'EE
\ 0.1 ‘
\ STUDENT mmm= m:
ADVISE]; smnmm 1s rnmcnmm STDDENTD or STUDENT
1.N
5482 ?
PROFESSOR
NAME AGE DEPT STUDENTJD I184
PRIMARY KEY = NAME
STUDENT_ID IS FOREIGN HY T0 STUDENTJD OF STUDENT
STUDENT 186 '88
NAME STUDENTJD MAJOR I NAMEJ f
PRIMARY IG'Y = STUDENLID
NAMILI IS FOREIGN IG'Y T0 NAME‘ OF PROFESSOR
FIG. 8.
Description:Jul 7, 1995 Capture More Meaning," ACM Transactions on Database. Systems, vol. 4, No.
D. M. Kroenke, Database Processing: Fundamentals,. Design