I've had to make this same argument repeatedly, usually against OOP (which is behavior-leaning) and am thus creating a topic for it for the purposes of discussion refactoring (OnceAndOnlyOnce). I allege that there are more known common/standard data idioms than there are common/standard behavioral idioms (see topics below for examples and lists of such idioms). Thus, if one converts or creates an application to be data-centric instead of behavior-centric, they can take advantage of knowledge and tools for these data idioms, typically in the form of a DBMS. In other words, build your app where the light is brighter. I used the word "known" above because I realize that a new discovery/invention related to behavior-centric idioms may appear someday; a DrCodd of behavior, if you will. But at this stage, data has an edge. --top -------- Even fairly complex Boolean expressions can be formed using table-driven query builders using variations of QueryByExample. The most common example (but not necessarily the best) can found in tools such as MicrosoftAccess. Initially I didn't like to rely on these, but am growing more comfortable with them over time after being "forced" to use them. I don't claim them clearly better than text-ified expressions, but they are competitive with text-only expressions, and could be made more by improving the interface in my opinion. MS-Access doesn't use pull-list of common operations, such as "less-than, starts-with, contains" etc., but such does exist. ------- See Also: CollectionOrientedProgramming, CollectionOrientedVerbs, DatabaseDefinition, DataAndCodeAreTheSameThing. ------ CategoryOopDiscomfort, CategoryDatabase