Forum OpenACS Development: Re: Attribute Management System (AMS) 0.1a Released
Seems to me there are two different needs here, and two approaches to solving them are probably OK.
Matthew needs permissions on attributes, which requires them to be objects. This, however, is a VERY heavyweight way to store attribute values and is not really suitable as a general implementation tool of custom packages and types.
It's one level more heavy than the "generic" acs_attribute storage mechanism, where attribute values are stored as rows in an attribute table. Matthew's acs-attributes package adds the overhead of an object for each attribute value if I understand this thread correctly.
"type_specific" storage creates a column in a type-specific table.
What would be excellent would be some way to combine approaches along with unifying attribute management for plain objects and CR items, so a client package could just say "render this object using a type template" and have it work regardless of how attributes are stored (the "right" way being dependent on the semantics of one's package).
Dave Bauer's interested in working on this stuff as well.
Should those of us interested in the general object metadata, auto-generation of forms and values, unification of CR/base object Tcl APIs etc meet sometime soon in IRC to discuss?