• Here is rule 1 as it appears in Codd's 1990 version:-

    RS-I The Information Feature

    See Rule 1 in the 1985 set. The DBMS requires that all database

    information seen by application programmers (AP) and interactive

    users at terminals (TU) is cast explicitly in terms of values in

    relations, and in no other way in the base relations. Exactly one

    additional way is permitted in derived relations, namely, ordering

    by values within the relation (sometimes referred to as inessential

    ordering).

    ------------------------------------

    This means, for example, that, in the database, users see no repeating

    groups, no pointers, no record identifiers (other than the declared primary

    keys), no essential (i.e., non-redundant) ordering, and no access paths.

    Obviously this is not a complete list. Such objects may, however, be supported

    for performance reasons under the covers because they are then not visible

    to users, and hence impose no productivity-reducing burden on them.

    -------------------------------------

    Codd follows this with a long explanation of why repeating groups are a bad thing.

    I'll post the other rules from the 1990 book as and when I find time.

    Tom