Lori, The reason that some people discourage the use of a query object as a return type is due to the fact that it binds whatever uses that query object directly to the database (more specifically, to the columns in the database).
The use of setter/getter beans should be familiar to your boss; under the java design pattern "Transfer Object", and are used as a mechanism to transfer the data in an encapsulated fashion. Return types are used in CFCs to create a strongly typed system. There are many debates on strong typing variables within CF (see duck typing), so you will have decide what best fits your team and development style. "Gateway objects" refer to a design pattern that has grown within the CF community, and refers to an object that manages all aggregate database interaction, while a DAO (data access object) manages persisting a single object. Many of the problems that come up in traditional java OO application development apply directly to CF and many can be solved using the same solutions and design patterns. Conversly, there are also new prolbems that are introduced using CF that must be solved in much different ways. A concrete example would be in java it is typical to create large object graphs (nested sets of objects), where in CF you must limit the depth of the graph as there are high object instantiation costs. Good luck! Rich Kroll ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~| Adobe® ColdFusion® 8 software 8 is the most important and dramatic release to date Get the Free Trial http://ad.doubleclick.net/clk;203748912;27390454;j Archive: http://www.houseoffusion.com/groups/CF-Talk/message.cfm/messageid:307956 Subscription: http://www.houseoffusion.com/groups/CF-Talk/subscribe.cfm Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=11502.10531.4

