r3 - 12 Jul 2007 - 10:43:00 - MimiYinYou are here: OSAF >  Journal Web  >  MimiYinNotes > AttributeCentricCollections

There are 2 kinds of attributes in this world...

  1. Label attributes where users can (in the detail view of the item)
    • Change the value of the attribute for an individual item OR
    • Edit the display name of a particular value of the attribute, which in turn changes the display of that value across all items.
    • ie. Project: foo, users can both change the Project attribute on an item to a different Project: Bar OR edit the display name of Project: foo to Project: Foo, thereby changing the display name of the Project across all items.
  2. Intrinsic attributes where users can (in the detail view of the item)
    • Change the value of the attribute for an individual item, BUT
    • Cannot edit the display name of a particular value of the attribute
    • ie. The value of Received: July 10, 2005 at 4:32PM PST can be changed to Received: July 10, 2005 at 7:32PM EST, BUT the display name of the value: July 10, 2005 at 4:32PM PST cannot be changed to Received: Sunday evening.

The fallout

  • When users define collections around Label attributes, they can both edit the display name of the collection in the sidebar or redefine the query for the collection from a context menu
  • When users define collections around Instrinsic attributes, they cannot edit the display name of the collection in the sidebar, but they can redefine the query for the collection from a context menu
    • ALT An alternative is to allow users to edit the display name of the collection in sidebar and automatically add a Label attribute to the items in the result set. ie. User renames Received: July 10, 2005 at 7:32PM EST to Received: Sunday evening. A new attribute: Received: Sunday evening appears in the detail views of all of the items as a Label attribute.

  • If a user performs a "contains" query (ie. Body contains the word Maybe OR Received contains July), the query can only be saved as a Label attribute collection. This means an additional Label attribute, Received: July, is added to the detail view of the items in the result set and it is this new Label attribute that is the bi-directional ref to the collection, NOT the word July in the original Intrinsic attribute Received: July 10, 2005 at 7:32PM EST.
  • If a user performs an "exact match" query (ie. From: Junebug where Junebug is the entire display name for a contact OR Received: July 10, 2005 at 7:32PM PST), the query is saved as an Intrinsic attribute collection. This means that the user thinks the original Intrinsic attribute Recieved: July 10, 2005 at 7:32 is the bi-directional ref to the collection.
  • If an item is added to an Intrinsic attribute collection in the sidebar via DnD and it does not already have the Intrinsic attribute the collection is built around, a Label attribute is added to the item (ie. Received: July 20, 2005 at 7:32PM PST) to show that it belongs to the collection. If it does already have the Intrinsic attribute the collection is built around, the act of DnDing it into the collection changes the value of that attribute to the meet the query definition.

Workflow for saving queries

  • Type in a query in the search box
  • Queries can be a general text search OR on a specific attribute
  • Queries on specific attributes look like this: Attribute name: Attribute value
    • It might be nice to have a UI like Apple Mail that allows you to change the Attribute you're searching on after the fact and on-the-fly.
  • If a user types in an Attribute value that auto-completes (ie. From: June-->auto-completes to From: Junebug), then they are looking for an exact match
  • If a user types in an Attribute value and does not auto-complete (ie. From: June), then they are performing a "contains" search
    • It might be nice to allow users to change whether they are looking for an exact match or doing a "contains" search after the fact and on-the-fly
  • The exact match feature is disabled for full text searches
  • A more sophisticated UI might allow you to save a query to a different attribute (ie. Save the query "To: Jason" as "Project: Argonauts") This would mean that in the detail view of the items in the result set, "Jason" in the To: field is not the bi-directional ref to the collection in the sidebar. "Argonauts" in the Project: field is the bi-directional ref to the collection in the sidebar.
  • search.png:
    search.png

Workflow for DnDing Attributes and Attribute values from the Detail view directly to the sidebar

  • Users can DnD attribute values that are already individual items (ie. email addresses, label attribute values) directly from the detail view to the
  • If the value of an attribute is not already an item (ie. Received: July 10, 2005 at 7:32PM EST), users can DnD the entire Attribute:Attribute value pair from the detail view to the sidebar
  • This is effectively the same thing as performing an "exact match" query and saving it.
Edit | WYSIWYG | Attach | Printable | Raw View | Backlinks: Web, All Webs | History: r3 < r2 < r1 | More topic actions
 
Open Source Applications Foundation
Except where otherwise noted, this site and its content are licensed by OSAF under an Creative Commons License, Attribution Only 3.0.
See list of page contributors for attributions.