modeling-cvs Mailing List for Object-Relational Bridge for python (Page 14)
Status: Abandoned
Brought to you by:
sbigaret
You can subscribe to this list here.
2003 |
Jan
|
Feb
|
Mar
(54) |
Apr
(29) |
May
(94) |
Jun
(47) |
Jul
(156) |
Aug
(132) |
Sep
(40) |
Oct
(6) |
Nov
(18) |
Dec
(24) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2004 |
Jan
(18) |
Feb
(59) |
Mar
(7) |
Apr
|
May
(8) |
Jun
(2) |
Jul
(12) |
Aug
(15) |
Sep
(12) |
Oct
(6) |
Nov
(25) |
Dec
(1) |
2005 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2006 |
Jan
|
Feb
(27) |
Mar
|
Apr
(16) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2009 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: <sbi...@us...> - 2003-08-26 20:25:49
|
Update of /cvsroot/modeling/ProjectModeling/Modeling/doc/UserGuide In directory sc8-pr-cvs1:/tmp/cvs-serv27061/Modeling/doc/UserGuide Modified Files: DefiningaModel.tex Log Message: Added templates for documentation of PyModel-association, relationship, RToOne, RToMany Index: DefiningaModel.tex =================================================================== RCS file: /cvsroot/modeling/ProjectModeling/Modeling/doc/UserGuide/DefiningaModel.tex,v retrieving revision 1.26 retrieving revision 1.27 diff -C2 -d -r1.26 -r1.27 *** DefiningaModel.tex 26 Aug 2003 20:04:58 -0000 1.26 --- DefiningaModel.tex 26 Aug 2003 20:25:45 -0000 1.27 *************** *** 1004,1023 **** \subsection{Association\label{pymodel-association-props}} ! tbd. %% \subsection{Relationship\label{pymodel-relationship-props}} ! tbd. %% \subsubsection{RToOne\label{pymodel-relationship-props-toone}} ! tbd. %% \subsubsection{RToMany\label{pymodel-relationship-props-tomany}} ! tbd. --- 1004,1058 ---- \subsection{Association\label{pymodel-association-props}} ! \begin{longtableiv}{p{3cm}p{1.5cm}p{4cm}p{5.5cm}}{code}{Prop.}{Type}{Default}{Comment} ! \lineiv{multiplicity}{\code{~}}{~}{~} ! \lineiv{relations}{\code{~}}{~}{~} ! \lineiv{keys}{\code{~}}{~}{~} ! \lineiv{delete}{\code{~}}{~}{~} ! \lineiv{isClassProperty}{\code{~}}{~}{~} ! \lineiv{joinSemantic}{\code{~}}{~}{~} ! \lineiv{displayLabel}{\code{~}}{~}{~} ! \lineiv{doc}{\code{~}}{~}{~} ! \end{longtableiv} %% \subsection{Relationship\label{pymodel-relationship-props}} ! \begin{longtableiv}{p{3cm}p{1.5cm}p{4cm}p{5.5cm}}{code}{Prop.}{Type}{Default}{Comment} ! \lineiv{name}{\code{string}}{\emph{no default}}{The \code{name} is the only ! mandatory arguments when instanciating a \class{APrimaryKey}. Once set, it ! should not be changed} ! \lineiv{delete}{\code{~}}{~}{~} ! \lineiv{isClassProperty}{\code{~}}{~}{~} ! \lineiv{multiplicity}{\code{~}}{~}{~} ! \lineiv{joinSemantic}{\code{~}}{~}{~} ! \lineiv{src}{\code{~}}{~}{~} ! \lineiv{dst}{\code{~}}{~}{~} ! \lineiv{displayLabel}{\code{~}}{~}{~} ! \lineiv{doc}{\code{~}}{~}{~} ! \lineiv{inverse}{\code{~}}{~}{~} ! \end{longtableiv} ! %% \subsubsection{RToOne\label{pymodel-relationship-props-toone}} ! \begin{longtableiv}{p{3cm}p{1.5cm}p{4cm}p{5.5cm}}{code}{Prop.}{Type}{Default}{Comment} ! \lineiv{name}{\code{string}}{\emph{no default}}{The \code{name} is the only ! mandatory arguments when instanciating a \class{APrimaryKey}. Once set, it ! should not be changed} ! \lineiv{multiplicity}{\code{~}}{~}{~} ! \lineiv{joinSemantic}{\code{~}}{~}{~} ! \end{longtableiv} %% \subsubsection{RToMany\label{pymodel-relationship-props-tomany}} ! \begin{longtableiv}{p{3cm}p{1.5cm}p{4cm}p{5.5cm}}{code}{Prop.}{Type}{Default}{Comment} ! \lineiv{name}{\code{string}}{\emph{no default}}{The \code{name} is the only ! mandatory arguments when instanciating a \class{APrimaryKey}. Once set, it ! should not be changed} ! \lineiv{multiplicity}{\code{}}{}{} ! \lineiv{joinSemantic}{\code{}}{}{} ! \end{longtableiv} |
From: <sbi...@us...> - 2003-08-26 20:05:06
|
Update of /cvsroot/modeling/ProjectModeling/Modeling/doc/UserGuide In directory sc8-pr-cvs1:/tmp/cvs-serv22482/Modeling/doc/UserGuide Modified Files: DefiningaModel.tex Log Message: Added type info. for PyModel-datetime, integer, float, string, PK and FK Index: DefiningaModel.tex =================================================================== RCS file: /cvsroot/modeling/ProjectModeling/Modeling/doc/UserGuide/DefiningaModel.tex,v retrieving revision 1.25 retrieving revision 1.26 diff -C2 -d -r1.25 -r1.26 *** DefiningaModel.tex 26 Aug 2003 19:38:35 -0000 1.25 --- DefiningaModel.tex 26 Aug 2003 20:04:58 -0000 1.26 *************** *** 856,860 **** \lineiv{width}{\code{int}}{\code{0}}{} \lineiv{scale}{\code{int}}{\code{0}}{} ! \lineiv{defaultValue}{}{\code{None}}{} \lineiv{usedForLocking}{\code{int}}{\code{0}}{} \lineiv{displayLabel}{\code{string}}{\code{''}}{} --- 856,860 ---- \lineiv{width}{\code{int}}{\code{0}}{} \lineiv{scale}{\code{int}}{\code{0}}{} ! \lineiv{defaultValue}{~}{\code{None}}{} \lineiv{usedForLocking}{\code{int}}{\code{0}}{} \lineiv{displayLabel}{\code{string}}{\code{''}}{} *************** *** 873,888 **** The component \class{ADateTime} redefines the following defaults: ! \begin{longtableiii}{p{3cm}p{4cm}p{7cm}}{code}{Prop.}{Default}{Comment} ! \lineiii{name}{\emph{no default}}{The \code{name} is the only mandatory arguments when instanciating a \class{ADateTime}. Once set, it should not be changed} ! \lineiii{type}{\code{'DateTime'}}{} ! \lineiii{externalType}{\code{TIMESTAMP}}{Be warned: not all database supports \code{TIMESTAMP}. If this is the case, you'll probably have to redefine this default value in your PyModel. Discussion on supported SQL datatypes can be found at section~\ref{attributes-props}.} ! \lineiii{defaultValue}{\code{None}}{} ! \lineiii{usedForLocking}{\code{1}}{} ! \end{longtableiii} \begin{notice} --- 873,888 ---- The component \class{ADateTime} redefines the following defaults: ! \begin{longtableiv}{p{3cm}p{1.5cm}p{4cm}p{5.5cm}}{code}{Prop.}{Type}{Default}{Comment} ! \lineiv{name}{\code{string}}{\emph{no default}}{The \code{name} is the only mandatory arguments when instanciating a \class{ADateTime}. Once set, it should not be changed} ! \lineiv{type}{\code{string}}{\code{'DateTime'}}{} ! \lineiv{externalType}{\code{string}}{\code{TIMESTAMP}}{Be warned: not all database supports \code{TIMESTAMP}. If this is the case, you'll probably have to redefine this default value in your PyModel. Discussion on supported SQL datatypes can be found at section~\ref{attributes-props}.} ! \lineiv{defaultValue}{~}{\code{None}}{} ! \lineiv{usedForLocking}{\code{int}}{\code{1}}{} ! \end{longtableiv} \begin{notice} *************** *** 896,910 **** The component \class{AFloat} redefines the following defaults: ! \begin{longtableiii}{p{3cm}p{4cm}p{7cm}}{code}{Prop.}{Default}{Comment} ! \lineiii{name}{\emph{no default}}{The \code{name} is the only mandatory ! arguments when instanciating a \class{AFloat}. Once set, it should not be ! changed} ! \lineiii{type}{\code{'string'}}{} ! \lineiii{externalType}{\code{'NUMERIC'}}{} ! \lineiii{precision}{\code{15}}{} ! \lineiii{scale}{\code{5}}{} ! \lineiii{defaultValue}{\code{0.0}}{} ! \lineiii{usedForLocking}{\code{1}}{} ! \end{longtableiii} \begin{notice} --- 896,910 ---- The component \class{AFloat} redefines the following defaults: ! \begin{longtableiv}{p{3cm}p{1.5cm}p{4cm}p{5.5cm}}{code}{Prop.}{Type}{Default}{Comment} ! \lineiv{name}{\code{string}}{\emph{no default}}{The \code{name} is the only ! mandatory arguments when instanciating a \class{AFloat}. Once set, it should ! not be changed} ! \lineiv{type}{\code{string}}{\code{'string'}}{} ! \lineiv{externalType}{\code{string}}{\code{'NUMERIC'}}{} ! \lineiv{precision}{\code{int}}{\code{15}}{} ! \lineiv{scale}{\code{int}}{\code{5}}{} ! \lineiv{defaultValue}{~}{\code{0.0}}{} ! \lineiv{usedForLocking}{\code{int}}{\code{1}}{} ! \end{longtableiv} \begin{notice} *************** *** 918,930 **** The component \class{AFloat} redefines the following defaults: ! \begin{longtableiii}{p{3cm}p{4cm}p{7cm}}{code}{Prop.}{Default}{Comment} ! \lineiii{name}{\emph{no default}}{The \code{name} is the only mandatory arguments when instanciating a \class{AInteger}. Once set, it should not be changed} ! \lineiii{type}{\code{'int'}}{} ! \lineiii{externalType}{\code{'INTEGER'}}{} ! \lineiii{defaultValue}{\code{0}}{} ! \lineiii{usedForLocking}{\code{1}}{} ! \end{longtableiii} \begin{notice} --- 918,930 ---- The component \class{AFloat} redefines the following defaults: ! \begin{longtableiv}{p{3cm}p{1.5cm}p{4cm}p{5.5cm}}{code}{Prop.}{Type}{Default}{Comment} ! \lineiv{name}{\code{string}}{\emph{no default}}{The \code{name} is the only mandatory arguments when instanciating a \class{AInteger}. Once set, it should not be changed} ! \lineiv{type}{\code{string}}{\code{'int'}}{} ! \lineiv{externalType}{\code{string}}{\code{'INTEGER'}}{} ! \lineiv{defaultValue}{~}{\code{0}}{} ! \lineiv{usedForLocking}{\code{int}}{\code{1}}{} ! \end{longtableiv} \begin{notice} *************** *** 938,954 **** The component \class{AFloat} redefines the following defaults: ! \begin{longtableiii}{p{3cm}p{4cm}p{7cm}}{code}{Prop.}{Default}{Comment} ! \lineiii{name}{\emph{no default}}{The \code{name} is the only mandatory ! arguments when instanciating a \class{AString}. Once set, it should not be ! changed} ! \lineiii{type}{\code{'string'}}{No matter whether you run python2.1 (where ! \code{type('').__name__=='string'}) or python2.2 (where \code{type('').__name__=='str'}), you should always use 'string' for a character type.} ! \lineiii{externalType}{\code{'VARCHAR'}}{} ! \lineiii{width}{\code{255}}{} ! \lineiii{defaultValue}{\code{''}}{} ! \lineiii{usedForLocking}{\code{1}}{} ! \end{longtableiii} \begin{notice} --- 938,954 ---- The component \class{AFloat} redefines the following defaults: ! \begin{longtableiv}{p{3cm}p{1.5cm}p{4cm}p{5.5cm}}{code}{Prop.}{Type}{Default}{Comment} ! \lineiv{name}{\code{string}}{\emph{no default}}{The \code{name} is the only ! mandatory arguments when instanciating a \class{AString}. Once set, it should ! not be changed} ! \lineiv{type}{\code{string}}{\code{'string'}}{No matter whether you run ! python2.1 (where \code{type('').__name__=='string'}) or python2.2 (where \code{type('').__name__=='str'}), you should always use 'string' for a character type.} ! \lineiv{externalType}{\code{string}}{\code{'VARCHAR'}}{} ! \lineiv{width}{\code{int}}{\code{255}}{} ! \lineiv{defaultValue}{~}{\code{''}}{} ! \lineiv{usedForLocking}{\code{int}}{\code{1}}{} ! \end{longtableiv} \begin{notice} *************** *** 962,977 **** The component \class{AFloat} redefines the following defaults: ! \begin{longtableiii}{p{3cm}p{4cm}p{7cm}}{code}{Prop.}{Default}{Comment} ! \lineiii{name}{\emph{no default}}{The \code{name} is the only mandatory ! arguments when instanciating a \class{APrimaryKey}. Once set, it should not be ! changed} ! \lineiii{isClassProperty}{\code{0}}{} ! \lineiii{isRequired}{\code{1}}{You should not change this default, nor ! overwrite it: a primary key should be mandatory.} ! \lineiii{defaultValue}{\code{None} if \code{isClassProperty} is false, ! \code{0} otherwise}{} ! \lineiii{doc}{\code{'Primary Key'}}{} ! \lineiii{usedForLocking}{\code{0}}{} ! \end{longtableiii} \begin{notice} --- 962,977 ---- The component \class{AFloat} redefines the following defaults: ! \begin{longtableiv}{p{3cm}p{1.5cm}p{4cm}p{5.5cm}}{code}{Prop.}{Type}{Default}{Comment} ! \lineiv{name}{\code{string}}{\emph{no default}}{The \code{name} is the only ! mandatory arguments when instanciating a \class{APrimaryKey}. Once set, it ! should not be changed} ! \lineiv{isClassProperty}{\code{int}}{\code{0}}{} ! \lineiv{isRequired}{\code{int}}{\code{1}}{You should not change this default, ! nor overwrite it: a primary key should be mandatory.} ! \lineiv{defaultValue}{~}{\code{None} if \code{isClassProperty} is ! false, \code{0} otherwise}{} ! \lineiv{doc}{\code{string}}{\code{'Primary Key'}}{} ! \lineiv{usedForLocking}{\code{int}}{\code{0}}{} ! \end{longtableiv} \begin{notice} *************** *** 985,998 **** The component \class{AFloat} redefines the following defaults: ! \begin{longtableiii}{p{3cm}p{4cm}p{7cm}}{code}{Prop.}{Default}{Comment} ! \lineiii{name}{\emph{no default}}{The \code{name} is the only mandatory ! arguments when instanciating a \class{AForeignKey}. Once set, it should not be ! changed} ! \lineiii{isClassProperty}{\code{0}}{} ! \lineiii{isRequired}{\code{0}}{} ! \lineiii{defaultValue}{\code{None}}{} ! \lineiii{doc}{\code{'Foreign Key'}}{} ! \lineiii{usedForLocking}{\code{0}}{} ! \end{longtableiii} \begin{notice} --- 985,998 ---- The component \class{AFloat} redefines the following defaults: ! \begin{longtableiv}{p{3cm}p{1.5cm}p{4cm}p{5.5cm}}{code}{Prop.}{Type}{Default}{Comment} ! \lineiv{name}{\code{string}}{\emph{no default}}{The \code{name} is the only ! mandatory arguments when instanciating a \class{AForeignKey}. Once set, it ! should not be changed} ! \lineiv{isClassProperty}{\code{int}}{\code{0}}{} ! \lineiv{isRequired}{\code{int}}{\code{0}}{} ! \lineiv{defaultValue}{~}{\code{None}}{} ! \lineiv{doc}{\code{string}}{\code{'Foreign Key'}}{} ! \lineiv{usedForLocking}{\code{int}}{\code{0}}{} ! \end{longtableiv} \begin{notice} |
From: <sbi...@us...> - 2003-08-26 19:40:42
|
Update of /cvsroot/modeling/ProjectModeling/Modeling In directory sc8-pr-cvs1:/tmp/cvs-serv17140/Modeling Modified Files: PyModel.py Log Message: PyModel.Model: - Fixed bug #795561: __init__() did not recognize 'version' as a parameter - Now raises PyModel.IncompatibleVersionError when a model has an incompatible version (was: ValueError) Index: PyModel.py =================================================================== RCS file: /cvsroot/modeling/ProjectModeling/Modeling/PyModel.py,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** PyModel.py 3 Aug 2003 12:54:48 -0000 1.4 --- PyModel.py 26 Aug 2003 19:40:24 -0000 1.5 *************** *** 58,62 **** from utils import isListOrTuple ! identity=lambda x: x def debug(msg): --- 58,67 ---- from utils import isListOrTuple ! class IncompatibleVersionError(RuntimeError): ! pass ! ! def identity(x): ! "Returns x, unchanged" ! return x def debug(msg): *************** *** 71,75 **** self.method=method self.param=args ! class BaseDescription: ''' Base description class (should not be exported to client code) ''' --- 76,82 ---- self.method=method self.param=args ! def __repr__(self): ! return '%s%s'%(self.method, self.param) ! class BaseDescription: ''' Base description class (should not be exported to client code) ''' *************** *** 123,130 **** self.name=self.requiredField(name) self.entities=list(kw.get('entities', [])) from Model import Model as MModel self.component=MModel(name) updateComponent(self, kw, Model.defaults, name, ! ignore=('entities','associations')) def entityNamed(self, name): --- 130,139 ---- self.name=self.requiredField(name) self.entities=list(kw.get('entities', [])) + self.entities=list(kw.get('associations', [])) from Model import Model as MModel self.component=MModel(name) updateComponent(self, kw, Model.defaults, name, ! ignore=('entities','associations','version')) ! self.version=kw.get('version', None) def entityNamed(self, name): *************** *** 177,181 **** # Check version if getattr(self, 'version', None)!=BaseDescription.VERSION: ! raise ValueError, 'Incompatible versions' # --- 186,190 ---- # Check version if getattr(self, 'version', None)!=BaseDescription.VERSION: ! raise IncompatibleVersionError, 'Incompatible versions --please check MIGRATION' # |
From: <sbi...@us...> - 2003-08-26 19:40:32
|
Update of /cvsroot/modeling/ProjectModeling In directory sc8-pr-cvs1:/tmp/cvs-serv17140 Modified Files: CHANGES Log Message: PyModel.Model: - Fixed bug #795561: __init__() did not recognize 'version' as a parameter - Now raises PyModel.IncompatibleVersionError when a model has an incompatible version (was: ValueError) Index: CHANGES =================================================================== RCS file: /cvsroot/modeling/ProjectModeling/CHANGES,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** CHANGES 24 Aug 2003 14:13:08 -0000 1.10 --- CHANGES 26 Aug 2003 19:40:24 -0000 1.11 *************** *** 8,11 **** --- 8,21 ---- -------------------------------------------------------- + * PyModel.Model: + + - Fixed bug #795561: __init__() did not recognize 'version' as a parameter + + - Now raises PyModel.IncompatibleVersionError when a model has an + incompatible version (was: ValueError) + + * Fix for bug #785432 included in the previous release was misplaced and + inactive. Fixed. + * SQLExpression: added support for joinClauseString(), which offers an alternative when the underlying db-server does not support SQL JOIN |
From: <sbi...@us...> - 2003-08-26 19:38:40
|
Update of /cvsroot/modeling/ProjectModeling/Modeling/doc/UserGuide In directory sc8-pr-cvs1:/tmp/cvs-serv16806/doc/UserGuide Modified Files: DefiningaModel.tex Log Message: Added doc for PyModel.Model.version Index: DefiningaModel.tex =================================================================== RCS file: /cvsroot/modeling/ProjectModeling/Modeling/doc/UserGuide/DefiningaModel.tex,v retrieving revision 1.24 retrieving revision 1.25 diff -C2 -d -r1.24 -r1.25 *** DefiningaModel.tex 26 Aug 2003 18:53:45 -0000 1.24 --- DefiningaModel.tex 26 Aug 2003 19:38:35 -0000 1.25 *************** *** 780,783 **** --- 780,819 ---- \subsubsection{Model's {\tt version}\label{pymodel-model-props-version}} + A special property, \code{version}, should be set in every PyModel, and it + should be equal to \code{PyModel.Model.VERSION}, currently \code{'0.1'} (a + string value). + + + Its purpose is to track changes in the PyModel mechanisms, especially to warn + you when some defaults have changed. When this happens, the file + \file{MIGRATION} shipped along with the source distribution, and located in + the top-level directory of the distribution, this file will contain details + about the changes, such as: the defaults that should be checked, how to update + your existing PyModels, etc. + + + How does this work? When a PyModel is interpreted, its \code{version} is + checked; if they do not correspond, you will get an exception + \exception{PyModel.IncompatibleVersionError} (a subclass of + \exception{RuntimeError}). + + + We highly recommend that you use the literate string value of \code{version} + and that you do not directly assign \code{PyModel.Model.VERSION} to it; you'll + supply it as a property, like in: + + \begin{verbatim} + >>> model=PyModel.Model('ModelName') + >>> model.version='0.1' + \end{verbatim} + + or: + \begin{verbatim} + >>> model=PyModel.Model('<ModelName>', version='0.1') + \end{verbatim} + + This way, you are sure that you'll be warned when the default behaviour of + PyModels changes. + \subsection{Entity\label{pymodel-entity-props}} |
From: <sbi...@us...> - 2003-08-26 18:53:49
|
Update of /cvsroot/modeling/ProjectModeling/Modeling/doc/UserGuide In directory sc8-pr-cvs1:/tmp/cvs-serv11878/doc/UserGuide Modified Files: DefiningaModel.tex Log Message: Added type info for PyModel-model's props Index: DefiningaModel.tex =================================================================== RCS file: /cvsroot/modeling/ProjectModeling/Modeling/doc/UserGuide/DefiningaModel.tex,v retrieving revision 1.23 retrieving revision 1.24 diff -C2 -d -r1.23 -r1.24 *** DefiningaModel.tex 26 Aug 2003 18:41:26 -0000 1.23 --- DefiningaModel.tex 26 Aug 2003 18:53:45 -0000 1.24 *************** *** 739,757 **** A model defines the following properties: ! \begin{longtableiii}{p{3cm}p{4cm}p{7cm}}{code}{Prop.}{Default}{Comment} ! \lineiii{name}{\emph{no default}}{The \code{name} is the only mandatory ! arguments when instanciating a \class{Model}. Once set, it should not be ! changed} ! \lineiii{packageName}{value of \code{name}}{Dynamically } ! \lineiii{adaptorName}{\code{''}}{} ! \lineiii{connDict} {\code{\{ 'host': '', 'database': '', 'user': '', 'password': '' \}}}{} ! \lineiii{entities}{\code{[]}}{Entities for the model are appended to this sequence.} ! \lineiii{associations}{\code{[]}}{Associations are appended to this sequence.} ! \lineiii{doc}{\code{''}}{this is the ``comment'' field} ! \lineiii{version}{\emph{no default}}{} ! \end{longtableiii} \begin{notice} --- 739,758 ---- A model defines the following properties: ! \begin{longtableiv}{p{3cm}p{1.5cm}p{4cm}p{5.5cm}}{code}{Prop.}{Type}{Default}{Comment} ! \lineiv{name}{\code{string}}{\emph{no default}}{The \code{name} is the only ! mandatory arguments when instanciating a \class{Model}. Once set, it should ! not be changed} ! \lineiv{packageName}{\code{string}}{value of \code{name}}{Dynamically } ! \lineiv{adaptorName}{\code{string}}{\code{''}}{} ! \lineiv{connDict}{\code{dict}} {\code{\{ 'host': '', 'database': '', 'user': '', 'password': '' \}}}{} ! \lineiv{entities}{sequence}{\code{[]}}{Entities for the model are appended to this sequence.} ! \lineiv{associations}{sequence}{\code{[]}}{Associations are appended to this sequence.} ! \lineiv{doc}{\code{string}}{\code{''}}{this is the ``comment'' field} ! \lineiv{version}{\code{string}}{\emph{no default}}{currently \code{'0.1'} ! --see below} ! \end{longtableiv} \begin{notice} *************** *** 774,799 **** \begin{verbatim} ! model.adaptorName='Postgresql'}. \end{verbatim} \subsection{Entity\label{pymodel-entity-props}} The component \class{Entity} defines the following properties: ! \begin{longtableiv}{p{3cm}p{4cm}p{1.5cm}p{5.5cm}}{code}{Prop.}{Default}{type}{Comment} ! \lineiv{name}{\emph{no default}}{\code{string}}{The \code{name} is the only mandatory arguments when instanciating a \class{Entity}. Once set, it should not be changed} ! \lineiv{className}{value of \code{name}}{\code{string}}{} ! \lineiv{moduleName}{value of \code{name}}{\code{string}}{} ! \lineiv{externalName}{\code{externalNameForInternalName(name)}}{\code{string}}{} ! \lineiv{isAbstract}{\code{0}}{\code{int}}{} ! \lineiv{isReadOnly}{\code{0}}{\code{int}}{} ! \lineiv{properties}{\code{[]}}{\code{sequence}}{Sequence of \class{Attribute} and \class{Relationship} objects} ! \lineiv{parent}{\code{''}}{\code{string}}{The \code{name} of its parent entity (inheritance)} ! \lineiv{typeName}{\code{''}}{\code{string}}{} ! \lineiv{doc}{\code{''}}{\code{string}}{comment} \end{longtableiv} \begin{notice} --- 775,802 ---- \begin{verbatim} ! model.adaptorName='Postgresql' \end{verbatim} + \subsubsection{Model's {\tt version}\label{pymodel-model-props-version}} + \subsection{Entity\label{pymodel-entity-props}} The component \class{Entity} defines the following properties: ! \begin{longtableiv}{p{3cm}p{1.5cm}p{4cm}p{5.5cm}}{code}{Prop.}{Type}{Default}{Comment} ! \lineiv{name}{\code{string}}{\emph{no default}}{The \code{name} is the only mandatory arguments when instanciating a \class{Entity}. Once set, it should not be changed} ! \lineiv{className}{\code{string}}{value of \code{name}}{} ! \lineiv{moduleName}{\code{string}}{value of \code{name}}{} ! \lineiv{externalName}{\code{string}}{\code{externalNameForInternalName(name)}}{} ! \lineiv{isAbstract}{\code{int}}{\code{0}}{} ! \lineiv{isReadOnly}{\code{int}}{\code{0}}{} ! \lineiv{properties}{sequence}{\code{[]}}{Sequence of \class{Attribute} and \class{Relationship} objects} ! \lineiv{parent}{\code{string}}{\code{''}}{The \code{name} of its parent entity (inheritance)} ! \lineiv{typeName}{\code{string}}{\code{''}}{} ! \lineiv{doc}{\code{string}}{\code{''}}{comment} \end{longtableiv} \begin{notice} *************** *** 805,809 **** \subsection{Attribute\label{pymodel-attribute-props}} ! \begin{longtableiv}{p{3cm}p{4cm}p{1.5cmcm}p{5.5cm}}{code}{Prop.}{Type}{Default}{Comment} \lineiv{name}{\code{string}}{\emph{no default}}{The \code{name} is the only mandatory arguments when instanciating a \class{Attribute}. Once set, it should not be --- 808,812 ---- \subsection{Attribute\label{pymodel-attribute-props}} ! \begin{longtableiv}{p{3cm}p{1.5cm}p{4cm}p{5.5cm}}{code}{Prop.}{Type}{Default}{Comment} \lineiv{name}{\code{string}}{\emph{no default}}{The \code{name} is the only mandatory arguments when instanciating a \class{Attribute}. Once set, it should not be |
From: <sbi...@us...> - 2003-08-26 18:41:31
|
Update of /cvsroot/modeling/ProjectModeling/Modeling/doc/UserGuide In directory sc8-pr-cvs1:/tmp/cvs-serv9717/doc/UserGuide Modified Files: DefiningaModel.tex Log Message: Added type for PyModel-entity and -attribute's props Index: DefiningaModel.tex =================================================================== RCS file: /cvsroot/modeling/ProjectModeling/Modeling/doc/UserGuide/DefiningaModel.tex,v retrieving revision 1.22 retrieving revision 1.23 diff -C2 -d -r1.22 -r1.23 *** DefiningaModel.tex 24 Aug 2003 17:58:16 -0000 1.22 --- DefiningaModel.tex 26 Aug 2003 18:41:26 -0000 1.23 *************** *** 93,96 **** --- 93,97 ---- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + \newpage \section{Concepts\label{model-concepts}} *************** *** 604,607 **** --- 605,609 ---- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + \newpage \section{PyModels\label{pymodel}} *************** *** 779,798 **** The component \class{Entity} defines the following properties: ! \begin{longtableiii}{p{3cm}p{4cm}p{7cm}}{code}{Prop.}{Default}{Comment} ! \lineiii{name}{\emph{no default}}{The \code{name} is the only mandatory arguments when instanciating a \class{Entity}. Once set, it should not be changed} ! \lineiii{className}{value of \code{name}}{} ! \lineiii{moduleName}{value of \code{name}}{} ! \lineiii{externalName}{\code{externalNameForInternalName(name)}}{} ! \lineiii{isAbstract}{\code{0}}{} ! \lineiii{isReadOnly}{\code{0}}{} ! \lineiii{properties}{\code{[]}}{Sequence of \class{Attribute} and \class{Relationship} objects} ! \lineiii{parent}{\code{''}}{The name of its parent entity (inheritance)} ! \lineiii{typeName}{\code{''}}{} ! \lineiii{doc}{\code{''}}{comment} ! \end{longtableiii} \begin{notice} For details about these properties and their meaning, please refer --- 781,800 ---- The component \class{Entity} defines the following properties: ! \begin{longtableiv}{p{3cm}p{4cm}p{1.5cm}p{5.5cm}}{code}{Prop.}{Default}{type}{Comment} ! \lineiv{name}{\emph{no default}}{\code{string}}{The \code{name} is the only mandatory arguments when instanciating a \class{Entity}. Once set, it should not be changed} ! \lineiv{className}{value of \code{name}}{\code{string}}{} ! \lineiv{moduleName}{value of \code{name}}{\code{string}}{} ! \lineiv{externalName}{\code{externalNameForInternalName(name)}}{\code{string}}{} ! \lineiv{isAbstract}{\code{0}}{\code{int}}{} ! \lineiv{isReadOnly}{\code{0}}{\code{int}}{} ! \lineiv{properties}{\code{[]}}{\code{sequence}}{Sequence of \class{Attribute} and \class{Relationship} objects} ! \lineiv{parent}{\code{''}}{\code{string}}{The \code{name} of its parent entity (inheritance)} ! \lineiv{typeName}{\code{''}}{\code{string}}{} ! \lineiv{doc}{\code{''}}{\code{string}}{comment} ! \end{longtableiv} \begin{notice} For details about these properties and their meaning, please refer *************** *** 803,823 **** \subsection{Attribute\label{pymodel-attribute-props}} ! \begin{longtableiii}{p{3cm}p{4cm}p{7cm}}{code}{Prop.}{Default}{Comment} ! \lineiii{name}{\emph{no default}}{The \code{name} is the only mandatory arguments when instanciating a \class{Attribute}. Once set, it should not be changed} ! \lineiii{columnName}{\code{externalNameForInternalName(name)}}{} ! \lineiii{type}{\code{'int'}}{} ! \lineiii{externalType}{\code{'INTEGER'}}{} ! \lineiii{isClassProperty}{\code{1}}{} ! \lineiii{isRequired}{\code{0}}{} ! \lineiii{precision}{\code{0}}{} ! \lineiii{width}{\code{0}}{} ! \lineiii{scale}{\code{0}}{} ! \lineiii{defaultValue}{\code{None}}{} ! \lineiii{usedForLocking}{\code{0}}{} ! \lineiii{displayLabel}{\code{''}}{} ! \lineiii{doc}{\code{''}}{comment} ! \end{longtableiii} \begin{notice} --- 805,825 ---- \subsection{Attribute\label{pymodel-attribute-props}} ! \begin{longtableiv}{p{3cm}p{4cm}p{1.5cmcm}p{5.5cm}}{code}{Prop.}{Type}{Default}{Comment} ! \lineiv{name}{\code{string}}{\emph{no default}}{The \code{name} is the only mandatory arguments when instanciating a \class{Attribute}. Once set, it should not be changed} ! \lineiv{columnName}{\code{string}}{\code{externalNameForInternalName(name)}}{} ! \lineiv{type}{\code{string}}{\code{'int'}}{} ! \lineiv{externalType}{\code{string}}{\code{'INTEGER'}}{} ! \lineiv{isClassProperty}{\code{int}}{\code{1}}{} ! \lineiv{isRequired}{\code{int}}{\code{0}}{} ! \lineiv{precision}{\code{int}}{\code{0}}{} ! \lineiv{width}{\code{int}}{\code{0}}{} ! \lineiv{scale}{\code{int}}{\code{0}}{} ! \lineiv{defaultValue}{}{\code{None}}{} ! \lineiv{usedForLocking}{\code{int}}{\code{0}}{} ! \lineiv{displayLabel}{\code{string}}{\code{''}}{} ! \lineiv{doc}{\code{string}}{\code{''}}{comment} ! \end{longtableiv} \begin{notice} *************** *** 982,985 **** --- 984,988 ---- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + \newpage \section{{\sc Xml} model\label{model-xml-format}} *************** *** 1212,1215 **** --- 1215,1219 ---- \makeatother %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + \newpage \section{General guidelines and gotchas \label{guidelines-gotchas}} |
From: <sbi...@us...> - 2003-08-26 07:16:21
|
Update of /cvsroot/modeling/ProjectModeling/Modeling/doc/UserGuide In directory sc8-pr-cvs1:/tmp/cvs-serv10473/doc/UserGuide Modified Files: DefiningaModel.tex Log Message: Added doc. for multiplicity lower/upper bound Index: DefiningaModel.tex =================================================================== RCS file: /cvsroot/modeling/ProjectModeling/Modeling/doc/UserGuide/DefiningaModel.tex,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -d -r1.16 -r1.17 *** DefiningaModel.tex 24 Aug 2003 14:26:18 -0000 1.16 --- DefiningaModel.tex 24 Aug 2003 14:33:31 -0000 1.17 *************** *** 539,546 **** \item[\code{multiplicityLowerBound}, \code{multiplicityUpperBound}:] ! the lower- and upper- bound defining the ! relationships' multiplicity. Note that the lower- and upper-bounds are ! automatically checked when you try to save changes you made to an ! object. The exact definition of to-one and to-many relationships --- 539,552 ---- \item[\code{multiplicityLowerBound}, \code{multiplicityUpperBound}:] ! the multiplicty lower bound of a relationship defines the minimum number ! of objects that should be in relation. If the lower bound is zero, none ! are required: this is an \emph{optional} relationship; if the lower ! bound is one or more, this is a \emph{mandatory} relationship. ! ! The multiplicity upper bound defines the maximum allowed number of ! objects in relations. It can be any positive number, given that it is ! always greater or equal than the lower bound. As a special exception, ! values \code{-1} (minus one) or \code{'*'} serve to indicate an ! unconstrained upper bound. The exact definition of to-one and to-many relationships |
From: <sbi...@us...> - 2003-08-25 15:47:27
|
Update of /cvsroot/modeling/ProjectModeling/Modeling/DatabaseAdaptors/SQLiteAdaptorLayer In directory sc8-pr-cvs1:/tmp/cvs-serv8310/Modeling/DatabaseAdaptors/SQLiteAdaptorLayer Modified Files: __init__.py Log Message: Added the list of supported SQL datatypes in __init__ docstring Index: __init__.py =================================================================== RCS file: /cvsroot/modeling/ProjectModeling/Modeling/DatabaseAdaptors/SQLiteAdaptorLayer/__init__.py,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** __init__.py 11 Jun 2003 11:10:17 -0000 1.1 --- __init__.py 24 Aug 2003 14:15:13 -0000 1.2 *************** *** 33,36 **** --- 33,42 ---- 'host', 'user', 'password' -- ignored + Supported SQL datatypes are: + + VARCHAR, CHAR, TEXT, + FLOAT, INT, INTEGER, NUMERIC, NUMBER, DECIMAL, SMALLINT, REAL + DATE, TIME, DATETIME + Informations about the SQLite database can be found at http://www.sqlite.org/. """ |
From: <sbi...@us...> - 2003-08-25 00:57:22
|
Update of /cvsroot/modeling/ProjectModeling/Modeling/DatabaseAdaptors/PostgresqlAdaptorLayer In directory sc8-pr-cvs1:/tmp/cvs-serv8310/Modeling/DatabaseAdaptors/PostgresqlAdaptorLayer Modified Files: __init__.py Log Message: Added the list of supported SQL datatypes in __init__ docstring Index: __init__.py =================================================================== RCS file: /cvsroot/modeling/ProjectModeling/Modeling/DatabaseAdaptors/PostgresqlAdaptorLayer/__init__.py,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** __init__.py 3 Aug 2003 11:10:50 -0000 1.3 --- __init__.py 24 Aug 2003 14:15:13 -0000 1.4 *************** *** 50,53 **** --- 50,62 ---- 'user', 'password' -- user credentials + Supported SQL datatypes are: + + VARCHAR, CHAR, TEXT, + FLOAT, INT, INTEGER, NUMERIC, + DATE, TIME, DATETIME, TIMESTAMP, TIMESTAMP WITHOUT TIME ZONE, + TIMESTAMP WITH TIME ZONE + + Note: postgresql v7.3+ does not support DATETIME anymore. + """ |
From: <sbi...@us...> - 2003-08-24 23:56:24
|
Update of /cvsroot/modeling/ProjectModeling/Modeling/doc/UserGuide In directory sc8-pr-cvs1:/tmp/cvs-serv9666/doc/UserGuide Modified Files: DefiningaModel.tex Log Message: Added doc.&links for supported external SQL datatypes Index: DefiningaModel.tex =================================================================== RCS file: /cvsroot/modeling/ProjectModeling/Modeling/doc/UserGuide/DefiningaModel.tex,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** DefiningaModel.tex 23 Aug 2003 16:52:36 -0000 1.15 --- DefiningaModel.tex 24 Aug 2003 14:26:18 -0000 1.16 *************** *** 358,362 **** \item[\code{type}:] this is the associated python type, which can be either ! \code{string}, \code{'int'}\footnote{Note that python types \code{int} and \code{long int} are treated the same way. This is due to different DB-adaptors having different behaviours --some can also have a --- 358,362 ---- \item[\code{type}:] this is the associated python type, which can be either ! \code{string}, \code{int}\footnote{Note that python types \code{int} and \code{long int} are treated the same way. This is due to different DB-adaptors having different behaviours --some can also have a *************** *** 365,377 **** (e.g. 42); anyway it sounds reasonable to consider \code{int} and \code{long int} as equivalent within the framework's core.} ! \code{'float'} or \code{'DateTime'} (mapping to egenix's \module{mxDateTime} --or to \class{DCOracle2.Timestamp}). You should keep % [sbigaret] NOTE: this might be checked and/or enforced at some time % \module{mxDateTime}). While this is not (yet) checked, you should keep ! the externalType and the python type in sync (python \code{string}: ! SQL \code{CHAR}, \code{VARCHAR} or \code{TEXT}\footnote{if you ! db-server supports \code{TEXT}}, \code{int}: SQL \code{INTEGER}, ! etc.) \item[\code{isClassProperty}:] indicates whether the Attribute correspond to a --- 365,377 ---- (e.g. 42); anyway it sounds reasonable to consider \code{int} and \code{long int} as equivalent within the framework's core.} ! \code{float} or \code{DateTime} (mapping to egenix's \module{mxDateTime} --or to \class{DCOracle2.Timestamp}). You should keep % [sbigaret] NOTE: this might be checked and/or enforced at some time % \module{mxDateTime}). While this is not (yet) checked, you should keep ! the \code{externalType} (described below) and the python type in sync ! (python \code{string}: SQL \code{CHAR}, \code{VARCHAR} or ! \code{TEXT}\footnote{if you db-server supports \code{TEXT}}, ! \code{int}: SQL \code{INTEGER}, etc.). \item[\code{isClassProperty}:] indicates whether the Attribute correspond to a *************** *** 389,397 **** \item[\code{externalType}:] the SQL type to which this attribute should be ! mapped. Supported SQL types are: \code{INTEGER}/\code{INT}, ! \code{CHAR}/\code{VARCHAR} (requires a \code{width}, see below), ! \code{TEXT}, ! \code{NUMERIC} (requires \code{precision} and \code{scale}, see ! below), \code{TIMESTAMP} and \code{DATETIME}. \item[\code{precision}, \code{scale}, \code{width}:] --- 389,406 ---- \item[\code{externalType}:] the SQL type to which this attribute should be ! mapped. The supported SQL datatypes depend on the adaptor, please ! refer to their documentation for details: ! ! \begin{itemize} ! ! \item{\bf MySQL:} \ulink{MySQLAdaptorLayer}{http://modeling.sourceforge.net/API/Modeling-API/public/Modeling.DatabaseAdaptors.MySQLAdaptorLayer-module.html} ! ! \item{\bf Oracle:} \ulink{OracleAdaptorLayer}{http://modeling.sourceforge.net/API/Modeling-API/public/Modeling.DatabaseAdaptors.OracleAdaptorLayer-module.html} ! ! \item{\bf PostgresqlSQL:} \ulink{PostgresqlAdaptorLayer}{http://modeling.sourceforge.net/API/Modeling-API/public/Modeling.DatabaseAdaptors.PostgresqlAdaptorLayer-module.html} ! ! \item{\bf SQLite:} \ulink{SQLiteAdaptorLayer}{http://modeling.sourceforge.net/API/Modeling-API/public/Modeling.DatabaseAdaptors.SQLiteAdaptorLayer-module.html} ! ! \end{itemize} \item[\code{precision}, \code{scale}, \code{width}:] |
From: <sbi...@us...> - 2003-08-24 19:15:44
|
Update of /cvsroot/modeling/ProjectModeling/Modeling/doc/UserGuide In directory sc8-pr-cvs1:/tmp/cvs-serv8326/doc/UserGuide Modified Files: DefiningaModel.tex Log Message: misc. update Index: DefiningaModel.tex =================================================================== RCS file: /cvsroot/modeling/ProjectModeling/Modeling/doc/UserGuide/DefiningaModel.tex,v retrieving revision 1.21 retrieving revision 1.22 diff -C2 -d -r1.21 -r1.22 *** DefiningaModel.tex 24 Aug 2003 17:56:14 -0000 1.21 --- DefiningaModel.tex 24 Aug 2003 17:58:16 -0000 1.22 *************** *** 782,786 **** \lineiii{name}{\emph{no default}}{The \code{name} is the only mandatory ! arguments when instanciating a \class{Attribute}. Once set, it should not be changed} \lineiii{className}{value of \code{name}}{} --- 782,786 ---- \lineiii{name}{\emph{no default}}{The \code{name} is the only mandatory ! arguments when instanciating a \class{Entity}. Once set, it should not be changed} \lineiii{className}{value of \code{name}}{} *************** *** 834,838 **** \begin{longtableiii}{p{3cm}p{4cm}p{7cm}}{code}{Prop.}{Default}{Comment} \lineiii{name}{\emph{no default}}{The \code{name} is the only mandatory ! arguments when instanciating a \class{Attribute}. Once set, it should not be changed} \lineiii{type}{\code{'DateTime'}}{} --- 834,838 ---- \begin{longtableiii}{p{3cm}p{4cm}p{7cm}}{code}{Prop.}{Default}{Comment} \lineiii{name}{\emph{no default}}{The \code{name} is the only mandatory ! arguments when instanciating a \class{ADateTime}. Once set, it should not be changed} \lineiii{type}{\code{'DateTime'}}{} *************** *** 857,861 **** \begin{longtableiii}{p{3cm}p{4cm}p{7cm}}{code}{Prop.}{Default}{Comment} \lineiii{name}{\emph{no default}}{The \code{name} is the only mandatory ! arguments when instanciating a \class{Attribute}. Once set, it should not be changed} \lineiii{type}{\code{'string'}}{} --- 857,861 ---- \begin{longtableiii}{p{3cm}p{4cm}p{7cm}}{code}{Prop.}{Default}{Comment} \lineiii{name}{\emph{no default}}{The \code{name} is the only mandatory ! arguments when instanciating a \class{AFloat}. Once set, it should not be changed} \lineiii{type}{\code{'string'}}{} *************** *** 879,883 **** \begin{longtableiii}{p{3cm}p{4cm}p{7cm}}{code}{Prop.}{Default}{Comment} \lineiii{name}{\emph{no default}}{The \code{name} is the only mandatory ! arguments when instanciating a \class{Attribute}. Once set, it should not be changed} \lineiii{type}{\code{'int'}}{} --- 879,883 ---- \begin{longtableiii}{p{3cm}p{4cm}p{7cm}}{code}{Prop.}{Default}{Comment} \lineiii{name}{\emph{no default}}{The \code{name} is the only mandatory ! arguments when instanciating a \class{AInteger}. Once set, it should not be changed} \lineiii{type}{\code{'int'}}{} *************** *** 899,903 **** \begin{longtableiii}{p{3cm}p{4cm}p{7cm}}{code}{Prop.}{Default}{Comment} \lineiii{name}{\emph{no default}}{The \code{name} is the only mandatory ! arguments when instanciating a \class{Attribute}. Once set, it should not be changed} \lineiii{type}{\code{'string'}}{No matter whether you run python2.1 (where --- 899,903 ---- \begin{longtableiii}{p{3cm}p{4cm}p{7cm}}{code}{Prop.}{Default}{Comment} \lineiii{name}{\emph{no default}}{The \code{name} is the only mandatory ! arguments when instanciating a \class{AString}. Once set, it should not be changed} \lineiii{type}{\code{'string'}}{No matter whether you run python2.1 (where *************** *** 923,927 **** \begin{longtableiii}{p{3cm}p{4cm}p{7cm}}{code}{Prop.}{Default}{Comment} \lineiii{name}{\emph{no default}}{The \code{name} is the only mandatory ! arguments when instanciating a \class{Attribute}. Once set, it should not be changed} \lineiii{isClassProperty}{\code{0}}{} --- 923,927 ---- \begin{longtableiii}{p{3cm}p{4cm}p{7cm}}{code}{Prop.}{Default}{Comment} \lineiii{name}{\emph{no default}}{The \code{name} is the only mandatory ! arguments when instanciating a \class{APrimaryKey}. Once set, it should not be changed} \lineiii{isClassProperty}{\code{0}}{} *************** *** 946,950 **** \begin{longtableiii}{p{3cm}p{4cm}p{7cm}}{code}{Prop.}{Default}{Comment} \lineiii{name}{\emph{no default}}{The \code{name} is the only mandatory ! arguments when instanciating a \class{Attribute}. Once set, it should not be changed} \lineiii{isClassProperty}{\code{0}}{} --- 946,950 ---- \begin{longtableiii}{p{3cm}p{4cm}p{7cm}}{code}{Prop.}{Default}{Comment} \lineiii{name}{\emph{no default}}{The \code{name} is the only mandatory ! arguments when instanciating a \class{AForeignKey}. Once set, it should not be changed} \lineiii{isClassProperty}{\code{0}}{} |
From: <sbi...@us...> - 2003-08-24 19:15:38
|
Update of /cvsroot/modeling/ProjectModeling/Modeling/doc/UserGuide In directory sc8-pr-cvs1:/tmp/cvs-serv7317/doc/UserGuide Modified Files: DefiningaModel.tex Log Message: Updated doc. for PyModel: misc. fix defaultValue for APrimaryKey Index: DefiningaModel.tex =================================================================== RCS file: /cvsroot/modeling/ProjectModeling/Modeling/doc/UserGuide/DefiningaModel.tex,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -d -r1.19 -r1.20 *** DefiningaModel.tex 24 Aug 2003 17:38:04 -0000 1.19 --- DefiningaModel.tex 24 Aug 2003 17:53:14 -0000 1.20 *************** *** 928,932 **** \lineiii{isRequired}{\code{1}}{You should not change this default, nor overwrite it: a primary key should be mandatory.} ! \lineiii{defaultValue}{\code{}}{} \lineiii{doc}{\code{'Primary Key'}}{} \lineiii{usedForLocking}{\code{0}}{} --- 928,933 ---- \lineiii{isRequired}{\code{1}}{You should not change this default, nor overwrite it: a primary key should be mandatory.} ! \lineiii{defaultValue}{\code{None} if \code{isClassProperty} is false, ! \code{0} otherwise}{} \lineiii{doc}{\code{'Primary Key'}}{} \lineiii{usedForLocking}{\code{0}}{} |
From: <sbi...@us...> - 2003-08-24 19:01:41
|
Update of /cvsroot/modeling/ProjectModeling/Modeling/doc/UserGuide In directory sc8-pr-cvs1:/tmp/cvs-serv31265/doc/UserGuide Modified Files: DefiningaModel.tex Log Message: Updated doc. for PyModel: organization of the section, defining defaults, component: Model Index: DefiningaModel.tex =================================================================== RCS file: /cvsroot/modeling/ProjectModeling/Modeling/doc/UserGuide/DefiningaModel.tex,v retrieving revision 1.17 retrieving revision 1.18 diff -C2 -d -r1.17 -r1.18 *** DefiningaModel.tex 24 Aug 2003 14:33:31 -0000 1.17 --- DefiningaModel.tex 24 Aug 2003 16:55:51 -0000 1.18 *************** *** 606,609 **** --- 606,615 ---- \section{PyModels\label{pymodel}} + Now that we know the different components of a model, it is time to examine + how they can be practically defined. This section examines a python definition + of a model, and the next section will show how this can be done equivalently + in a xml-file. + + A PyModel is a python module that defines a variable \var{model} that is of type \class{PyModel.Model}. Objects of type \class{Model} collect *************** *** 617,620 **** --- 623,651 ---- and others may of course be defined as necessary. + + \subsection{Organization of this chapter} + + The next section, \ref{pymodel-sample}, will give a full example of a PyModel. + + + Section~\ref{pymodel-defauls} will then discuss defaults: what they are, and + how they will be changed. It should be read before referring to the + components' details, since it explains important things that won't be repeated + afterwards. + + + Then, for each component of a model (\class{Model}, \class{Entity}, etc.), a + comprehensive list of available properties will be given, including their + default values. These properties are those we saw in + section~\ref{model-details}. We suppose here that the content of this section + is known, so if you need details about the meaning and effects of some + component's property, please refer to the component's detailed description, + above. + + + Last, please note that the section describing Models + (~\ref{pymodel-entity-props}) exposes in details how these properties can be + set; this information will not be repeated in the sections coming afterwards. + \subsection{A sample PyModel\label{pymodel-sample}} *************** *** 624,627 **** --- 655,661 ---- \class{APrimaryKey} and \class{AString}. + \makeatletter + \def\verbatim@font{\footnotesize\ttfamily} + \makeatother \begin{verbatim} from Modeling.PyModel import * *************** *** 641,646 **** _connDict = {'database': 'AUTHOR_BOOKS'} ! model = Model('AuthorBooks',adaptorName='Postgresql', ! connDict=_connDict) model.version='0.1' model.entities = [ --- 675,679 ---- _connDict = {'database': 'AUTHOR_BOOKS'} ! model = Model('AuthorBooks',adaptorName='Postgresql', connDict=_connDict) model.version='0.1' model.entities = [ *************** *** 648,653 **** Entity('Book', properties=[ AString('title', isRequired=1, columnName='title'), ! AFloat('price'), ! ], ), Entity('Writer', --- 681,686 ---- Entity('Book', properties=[ AString('title', isRequired=1, columnName='title'), ! AFloat('price'), ! ], ), Entity('Writer', *************** *** 661,665 **** ), ] - model.associations=[ Association('Book', 'Writer', --- 694,697 ---- *************** *** 671,678 **** ] \end{verbatim} ! \subsection{Model\label{pymodel-entity-props}} ! tbd. \subsection{Entity\label{pymodel-entity-props}} --- 703,777 ---- ] \end{verbatim} + \makeatletter + \def\verbatim@font{\normalsize\ttfamily} + \makeatother ! A PyModel is typically made of two parts: a first part sets the defaults, then ! the second one defines the model. Defaults helps you keep the model definition ! tidy, by removing the repetitive parts from the model definition itself; in ! this example, the defaults add a primary key to each entity, sets the ! \code{width} for strings, etc. ! \subsection{Defaults\label{pymodel-defaults}} ! ! In the coming description of the components of a model, you'll see that every ! possible property is assigned a default value. ! ! This default value will be used if you omit it in your definition. For ! example, a component \class{AString} representing a string attribute has a ! default value of \code{255} assigned to its \code{width}. This default value ! may, or may be not, what you need. To avoid the unnecessary overhead of ! overwriting the defaults in each component \class{AString}, you can set a ! different default for one, or more, of its properties: ! \begin{verbatim} ! AString.defaults['width']=30 ! AString.defaults['externalType']='TEXT' ! \end{verbatim} ! ! This is a general mechanism that you can use for every single property defined ! by a component, simply by changing the corresponding entry in the component ! class's dictionary \code{defaults}. ! ! \subsection{Model\label{pymodel-model-props}} ! ! A model defines the following properties: ! ! \begin{longtableiii}{p{3cm}p{4cm}p{7cm}}{code}{Prop.}{Default}{Comment} ! \lineiii{name}{\emph{no default}}{The \code{name} is the only mandatory ! arguments when instanciating a \class{Model}. Once set, it should not be ! changed} ! \lineiii{packageName}{value of \code{name}}{Dynamically } ! \lineiii{adaptorName}{\code{''}}{} ! \lineiii{connDict} ! {\code{\{ 'host': '', 'database': '', 'user': '', 'password': '' \}}}{} ! \lineiii{entities}{\code{[]}}{Entities for the model are appended to this ! sequence.} ! \lineiii{associations}{\code{[]}}{Associations are appended to this ! sequence.} ! \lineiii{doc}{\code{''}}{this is the ``comment'' field} ! \lineiii{version}{\emph{no default}}{} ! \end{longtableiii} ! ! \begin{notice} ! For details about these properties and their meaning, please refer to~\ref{model-props}. ! \end{notice} ! ! When instanciated, a model should supply its name: ! ! \begin{verbatim} ! model = Model('AuthorBooks') ! \end{verbatim} ! ! Properties can be set at instanciation time: ! ! \begin{verbatim} ! model = Model('AuthorBooks', adaptorName='Postgresql') ! \end{verbatim} ! ! or by direct assignment: ! ! \begin{verbatim} ! model.adaptorName='Postgresql'}. ! \end{verbatim} \subsection{Entity\label{pymodel-entity-props}} *************** *** 680,690 **** tbd. ! \subsection{Attribute\label{pymodel-entity-props}} AInteger, AString, AFloat, ADateTime, APrimaryKey, AForeignKey ! \subsubsection{Primary keys\label{pymodel-entity-props-primary-keys}} ! \subsubsection{ForeignKeys\label{pymodel-entity-props-foreign-keys}} \subsection{Relationship\label{pymodel-relationship-props}} --- 779,789 ---- tbd. ! \subsection{Attribute\label{pymodel-attribute-props}} AInteger, AString, AFloat, ADateTime, APrimaryKey, AForeignKey ! \subsubsection{Primary keys\label{pymodel-attribute-props-primary-keys}} ! \subsubsection{ForeignKeys\label{pymodel-attribute-props-foreign-keys}} \subsection{Relationship\label{pymodel-relationship-props}} *************** *** 856,859 **** --- 955,961 ---- \subsection{Full format of an xml-model\label{full-xml-format}} + \makeatletter + \def\verbatim@font{\footnotesize\ttfamily} + \makeatother \begin{verbatim} <?xml version='1.0' encoding='iso-8859-1'?> *************** *** 920,925 **** </model> \end{verbatim} ! ! %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{General guidelines and gotchas \label{guidelines-gotchas}} --- 1022,1028 ---- </model> \end{verbatim} ! \makeatletter ! \def\verbatim@font{\normalsize\ttfamily} ! \makeatother %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{General guidelines and gotchas \label{guidelines-gotchas}} |
From: <sbi...@us...> - 2003-08-24 17:57:59
|
Update of /cvsroot/modeling/ProjectModeling/Modeling/DatabaseAdaptors/OracleAdaptorLayer In directory sc8-pr-cvs1:/tmp/cvs-serv8310/Modeling/DatabaseAdaptors/OracleAdaptorLayer Modified Files: __init__.py Log Message: Added the list of supported SQL datatypes in __init__ docstring Index: __init__.py =================================================================== RCS file: /cvsroot/modeling/ProjectModeling/Modeling/DatabaseAdaptors/OracleAdaptorLayer/__init__.py,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** __init__.py 19 Aug 2003 22:03:34 -0000 1.1 --- __init__.py 24 Aug 2003 14:15:13 -0000 1.2 *************** *** 37,49 **** ! Supported datatypes are: ! char, varchar, varchar2, nchar, nvarchar2 ! number, decimal, int, integer, smallint, float, numeric, real, ! date, time with the additional datatypes for 9i: ! timestamp, timestamp with time zone, timestamp with local time zone """ --- 37,49 ---- ! Supported SQL datatypes are: ! CHAR, VARCHAR, VARCHAR2, NCHAR, NVARCHAR2 ! NUMBER, DECIMAL, INT, INTEGER, SMALLINT, FLOAT, NUMERIC, REAL, ! DATE, TIME with the additional datatypes for 9i: ! TIMESTAMP, TIMESTAMP WITH TIME ZONE, TIMESTAMP WITH LOCAL TIME ZONE """ |
From: <sbi...@us...> - 2003-08-24 17:56:17
|
Update of /cvsroot/modeling/ProjectModeling/Modeling/doc/UserGuide In directory sc8-pr-cvs1:/tmp/cvs-serv7771/doc/UserGuide Modified Files: DefiningaModel.tex Log Message: typo. Index: DefiningaModel.tex =================================================================== RCS file: /cvsroot/modeling/ProjectModeling/Modeling/doc/UserGuide/DefiningaModel.tex,v retrieving revision 1.20 retrieving revision 1.21 diff -C2 -d -r1.20 -r1.21 *** DefiningaModel.tex 24 Aug 2003 17:53:14 -0000 1.20 --- DefiningaModel.tex 24 Aug 2003 17:56:14 -0000 1.21 *************** *** 904,908 **** \code{type('').__name__=='string'}) or python2.2 (where \code{type('').__name__=='str'}), you should always use 'string' for a ! character type. \lineiii{externalType}{\code{'VARCHAR'}}{} \lineiii{width}{\code{255}}{} --- 904,908 ---- \code{type('').__name__=='string'}) or python2.2 (where \code{type('').__name__=='str'}), you should always use 'string' for a ! character type.} \lineiii{externalType}{\code{'VARCHAR'}}{} \lineiii{width}{\code{255}}{} |
From: <sbi...@us...> - 2003-08-24 17:38:07
|
Update of /cvsroot/modeling/ProjectModeling/Modeling/doc/UserGuide In directory sc8-pr-cvs1:/tmp/cvs-serv5564/doc/UserGuide Modified Files: DefiningaModel.tex Log Message: Updated doc. for PyModel: defaults for components: Entity, Attribute, ADateTime, AFloat, AInteger, AString, APrimaryKey, AForeignKey Index: DefiningaModel.tex =================================================================== RCS file: /cvsroot/modeling/ProjectModeling/Modeling/doc/UserGuide/DefiningaModel.tex,v retrieving revision 1.18 retrieving revision 1.19 diff -C2 -d -r1.18 -r1.19 *** DefiningaModel.tex 24 Aug 2003 16:55:51 -0000 1.18 --- DefiningaModel.tex 24 Aug 2003 17:38:04 -0000 1.19 *************** *** 458,462 **** \end{itemize} ! \subsubsection{Foreign keys\label{attributes-PKs-props}} A foreign key is an attribute that: --- 458,462 ---- \end{itemize} ! \subsubsection{Foreign keys\label{attributes-FKs-props}} A foreign key is an attribute that: *************** *** 645,649 **** Last, please note that the section describing Models ! (~\ref{pymodel-entity-props}) exposes in details how these properties can be set; this information will not be repeated in the sections coming afterwards. --- 645,649 ---- Last, please note that the section describing Models ! (\ref{pymodel-entity-props}) exposes in details how these properties can be set; this information will not be repeated in the sections coming afterwards. *************** *** 777,800 **** \subsection{Entity\label{pymodel-entity-props}} ! tbd. \subsection{Attribute\label{pymodel-attribute-props}} ! AInteger, AString, AFloat, ADateTime, APrimaryKey, AForeignKey ! \subsubsection{Primary keys\label{pymodel-attribute-props-primary-keys}} - \subsubsection{ForeignKeys\label{pymodel-attribute-props-foreign-keys}} ! \subsection{Relationship\label{pymodel-relationship-props}} ! RToOne, RToMany \subsection{Association\label{pymodel-association-props}} tbd. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ! \section{Description of the {\sc xml} format\label{model-xml-format}} \subsection{Overview of the xml\label{model-xml-format-overview}} --- 777,985 ---- \subsection{Entity\label{pymodel-entity-props}} ! The component \class{Entity} defines the following properties: + \begin{longtableiii}{p{3cm}p{4cm}p{7cm}}{code}{Prop.}{Default}{Comment} + + \lineiii{name}{\emph{no default}}{The \code{name} is the only mandatory + arguments when instanciating a \class{Attribute}. Once set, it should not be + changed} + \lineiii{className}{value of \code{name}}{} + \lineiii{moduleName}{value of \code{name}}{} + \lineiii{externalName}{\code{externalNameForInternalName(name)}}{} + \lineiii{isAbstract}{\code{0}}{} + \lineiii{isReadOnly}{\code{0}}{} + \lineiii{properties}{\code{[]}}{Sequence of \class{Attribute} and + \class{Relationship} objects} + \lineiii{parent}{\code{''}}{The name of its parent entity (inheritance)} + \lineiii{typeName}{\code{''}}{} + \lineiii{doc}{\code{''}}{comment} + \end{longtableiii} + \begin{notice} + For details about these properties and their meaning, please refer + to~\ref{entity-props}. + \end{notice} + + %% \subsection{Attribute\label{pymodel-attribute-props}} ! \begin{longtableiii}{p{3cm}p{4cm}p{7cm}}{code}{Prop.}{Default}{Comment} ! \lineiii{name}{\emph{no default}}{The \code{name} is the only mandatory ! arguments when instanciating a \class{Attribute}. Once set, it should not be ! changed} ! \lineiii{columnName}{\code{externalNameForInternalName(name)}}{} ! \lineiii{type}{\code{'int'}}{} ! \lineiii{externalType}{\code{'INTEGER'}}{} ! \lineiii{isClassProperty}{\code{1}}{} ! \lineiii{isRequired}{\code{0}}{} ! \lineiii{precision}{\code{0}}{} ! \lineiii{width}{\code{0}}{} ! \lineiii{scale}{\code{0}}{} ! \lineiii{defaultValue}{\code{None}}{} ! \lineiii{usedForLocking}{\code{0}}{} ! \lineiii{displayLabel}{\code{''}}{} ! \lineiii{doc}{\code{''}}{comment} ! \end{longtableiii} ! \begin{notice} ! For details about these properties and their meaning, please refer ! to~\ref{attributes-props}. ! \end{notice} ! %% ! \subsubsection{ADateTime\label{pymodel-attribute-props-datetime}} ! The component \class{ADateTime} redefines the following defaults: ! ! \begin{longtableiii}{p{3cm}p{4cm}p{7cm}}{code}{Prop.}{Default}{Comment} ! \lineiii{name}{\emph{no default}}{The \code{name} is the only mandatory ! arguments when instanciating a \class{Attribute}. Once set, it should not be ! changed} ! \lineiii{type}{\code{'DateTime'}}{} ! \lineiii{externalType}{\code{TIMESTAMP}}{Be warned: not all database supports ! \code{TIMESTAMP}. If this is the case, you'll probably have to redefine this ! default value in your PyModel. Discussion on supported SQL datatypes can be ! found at section~\ref{attributes-props}.} ! \lineiii{defaultValue}{\code{None}}{} ! \lineiii{usedForLocking}{\code{1}}{} ! \end{longtableiii} ! ! \begin{notice} ! For details about these properties and their meaning, please refer ! to~\ref{attributes-props}. ! \end{notice} ! ! %% ! \subsubsection{AFloat\label{pymodel-attribute-props-float}} ! ! The component \class{AFloat} redefines the following defaults: ! ! \begin{longtableiii}{p{3cm}p{4cm}p{7cm}}{code}{Prop.}{Default}{Comment} ! \lineiii{name}{\emph{no default}}{The \code{name} is the only mandatory ! arguments when instanciating a \class{Attribute}. Once set, it should not be ! changed} ! \lineiii{type}{\code{'string'}}{} ! \lineiii{externalType}{\code{'NUMERIC'}}{} ! \lineiii{precision}{\code{15}}{} ! \lineiii{scale}{\code{5}}{} ! \lineiii{defaultValue}{\code{0.0}}{} ! \lineiii{usedForLocking}{\code{1}}{} ! \end{longtableiii} ! ! \begin{notice} ! For details about these properties and their meaning, please refer ! to~\ref{attributes-props}. ! \end{notice} ! ! %% ! \subsubsection{AInteger\label{pymodel-attribute-props-integer}} ! ! The component \class{AFloat} redefines the following defaults: + \begin{longtableiii}{p{3cm}p{4cm}p{7cm}}{code}{Prop.}{Default}{Comment} + \lineiii{name}{\emph{no default}}{The \code{name} is the only mandatory + arguments when instanciating a \class{Attribute}. Once set, it should not be + changed} + \lineiii{type}{\code{'int'}}{} + \lineiii{externalType}{\code{'INTEGER'}}{} + \lineiii{defaultValue}{\code{0}}{} + \lineiii{usedForLocking}{\code{1}}{} + \end{longtableiii} + + \begin{notice} + For details about these properties and their meaning, please refer + to~\ref{attributes-props}. + \end{notice} + + %% + \subsubsection{AString\label{pymodel-attribute-props-string}} + + The component \class{AFloat} redefines the following defaults: + + \begin{longtableiii}{p{3cm}p{4cm}p{7cm}}{code}{Prop.}{Default}{Comment} + \lineiii{name}{\emph{no default}}{The \code{name} is the only mandatory + arguments when instanciating a \class{Attribute}. Once set, it should not be + changed} + \lineiii{type}{\code{'string'}}{No matter whether you run python2.1 (where + \code{type('').__name__=='string'}) or python2.2 (where + \code{type('').__name__=='str'}), you should always use 'string' for a + character type. + \lineiii{externalType}{\code{'VARCHAR'}}{} + \lineiii{width}{\code{255}}{} + \lineiii{defaultValue}{\code{''}}{} + \lineiii{usedForLocking}{\code{1}}{} + \end{longtableiii} + + \begin{notice} + For details about these properties and their meaning, please refer + to~\ref{attributes-props}. + \end{notice} + + %% + \subsubsection{APrimaryKey\label{pymodel-attribute-props-primary-key}} + + The component \class{AFloat} redefines the following defaults: + + \begin{longtableiii}{p{3cm}p{4cm}p{7cm}}{code}{Prop.}{Default}{Comment} + \lineiii{name}{\emph{no default}}{The \code{name} is the only mandatory + arguments when instanciating a \class{Attribute}. Once set, it should not be + changed} + \lineiii{isClassProperty}{\code{0}}{} + \lineiii{isRequired}{\code{1}}{You should not change this default, nor + overwrite it: a primary key should be mandatory.} + \lineiii{defaultValue}{\code{}}{} + \lineiii{doc}{\code{'Primary Key'}}{} + \lineiii{usedForLocking}{\code{0}}{} + \end{longtableiii} + + \begin{notice} + For details about these properties and their meaning, please refer + to~\ref{attributes-props}. + \end{notice} + + %% + \subsubsection{AForeignKey\label{pymodel-attribute-props-foreign-key}} + + The component \class{AFloat} redefines the following defaults: + + \begin{longtableiii}{p{3cm}p{4cm}p{7cm}}{code}{Prop.}{Default}{Comment} + \lineiii{name}{\emph{no default}}{The \code{name} is the only mandatory + arguments when instanciating a \class{Attribute}. Once set, it should not be + changed} + \lineiii{isClassProperty}{\code{0}}{} + \lineiii{isRequired}{\code{0}}{} + \lineiii{defaultValue}{\code{None}}{} + \lineiii{doc}{\code{'Foreign Key'}}{} + \lineiii{usedForLocking}{\code{0}}{} + \end{longtableiii} + + \begin{notice} + For details about these properties and their meaning, please refer + to~\ref{attributes-props}. + \end{notice} + + %% \subsection{Association\label{pymodel-association-props}} tbd. + %% + \subsection{Relationship\label{pymodel-relationship-props}} + + tbd. + + %% + \subsubsection{RToOne\label{pymodel-relationship-props-toone}} + + tbd. + + %% + \subsubsection{RToMany\label{pymodel-relationship-props-tomany}} + + tbd. + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ! \section{{\sc Xml} model\label{model-xml-format}} \subsection{Overview of the xml\label{model-xml-format-overview}} |
From: <sbi...@us...> - 2003-08-24 16:33:12
|
Update of /cvsroot/modeling/ProjectModeling/Modeling/DatabaseAdaptors/MySQLAdaptorLayer In directory sc8-pr-cvs1:/tmp/cvs-serv8310/Modeling/DatabaseAdaptors/MySQLAdaptorLayer Modified Files: __init__.py Log Message: Added the list of supported SQL datatypes in __init__ docstring Index: __init__.py =================================================================== RCS file: /cvsroot/modeling/ProjectModeling/Modeling/DatabaseAdaptors/MySQLAdaptorLayer/__init__.py,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** __init__.py 3 Aug 2003 11:10:49 -0000 1.3 --- __init__.py 24 Aug 2003 14:15:13 -0000 1.4 *************** *** 41,44 **** --- 41,50 ---- 'user', 'password' -- user credentials + Supported SQL datatypes are: + + VARCHAR, CHAR, TEXT, + FLOAT, INT, INTEGER, NUMERIC, + DATE, TIME, DATETIME + """ |
From: <sbi...@us...> - 2003-08-24 16:19:41
|
Update of /cvsroot/modeling/ProjectModeling In directory sc8-pr-cvs1:/tmp/cvs-serv8021 Modified Files: CHANGES Log Message: Fix for bug #785432 included in the previous release was misplaced and inactive. Fixed. Index: CHANGES =================================================================== RCS file: /cvsroot/modeling/ProjectModeling/CHANGES,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** CHANGES 23 Aug 2003 16:54:14 -0000 1.9 --- CHANGES 24 Aug 2003 14:13:08 -0000 1.10 *************** *** 13,16 **** --- 13,17 ---- * Added OracleAdaptorLayer (do not use now, there are still commits) + Test units updated. 0.9-pre-13 (2003/08/10) |
From: <sbi...@us...> - 2003-08-24 16:19:40
|
Update of /cvsroot/modeling/ProjectModeling/Modeling/DatabaseAdaptors/SQLiteAdaptorLayer In directory sc8-pr-cvs1:/tmp/cvs-serv8021/Modeling/DatabaseAdaptors/SQLiteAdaptorLayer Modified Files: SQLiteSQLExpression.py SQLiteSchemaGeneration.py Log Message: Fix for bug #785432 included in the previous release was misplaced and inactive. Fixed. Index: SQLiteSQLExpression.py =================================================================== RCS file: /cvsroot/modeling/ProjectModeling/Modeling/DatabaseAdaptors/SQLiteAdaptorLayer/SQLiteSQLExpression.py,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** SQLiteSQLExpression.py 10 Aug 2003 14:43:16 -0000 1.2 --- SQLiteSQLExpression.py 24 Aug 2003 14:13:08 -0000 1.3 *************** *** 259,260 **** --- 259,281 ---- else: return SQLExpression.sqlStringForSelector(self, selector, value) + + def valueTypeForExternalTypeMapping(self): + """ + Extends the inherited method's result set and adds the SQL types: + DATETIME, TEXT, NUMBER, DECIMAL, SMALLINT, REAL. + + See also: SQLExpression.valueTypeForExternalTypeMapping() + """ + # Note: SQLite does not care about SQL types, since all types are treated + # as strings in this db-server. Any valid (or invalid) sql types can be + # added here, neither the framework nor SQLite cares. + values=SQLExpression.valueTypeForExternalTypeMapping.im_func(self) + values.update({ 'datetime': DateType, + 'text': CharacterType, + 'number': NumericType, + 'decimal': NumericType, + 'smallint': NumericType, + 'real': NumericType, + } + ) + return values Index: SQLiteSchemaGeneration.py =================================================================== RCS file: /cvsroot/modeling/ProjectModeling/Modeling/DatabaseAdaptors/SQLiteAdaptorLayer/SQLiteSchemaGeneration.py,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** SQLiteSchemaGeneration.py 9 Aug 2003 11:17:45 -0000 1.3 --- SQLiteSchemaGeneration.py 24 Aug 2003 14:13:09 -0000 1.4 *************** *** 268,290 **** sqlExprs.append(sqlExpr) return sqlExprs - - def valueTypeForExternalTypeMapping(self): - """ - Extends the inherited method's result set and adds the SQL types: - DATETIME, TEXT, NUMBER, DECIMAL, SMALLINT, REAL. - - See also: SQLExpression.valueTypeForExternalTypeMapping() - """ - # Note: SQLite does not care about SQL types, since all types are treated - # as strings in this db-server. Any valid (or invalid) sql types can be - # added here, neither the framework nor SQLite cares. - values=SQLExpression.valueTypeForExternalTypeMapping.im_func(self) - values.update({ 'datetime': DateType, - 'text': CharacterType, - 'number': NumericType, - 'decimal': NumericType, - 'smallint': NumericType, - 'real': NumericType, - } - ) - return values --- 268,269 ---- |
From: <sbi...@us...> - 2003-08-23 19:40:59
|
Update of /cvsroot/modeling/ProjectModeling/Modeling/doc/UserGuide In directory sc8-pr-cvs1:/tmp/cvs-serv17483 Modified Files: DefiningaModel.tex Log Message: Rewrite of parts of the UserGuide has begun --prepare for doc. for PyModels Index: DefiningaModel.tex =================================================================== RCS file: /cvsroot/modeling/ProjectModeling/Modeling/doc/UserGuide/DefiningaModel.tex,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** DefiningaModel.tex 31 Jul 2003 20:51:43 -0000 1.14 --- DefiningaModel.tex 23 Aug 2003 16:52:36 -0000 1.15 *************** *** 1,30 **** ! \chapter{Defining the Model \label{define-model}} ! \section*{Introduction\label{model-intro}} - Models define how an object model maps to a relational model. The model used follows the Entity-Relationship Modelling. This discipline is still very active, even if it was initiated by M. Peter P. Chen in 1976 (one of the ! most cited paper in computer science (rank 36), see [...1284 lines suppressed...] - multiplicityLowerBound = ( int > -1 ) : 0 - multiplicityUpperBound = ( int > -1 | -1,* ) : 1 - -- -1 or * indicate unconstrained upper bound - destinationEntity = '' -- name of destination entity - joinSemantic = ( 0,Inner | 1,FullOuter | 2,LeftOuter | 3,Right Outer ) : 0 - displayLabel = '' -- text label to use in applications - comment = '' -- a comment - > - <!-- unordered content: (join) --> - <join - sourceAttribute = '' -- name of source attribute, in enclosing entity - destinationAttribute = '' -- name of target attribute, in ../@destinationEntity - /> - </relation> - </entity> - </model> - \end{verbatim} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% --- 1117,1120 ---- |
From: <sbi...@us...> - 2003-08-23 18:49:53
|
Update of /cvsroot/modeling/ProjectModeling In directory sc8-pr-cvs1:/tmp/cvs-serv17756 Modified Files: CHANGES Log Message: typo Index: CHANGES =================================================================== RCS file: /cvsroot/modeling/ProjectModeling/CHANGES,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** CHANGES 20 Aug 2003 19:58:04 -0000 1.8 --- CHANGES 23 Aug 2003 16:54:14 -0000 1.9 *************** *** 31,35 **** DECIMAL, SMALLINT, REAL as well in addition to the sql types basically accepted by the core's SQLExpression (CHAR, FLOAT, INT, INTEGER, NUMERIC, ! DATE, TIME, TUMESTAMP and VARCHAR) * Fixed bug #785434: mdl_generate_DB_schema now detects when the database --- 31,35 ---- DECIMAL, SMALLINT, REAL as well in addition to the sql types basically accepted by the core's SQLExpression (CHAR, FLOAT, INT, INTEGER, NUMERIC, ! DATE, TIME, TIMESTAMP and VARCHAR) * Fixed bug #785434: mdl_generate_DB_schema now detects when the database |
From: <sbi...@us...> - 2003-08-23 18:33:55
|
Update of /cvsroot/modeling/ProjectModeling/Modeling/doc/UserGuide In directory sc8-pr-cvs1:/tmp/cvs-serv17627 Modified Files: CodeRequirements.tex Log Message: added ref. to model Index: CodeRequirements.tex =================================================================== RCS file: /cvsroot/modeling/ProjectModeling/Modeling/doc/UserGuide/CodeRequirements.tex,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** CodeRequirements.tex 4 Jul 2003 17:06:52 -0000 1.1 --- CodeRequirements.tex 23 Aug 2003 16:53:31 -0000 1.2 *************** *** 35,39 **** We take the model \code{AuthorBooks} as an example--you'll find it at:\\ ! \file{Modeling/tests/testPackages/AuthorBooks/model_AuthorBooks.xml}. --- 35,40 ---- We take the model \code{AuthorBooks} as an example--you'll find it at:\\ ! \file{Modeling/tests/testPackages/AuthorBooks/model_AuthorBooks.xml}, as ! defined in section~\ref{model-author-books}. |
From: <sbi...@us...> - 2003-08-23 17:18:00
|
Update of /cvsroot/modeling/ProjectModeling/Modeling/doc/UserGuide In directory sc8-pr-cvs1:/tmp/cvs-serv17670 Modified Files: ManipulatingGraphOfObjects.tex Log Message: added ref. to model Index: ManipulatingGraphOfObjects.tex =================================================================== RCS file: /cvsroot/modeling/ProjectModeling/Modeling/doc/UserGuide/ManipulatingGraphOfObjects.tex,v retrieving revision 1.17 retrieving revision 1.18 diff -C2 -d -r1.17 -r1.18 *** ManipulatingGraphOfObjects.tex 3 Aug 2003 10:59:42 -0000 1.17 --- ManipulatingGraphOfObjects.tex 23 Aug 2003 16:53:50 -0000 1.18 *************** *** 381,386 **** \end{verbatim} ! (This model is in fact a subset of the model \code{StoreEmployees} you'll find ! in the unittests shipped with the framework) \begin{itemize} --- 381,385 ---- \end{verbatim} ! (See the full model description in section~\ref{model-store-employees}) \begin{itemize} |
From: <sbi...@us...> - 2003-08-23 16:26:40
|
Update of /cvsroot/modeling/ProjectModeling In directory sc8-pr-cvs1:/tmp/cvs-serv1354 Modified Files: setup.py Log Message: Added OracleAdaptorLayer Index: setup.py =================================================================== RCS file: /cvsroot/modeling/ProjectModeling/setup.py,v retrieving revision 1.31 retrieving revision 1.32 diff -C2 -d -r1.31 -r1.32 *** setup.py 10 Aug 2003 21:14:49 -0000 1.31 --- setup.py 23 Aug 2003 15:01:12 -0000 1.32 *************** *** 59,64 **** 'Modeling.DatabaseAdaptors', 'Modeling.DatabaseAdaptors.AbstractDBAPI2AdaptorLayer', - 'Modeling.DatabaseAdaptors.PostgresqlAdaptorLayer', 'Modeling.DatabaseAdaptors.MySQLAdaptorLayer', 'Modeling.DatabaseAdaptors.SQLiteAdaptorLayer', ], --- 59,65 ---- 'Modeling.DatabaseAdaptors', 'Modeling.DatabaseAdaptors.AbstractDBAPI2AdaptorLayer', 'Modeling.DatabaseAdaptors.MySQLAdaptorLayer', + 'Modeling.DatabaseAdaptors.OracleAdaptorLayer', + 'Modeling.DatabaseAdaptors.PostgresqlAdaptorLayer', 'Modeling.DatabaseAdaptors.SQLiteAdaptorLayer', ], |