X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;ds=sidebyside;f=doc%2Fcsql.xml;h=f4944410282822326b347c3652938d440c5f78ab;hb=4871b9ef13ed1cf4f7ef927bd026ca19e845f53c;hp=f84dd50691c54b8e748cd2f1ef344caeda7d9df8;hpb=fd2493718d0e1114fcbe3dd578dab658ea383e81;p=clsql.git
diff --git a/doc/csql.xml b/doc/csql.xml
index f84dd50..f494441 100644
--- a/doc/csql.xml
+++ b/doc/csql.xml
@@ -292,6 +292,17 @@ mapped into a database). They would be defined as follows:
:base-table option specifies what the table name
for the view class will be when it is mapped into the database.
+
+
+ Another class option is :normalizedp, which signals
+ &clsql; to use a normalized schema for the mapping from slots to
+ &sql; columns. By default &clsql; includes all the slots of a parent
+ class that map to &sql; columns into the child class. This option
+ tells &clsql; to normalize the schema, so that a join is done on the
+ primary keys of the concerned tables to get a complete column set
+ for the classes. For more information, see
+ def-view-class.
+
@@ -454,6 +465,24 @@ There are other :join-info options available in &clsql;, but we will
save those till we get to the many-to-many relation examples.
+
+ Object Oriented Class Relations
+
+
+ &clsql; provides an Object Oriented Data Definition Language, which
+ provides a mapping from &sql; tables to CLOS objects. By default class
+ inheritance is handled by including all the columns from parent
+ classes into the child class. This means your database schema becomes
+ very much denormalized. The class option :normalizedp
+ can be used to disable the default behaviour and have &clsql;
+ normalize the database schemas of inherited classes.
+
+
+
+ See def-view-class
+ for more information.
+
+