]> err.no Git - sope/blob - sope-gdl1/GDLAccess/README
added missing inline pathes
[sope] / sope-gdl1 / GDLAccess / README
1 NOTE: this file is outdated!
2
3 GNU Database Library Access Layer - MDlink patch Version
4
5   Contained code is derived from GDL - GNU Database Library and is therefore
6   LGPL license. Copyright for GDL has the Free Software Foundation.
7
8   Changes
9
10     There are no EOJoin's anymore (only for compability). EORelationships
11     cannot be compound and store source and destination themselves.
12     
13     No compound primary keys are allowed.
14     
15     Uniquing is always enabled.
16
17     Added "abcX" methods which do not raise exceptions but return them.
18
19   Static Linking
20
21     uncomment '#imports' in EOModel.m
22
23   Intro
24
25     The GNUstep Database Library is a hierarchy of Objective-C classes
26     that provide a three-tiered architecture for developing database
27     applications.
28     
29     The three-tier architecture is a flexible paradigm for building
30     robust and scalable client/server applications; the three tiers refer
31     to the database, the Application Objects, and the user interface.  The
32     separation of the database from the user interface through intermediary
33     Application Objects allows the data to be distributed appropriately
34     across database servers and still have the user interface display data
35     cohesively for the end-user.  Business logic, as implemented in the
36     Application Objects, provides the mechanism for consistency and
37     reusability across all your business applications.
38     
39     Entity-relationship modelling is used for describing the Application
40     Objects and how they are mapped to database fields.  The GNUstep
41     Database Library represents these models as plain ASCII text files; this
42     allows external programs to be used for constructing and maintaining the
43     models separate from the applications which use them.
44
45   Differences to GNUstep gdl
46
47     Datasource objects are missing.
48
49   ToDo
50
51     EOQualifier:
52       `isValidQualifierType' from EOAdaptor is not used now. This method
53       is supposed to verify, when a qualifier is constructed, if an
54       attribute can appear inside an expression.
55
56       Make the relationshipPaths of type GCMutableSet.
57
58     EOSQLExpresion
59       There is no support now for specifying properties for the tables
60       that appear in the FROM clause; I am thinking specifically at the
61       OUTER specifier required by some servers when you use outer joins.
62
63       Optimize the generated WHERE clause when the same relationship
64       appears more than one time in the entity.
65
66       The external query from EOEntity is not used when a fetch
67       operation is unrestricted, i.e. it fetches all the records from
68       the table
69
70   Class Hierachy
71
72     NSObject
73       DefaultScannerHandler
74         EOInsertUpdateScannerHandler
75         EOQualifierScannerHandler
76         EOSelectScannerHandler
77       EOAdaptor
78       EOAdaptorChannel
79       EOAdaptorContext
80       EOAttributeOrdering
81       EODatabase
82       EODatabaseChannel
83       EODatabaseContext
84       EOFaultResolver
85         EOArrayFault
86         EOObjectFault
87       EOGenericRecord
88       EOKeySortOrdering
89       EONull                    < NSCopying >
90       EOObjectUniquer
91       EOQualifierJoinHolder
92       EOQuotedExpression        < NSCopying >
93       EOSQLExpression           < EOExpressionContext >
94         EODeleteSQLExpression
95         EOInsertSQLExpression
96         EOSelectSQLExpression
97         EOUpdateSQLExpression
98       NSDictionary
99         EOPrimaryKeyDictionary
100           EOSinglePrimaryKeyDictionary
101           EOMultiplePrimaryKeyDictionary
102       NSEnumerator
103         EOSinglePrimaryKeyDictionaryEnumerator
104       EOAttribute
105       EOEntity
106       EOModel
107       EOQualifier
108         EOSQLQualifier          < NSCopying >
109       EORelationship
110       EOExpressionArray
111
112     GCObject
113       GCMutableArray
114
115     EOFault
116
117     NSException
118       EOFException
119         DestinationEntityDoesntMatchDefinitionException
120         EOAdaptorException
121         InvalidAttributeException
122         InvalidQualifierException
123         ObjectNotAvailableException
124         PropertyDefinitionException
125         PropertyDefinitionException
126           InvalidNameException
127           InvalidPropertyException
128           InvalidValueTypeException
129           RelationshipMustBeToOneException
130         EOAdaptorException
131           CannotFindAdaptorBundleException
132           DataTypeMappingNotSupportedException
133           InvalidAdaptorBundleException
134           InvalidAdaptorStateException
135           InvalidAdaptorStateException
136             AdaptorIsFetchingException
137             AdaptorIsNotFetchingException
138             ChannelIsNotOpenedException 
139             NoTransactionInProgressException
140           TooManyOpenedChannelsException
141
142   Categories
143
144     EOAdaptor+Private
145     EOAdaptorContext+Private
146     EOAttribute+EOAttributePrivate
147     EOAttribute+ValuesConversion
148     EODatabase+Private
149     EODatabaseChannel+Private
150     EODatabaseContext+Private
151     EOEntity+EOEntityPrivate
152     EOEntity+ValuesConversion
153     EOJoin+EOJoinPrivate
154     EOModel+EOModelPrivate
155     EORelationship+EORelationshipPrivate
156     NSArray+EOKeyBasedSorting
157     NSData+EOCustomValues
158     NSDictionary+EOKeyValueCoding
159     NSMutableArray+EOKeyBasedSorting
160     NSMutableDictionary+EOKeyValueCoding
161     NSNumber+EOCustomValues
162     NSObject+EOExpression
163     NSObject+EOAdaptorChannelDelegation
164     NSObject+EOAdaptorContextDelegate
165     NSObject+EOAdaptorDelegate
166     NSObject+EOCustomValues
167     NSObject+EODatabaseChannelDelegateProtocol
168     NSObject+EODatabaseChannelNotification
169     NSObject+EODatabaseCustomValues
170     NSObject+EOGenericRecord
171     NSObject+EOKeyValueCoding
172     NSObject+EOKeyValueCodingEONull
173     NSObject+EOUnableToFaultToOne
174     NSString+EOAttributeTypeCheck
175     NSString+EOCustomValues
176
177   Protocols
178
179     EOExpressionContext
180
181   Informal Protocols    
182
183     EOClassMapping
184     EOCustomValues
185     EODatabaseChannelNotification
186     EODatabaseCustomValues
187     EOExpression
188     EOKeyValueCoding
189     EOKeyValueCodingEONull
190     EOUnableToFaultToOne
191
192 --
193 Helge Hess (helge@mdlink.de)
194 MDlink online service center, 1998-11-01