
specifications (Samos et al., 1997); this means that
the information contained in derived specifications
is already represented in the conceptual schema.
Derived specifications are defined and included
in the repository. Specifications from which a
derived specification is directly defined are called
base specifications and they can be derived or non-
derived. Each derived specification is related to its
base specifications by a derivation relationship.
Users sometimes request new information that
cannot be derived from the database. When an
external schema with non-derived information has to
be defined, the conceptual schema must be modified
to include this information, and thus the external
schema can be derived from the conceptual schema.
Adding new information might either require the
definition of new non-derived specifications or the
modification of previously existing specifications.
Depending on the kind of change, a specification
can evolve in two ways: (1) if the change is
information capacity-preserving or reducing, then
the specification is transformed into a derived
specification, independently of whether the
specification, before change, was derived or non-
derived; (2) if the change is information capacity
augmenting, the specification is transformed into a
partially derived specification described below.
However, when changes are applied on an
external schema, this always evolves to a new
external schema, independently of the kind of
change. The main difference with respect to the
evolution of specifications is that if the change
applied on an external schema is information
capacity augmenting, the generation of the new
external schema cannot be carried out until the
conceptual schema has been modified.
3.1 Partially Derived Specifications
Conceptually, a solution for supporting schema
evolution by information capacity augmenting
transformations consists of allowing derived
specifications of type that may contain non-derived
information, i.e., partially derived specifications of
type. The non-derived information is added to the
information obtained from the base specifications, so
that the need to modify the definition of other
specifications is avoided.
The base specifications and the partially derived
specifications share the information that may be
contained in both specifications. The additional
information that cannot be contained in the base
specifications will be contained exclusively in the
non-derived part of partially derived specifications.
The capability to define partially derived
specifications simplifies the execution of operations
that represent information capacity augmenting
changes in a specification of type.
3.2 Test Environment
In the design process of an external schema, it is
possible that new non-derived information may be
required, which can be subsequently rejected; this
means that a conceptual schema has to be
continually modified until a final version of the
external schema is achieved.
In order to avoid the continous modification of
the conceptual schema, it may be very useful to have
a test environment in which provisional external
schemas can be defined. These schemas can include
non-derived information without having to modify
the conceptual schema.
The transformation of a provisional external
schema with non-derived information into an
external schema is a two-step process:
1. The conceptual schema is modified in order to
include the non-derived information.
2. The external schema is derived from the new
conceptual schema; thus the non-derived
information contained in the provisional
external schema becomes derived information.
The existing external schemas are not affected
by the modification of the conceptual schema or,
what amounts to the same thing, taking into account
the concept of data independence established in the
ANSI/X3/SPARC report (1986), conceptually, a change
in a schema must not affect other schemas of the
database. However, in some cases, the logic ligature
must be re-established, i.e., it is necessary to repeat
the transformation between the external schema and
the new conceptual schema.
For example, if an external schema includes a
non-derived specification and, as a result of a change
in another external schema (e.g., a new property is
added to the specification) the conceptual schema is
modified, the specification may become derived. In
this case, the external schema is not modified, but
the ligature between the external schema and the
new conceptual schema has to be established; the
establishment of this ligature is an updating of the
information stored in the repository.
Moreover, if a specification of the conceptual
schema, which is the base specification of a derived
specification or is included in an external schema,
has to be modified, then a new specification is
defined and the rest of existing specifications are not
affected by this modification. The only thing that
can change is its definition, i.e., it may become a
derived specification, so that if the specification is
no longer included in the conceptual schema it will
still remain in the repository.
ICEIS 2004 - DATABASES AND INFORMATION SYSTEMS INTEGRATION
138