Codd's breakthrough with the relational
model was moving from a "navigational" DBMS to "automatic
navigation". Think of it in terms of the analogy that a
relational DBMS is to a navigational DBMS (hierarchical, network or inverted) as
a compiled language is to assembly language. Codd argued for a declarative
way of describing "what" data is desired -- allowing the system to automatically
generate the necessary underlying navigational logic (just as a compiler
translates a high level language into lower level machine
instructions).
Codd's key requirement was that all data be
represented in at least first normal form -- meaning tabular. The idea of
2nd and 3rd normal forms were to ensure that the designer had properly captured
all many-to-many and one-to-many relationships, respectively.
XML is a "standard" data structure that includes 7
node types and 13 axes. Fundamentally, there are six ways to Sunday to
represent information using XML. For instance, the choice between when to
use elements versus when to use attributes is essentially arbitrary.
The XML model is much richer and more robust than
simple 2-dimensional tables. On the other hand, much of the power of the
relational model comes from its simplicity. Note that the relational model
only dealt with the external logical representation of data. It never
defines implementation details or access methods. Theoretically, a
relational DBMS can be implemented on top of an XML data store.
The relational model basically preceded the shift
to object-oriented. As such, it really didn't address such ideas as
inheritance and polymorphism. On the other hand, much of the power of the
relational model is derived by its support for closure, a property it shares
with object technology and XSLT.
Jeff Tash
----- Original Message -----
Sent: Monday, August 25, 2003 3:18 PM
Subject: RE: [xml-dev] A standard approach to glueing together
reusableXML fragments in prose?
> Ah, yes. The main problems with the hierarchical model are
> that it encourages data redundancy which leads to problems >
during updates and deletions.
Wrong!
3rd normal form was about
showing that you could move to a relational representation of data without
introducing redundancy. The problems with hierarchical and network database
systems were quite different: the lack of declarative data manipulation
languages with good closure properties, the close coupling of the data model
and its implementation in physical storage, the consequent high cost of data
loading and reorganization.
Another urban myth...
Michael
Kay
----------------------------------------------------------------- The
xml-dev list is sponsored by XML.org <http://www.xml.org>, an initiative of OASIS
<http://www.oasis-open.org>
The
list archives are at http://lists.xml.org/archives/xml-dev/
To
subscribe or unsubscribe from this list use the subscription manager: <http://lists.xml.org/ob/adm.pl>
|