[ZODB-Dev] Pre-announce: Oscar 0.1

Christian Robottom Reis kiko@async.com.br
Sun, 2 Sep 2001 17:06:57 -0300 (BRT)


On Mon, 27 Aug 2001, Greg Ward wrote:

> I think that's perfectly feasible.  Grouch is massive flaming overkill
> in this case, since users don't generally enter data in the form of
> "list of Foo instances, where a Foo instance has attributes a, b, and c,
> where a is a list of strings, and b is a ...".

Sure, but it's ready and implemented there, isn't it? Or do you suggest I
could use the same descriptive format for another tool I would right that
could use Grouch's parser?

How do you process and validate user input in your project?

> If you want to catch such errors before making the assignment, life gets
> trickier.  But since you're just going to blowup, I don't see that it's
> really worth it.

Well, if I blow up, I guess I could just roll back the transaction open,
so I wouldn't have to pre-check. That's not the common way of doing it,
but overhead would be pretty low.

Now I have a last question that more or less cuts it. The was I see it,
what defines a Domain Class is actually the Class itself and the
Collection it is part of. By this I mean: an object by itself can have
certain characteristics, but when placed inside a collection it's
attributes may have to be enforced in a certain way: I'm being roundabout
but I'll be specific here.

I need to be able to guarantee my objects are unique, and not null, by
some measure at the collection level (Catalog, in our model). This means
supporting something like SQL's UNIQUE and NOT NULL constraints. The way
SQL does it is interesting: binding the catalog constraints together with
the object information, so that there is one centralized place to get and
set this. I find it highly productive to be able to have a centralized
place where these characteristics (the schemata, right?) would be stored
and could be queried, both at run-time and at check-time.

What are your thoughts on this? Is something like this very orthogonal
from the way your data is organized and used in your project? I'm really
thinking of having a centralized place where we can query objects of there
attributed (the CORBA IDL would be an example, but it's not rich enough
for these things), and have Catalogs and Domain objects integrate with it.

How would Grouch's syntax be extended to support this type of thing? Can
you give this a minute's thought and let me know? Thanks a lot.

Take care,
--
Christian Reis, Senior Engineer, Async Open Source, Brazil.
http://async.com.br/~kiko/ | [+55 16] 272 3330 | NMFL