How to (not to) use the object-relational capabilities of Oracle DBMS

In the late 80’s and early 90’s of the last century, the first object DBMS systems began to appear, and in the late 90’s the first object-relational DBMS systems.


Today, almost all RDBMS products have the prefix “O”, ie they are presented as ORDBMS (object-relational DBMS), supporting (at least some) object-relational capabilities defined in the SQL: 1999 and SQL: 2003 standard.
But the well-known scientist in the field of relational models and relational systems, C. J. Date, wrote in his book “Database in Depth” (2005, p. 32): “After all, the whole point of an “object/relational” system is precisely that we can have attribute values in relations that are of arbitrary complexity. Perhaps a better way to say it is this: a proper object/relational system is just a relational system with proper type support – which just means it’s a proper relational system, no more and no less.”.
The paper presents the object-relational capabilities of Oracle 11g (and 10g) DBMS and gives recommendations on how these capabilities should be used (also, how they should not be used!), in accordance with Date’s work.