Another follow up on my Nested facets post.

I was thinking if the "nesting" or "scope" is a property of the facet being nested or of the category that "contains" the nested facet.

Then I realized that these nested facets have another property that makes them unique: they should not be shown in the UI at the first level. Normally, you'd show all facets available at the first level of the UI. For nested facets, it only makes sense to show them once you've drilled down.

So being a nested facet is a property of the facet (so we can determine wether to show it at the first level), AND scope is a property of the category that has a nested facet scoped to it.

Or something like that. I'm continuing to try to create a useful model of the structure of facets, again, so that this can make it into our toolset. I know Travis from Facetmap has done some good work modeling facets, I should discuss this with him.

It also marks a change in my thinking. I now am starting to create object models of many of the concepts that relate to the websites I build. Not to directly program using these objects, but to understand the domain.

My boss here at work used to work with Alan Kay at Xerox, one of the fathers of the idea of Object Oriented Programming. There's a line I don't want to cross though, where the object model becomes more important than the user experience. It still is only an abstraction. The hard part is to find the right (useful) level at which to abstract.

# May 6, 2004