Claims Analysis
Total Claims: 36
Claim 1
Independent Claim
139 words
A reverse engineering system for generating a logical data model from an application database having a plurality of database tables defined using a relational data model, comprising: a semantics extractor to derive a set of binary relationships and to derive an entity type for each said database table of said relational data model, said entity types classifying each said database table in accordance with a predefined criteria; a class generator for reading said set of binary relationships and said entity types, and for generating a set of classes, each class representing a select grouping of said database tables based on a classification scheme that utilizes said binary relationships and a particular entity type associated with each database table; and an entity-relationship (ER) model generator for generating one or more ER models, said ER models representing said logical data model.
Claim 2
Dependent Claim
139 words
A reverse engineering system for generating a logical data model from an application database having a plurality of database tables defined using a relational data model, comprising: a semantics extractor to derive a set of binary relationships and to derive an entity type for each said database table of said relational data model, said entity types classifying each said database table in accordance with a predefined criteria; a class generator for reading said set of binary relationships and said entity types, and for generating a set of classes, each class representing a select grouping of said database tables based on a classification scheme that utilizes said binary relationships and a particular entity type associated with each database table; and an entity-relationship (ER) model generator for generating one or more ER models, said ER models representing said logical data model.
Claim 3
Dependent Claim
44 words
A reverse engineering system as in claim 1 wherein said entity type is selected from a set of entity types which comprise a kernel entity type, a subtype entity type, a characteristic entity type, an associative entity type or a pure lookup entity type.
Claim 4
Dependent Claim
47 words
A reverse engineering system as in claim 2 wherein each said class is a tree having a root comprising a database table of kernel entity type and a plurality of branches each comprising a linkage of one or more database tables from said subset of database tables.
Claim 5
Dependent Claim
44 words
A reverse engineering system as in claim 1 wherein said binary relationship comprises a linkage between two tables in said relational data model in which one table has a repeating or foreign key that references the unique or primary key of the other table.
Claim 6
Dependent Claim
34 words
A reverse engineering system as in claim 4 wherein said set of binary relationship comprises "has -- children", "has -- wards", "inverse -- of -- pure -- lookup" or "has -- subtype" binary relationships.
Claim 7
Dependent Claim
43 words
A reverse engineering system as in claim 5 wherein said set of binary relationships further comprises "inverse -- of -- has -- children", "inverse -- of -- has -- wards", "pure -- lookup" or "inverse -- of -- has -- subtype" binary relationships.
Claim 8
Dependent Claim
52 words
A reverse engineering system as in claim 5 wherein said "has -- children" binary relationship is one in which the source table is not a pure lookup entity type and has a one-to-many relationship with the target table, and the target table does not have its own independent unique or primary key.
Claim 9
Dependent Claim
57 words
A reverse engineering system as in claim 6 wherein said "inverse -- of -- has -- children" binary relationship is one in which the target table is not a pure -- lookup entity type and has a one-to-many relationship with the source table, and the source table does not have its own independent unique or primary key.
Claim 10
Dependent Claim
51 words
A reverse engineering system as in claim 5 wherein said "has -- wards" binary relationship is one in which its source table is not a pure lookup entity type and has a one-to-many relationship with its target table, and its target table has its own independent unique key or primary key.
Claim 11
Dependent Claim
53 words
A reverse engineering system as in claim 6 wherein said "inverse -- of -- has -- wards" binary relationship is one which the target table is not a pure lookup entity type and has a one-to-many relationship with the source table, and the source table has its own independent unique or primary key.
Claim 12
Dependent Claim
42 words
A reverse engineering system as in claim 5 wherein said "has -- subtype" binary relationship is one in which its source table has a one-to-one relationship with its target table and the target table is a subtype entity of the source table.
Claim 13
Dependent Claim
46 words
A reverse engineering system as in claim 6 wherein said "inverse -- of -- has -- subtype" binary relationship is one in which its target table has a one-to-one relationship with its source table and the source table is a subtype entity of the target table.
Claim 14
Dependent Claim
32 words
A reverse engineering system as in claim 5 wherein said "inverse -- of -- pure -- lookup" binary relationship is a binary relationship whose source table is a pure -- lookup entity.
Claim 15
Dependent Claim
27 words
A reverse engineering system as in claim 6 wherein said "pure -- lookup" binary relationship is a binary relationship whose target table is a pure lookup entity.
Claim 16
Dependent Claim
41 words
A reverse engineering system as in claim 3 wherein said class further comprises a set of relationship names each of which specifies the nature of the relationship between two adjacent database tables in each branch of said tree of said class.
Claim 17
Dependent Claim
29 words
A reverse engineering system as in claim 15 wherein said class generator further comprises a means for a user to modify said relationship names in said set of classes.
Claim 18
Dependent Claim
119 words
A reverse engineering method for generating a logical data model from an application database having a plurality of database tables defined using a relational data model, comprising the steps of: reading said relational data model; deriving a set of binary relationships from said relational data model; identifying an entity type of each database table of said relational data model, said entity types classifying each said database table in accordance with a predefined criteria; generating a set of classes of said application database using said set of binary relationships and said identified entity types; and providing one or more ER models, each ER model associated with one or more of said classes, said ER models representing said logical data model.
Claim 19
Dependent Claim
119 words
A reverse engineering method for generating a logical data model from an application database having a plurality of database tables defined using a relational data model, comprising the steps of: reading said relational data model; deriving a set of binary relationships from said relational data model; identifying an entity type of each database table of said relational data model, said entity types classifying each said database table in accordance with a predefined criteria; generating a set of classes of said application database using said set of binary relationships and said identified entity types; and providing one or more ER models, each ER model associated with one or more of said classes, said ER models representing said logical data model.
Claim 20
Dependent Claim
47 words
A reverse engineering method as in claim 17 wherein each said class is a tree having a root comprising a database table of kernel entity type and a plurality of branches each comprising a linkage of one or more database tables from said subset of database tables.
Claim 21
Dependent Claim
44 words
A reverse engineering method as in claim 17 wherein said entity type is selected from a set of entity types which comprise a kernel entity type, a subtype entity type, a characteristic entity type, an associative entity type or a pure lookup entity type.
Claim 22
Dependent Claim
44 words
A reverse engineering method as in claim 17 wherein said binary relationship comprises a linkage between two tables in said relational data model in which one table has a repeating or foreign key that references the unique or primary key of the other table.
Claim 23
Dependent Claim
34 words
A reverse engineering method as in claim 20 wherein said set of binary relationships comprises "has -- children", "has -- wards", "inverse -- of -- pure -- lookup" or "has -- subtype" binary relationships.
Claim 24
Dependent Claim
41 words
A reverse engineering method as in claim 21 wherein said set of binary relationships further comprises "inverse -- of -- has -- children", "inverse -- of -- has -- wards", "pure -- lookup" or "inverse -- of -- has-subtype" binary relationships.
Claim 25
Dependent Claim
52 words
A reverse engineering method as in claim 21 wherein said "has -- children" binary relationship is one in which the source table is not a pure lookup entity type and has a one-to-many relationship with the target table, and the target table does not have its own independent unique or primary key.
Claim 26
Dependent Claim
57 words
A reverse engineering method as in claim 22 wherein said "inverse -- of -- has -- children" binary relationship is one in which the target table is not a pure -- lookup entity type and has a one-to-many relationship with the source table, and the source table does not have its own independent unique or primary key.
Claim 27
Dependent Claim
51 words
A reverse engineering method as in claim 21 wherein said "has -- wards" binary relationship is one in which its source table is not a pure lookup entity type and has a one-to-many relationship with its target table, and its target table has its own independent unique key or primary key.
Claim 28
Dependent Claim
53 words
A reverse engineering method as in claim 22 wherein said "inverse -- of -- has -- wards", binary relationship is one which the target table is not a pure lookup entity type and has a one-to-many relationship with the source table, and the source table has its own independent unique or primary key.
Claim 29
Dependent Claim
41 words
A reverse engineering method as in claim 21 wherein said "has -- subtype" binary relationship is one which its source table has a one-to-one relationship with its target table and the target table is a subtype entity of the source table.
Claim 30
Dependent Claim
46 words
A reverse engineering method as in claim 22 wherein said "inverse -- of -- has -- subtype" binary relationship is one in which its target table has a one-to-one relationship with its source table and the source table is a subtype entity of the target table.
Claim 31
Dependent Claim
32 words
A reverse engineering method as in claim 21 wherein said "inverse -- of -- pure -- lookup" binary relationship is a binary relationship whose source table is a pure -- lookup entity.
Claim 32
Dependent Claim
27 words
A reverse engineering method as in claim 22 wherein said pure -- lookup" binary relationship is a binary relationship whose target table is a pure lookup entity.
Claim 33
Dependent Claim
41 words
A reverse engineering method as in claim 18 wherein said class further comprises a set of relationship names each of which specifies the nature of the relationship between two adjacent database tables in each branch of said tree of said class.
Claim 34
Dependent Claim
23 words
A reverse engineering method as in claim 31 which further comprises the step of modifying said relationship names in said set of classes.
Claim 35
Dependent Claim
20 words
A reverse engineering system as in claim 1 which further comprises a model purifier to alter said relational data model.
Claim 36
Dependent Claim
19 words
A reverse engineering method as in claim 17 which further comprises the step of altering said relational data model.