Ted,
It may be early to ask this, but I'm trying to break down the label
field implementation for 0.7, and a lot of what I need to plan for is
dependent on the domain-model work you'll be doing for it. Can we talk
sometime about your strategy?
...Bryan
(Questions in my mind, not all of which hinge on your design, include--
Given that the Label field is supposed to hold a list of 'tags'
(essentially, collection names, some of which may or may not be visible
in the sidebar) and custom attribute name/value pairs, all separated by
commas...
- How does the collection model change to simplify adding/removing items
from sidebar collections (currently, the 'appears in' iterates over all
the sidebar collections to decide what to show, but that attribute
editor doesn't know how to follow the collection hierarchy to figure out
which ListCollection the item actually belongs to, or should)
- How does the Label attribute editor decide which custom attribute
name/value pairs to show? What's the relationship between attribute
name, its displayName, and i18n?
- Our validation model in string attribute editors replaces confusing
edits by adding '?', and we're using ':' and ',' as structural elements
in this field. Does this mean that these values (collection names,
custom attribute names, and custom attribute values) cannot contain
these characters? (Affects import, & sharing, too, if collection names
can come from outside).
- There are other nasty issues around putting custom attribute
name/value pairs in the label field: what about conflicts with OOTB
attributes, what happens when stamping a new kind creates a conflict,
how do we validate input in this field, how do we parse and report
errors on complex values on non-text OOTB attributes (and what if they
contain commas, like dates eg "Feb 24, 2006", which are illegal in the
label field)? What about OOTB attributes that are references
(emailAddress lists, etc)?
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Open Source Applications Foundation "Dev" mailing list
http://lists.osafoundation.org/mailman/listinfo/dev