Information Technology Reference
In-Depth Information
Attribute entity type
1
BOOK
ISBN
Title
Editor
Keyword[0-10]
id: ISBN
BOOK
ISBN
Title
Editor
Keyword[0-10]
id: ISBN
BOOK
ISBN
Title
Editor
id: ISBN
BOOK
ISBN
Title
Editor
id: ISBN
BOOK
ISBN
Title
Editor
id: ISBN
KEYWORD
Keyword
id: of.BOOK
Keyword
KEYWORD
Keyword
id: of.BOOK
Keyword
KEYWORD
Keyword
id: of.BOOK
Keyword
0-10
0-10
0-10
of
of
of
1-1
1-1
1-1
(a)
(a)
(b)
(b)
2
N-ary relationship type with a [x-1] role
CUSTOMER
CUSTOMER
CUSTOMER
VEHICLE
VEHICLE
VEHICLE
CUSTOMER
CUSTOMER
CUSTOMER
VEHICLE
VEHICLE
VEHICLE
0-N
sign
0-N
sign
0-N
sign
0-N
cover
0-N
cover
0-N
cover
0-N
0-N
0-N
0-N
0-N
0-N
sign
sign
sign
0-1
0-1
0-1
0-1
0-1
0-1
0-1
0-1
0-1
CONTRACT
coex: sign.CUSTOMER
cover.VEHICLE
CONTRACT
coex: sign.CUSTOMER
cover.VEHICLE
CONTRACT
coex: sign.CUSTOMER
cover.VEHICLE
CONTRACT
CONTRACT
CONTRACT
(a)
(a)
(b)
(b)
3
One-to-one relationship type with mandatory roles
STUDENT
STUDENT
STUDENT
#
Name
Class
ParentAddress
Phone
SpecDiet
id: #
#
Name
Class
ParentAddress
Phone
SpecDiet
id: #
#
Name
Class
ParentAddress
Phone
SpecDiet
id: #
STUDENT
#
Name
Class
id: #
STUDENT
#
Name
Class
id: #
STUDENT
#
Name
Class
id: #
ID_DET
ParentAddress
Phone
SpecDiet
ID_DET
ParentAddress
Phone
SpecDiet
ID_DET
ParentAddress
Phone
SpecDiet
of
of
of
1-1
1-1
1-1
1-1
1-1
1-1
(a)
(a)
(b)
(b)
Fig. 3. Three complex constructs and their suggested alternatives.
- One-to-one relationship type with mandatory roles This pattern ex-
presses a strong link between two concepts (no instance of a concept exists
independently of an instance of the other one) (figure 3 (3.a) ). In most situa-
tions, the latter just represent two aspects, or two complementary fragments,
of the same concept. A better alternative (figure 3 3.b )canbetomergethe
entity types into a single entity type. This improves the simplicity and the
expressiveness of the schema. Normally, evolvability should stay unchanged
though, in some cases, it may decrease, depending on the semantics of each
fragment.
The other complex constructs are classified in table 1, with the qualitative score
difference when they are replaced by the alternative construct we suggest.
5.2 Redundant Contructs
Aconstruct A is redundant with construct B when, in any database state, the
instances of one of them can be computed from the instances of the other one.
More complex situations may occcur (for instance where A and B are mutually
dependent), but they will be ignored in the framework inasmuch as their solving
requires expert knowledge. The correction of such defects consists in removing
Search WWH ::




Custom Search