Forum OpenACS Development: Re: OpenACS Attribute Management - Requirements/Requests

I look forward to seeing more (references to) definitions to clarify meanings here.

It seems to me that attributes should be designed from the most practical uses, namely an attribute (or set thereof) as components of a user created table that is an OpenACS object. The table could have characteristics of a spreadsheet, where each attribute is a referenceable spreadsheet cell, and each cell has these (suggested) properties:

cell.value
cell.format
cell.style (a css reference)
cell.forumla
cell.order_of_operation
cell.reference (an abbreviation or maybe rc ref)
cell.x_location
cell.y_location
cell.name (optional)
cell.pretty_name (optional)
cell.description (optional)

where optional items are mainly useful for tables that consist of one cell size.

To make this work, there would need to be a table of spreadsheet objects, maybe with these properties:

table.name
table.pretty_name
table.description
table.format (css page reference)
table.columns (width)
table.rows (height)
table.orientation (default = horizontal)
table.key_prefix

The table.key_prefix would be a prefix added to user defined table names to prevent schema collision and isolate the api from accessing other tables.

This method would take advantage of existing user understanding of spreadsheets etc.