We will (hopefully!) eventually develop a set of site types that can be represented as templates. Some of these will be general (e.g.'"Basic 'personal home' site") while others will be more specialized (e.g., "Site for bottle biology experiment"). The activities on the "Activites, Prototypes, and Scenarios" page are examples. "Models" or "Prototypes" might be better names for this...

In general these will consist of sets of objects configured in a particular way. While we also want to support copying and linking of populated instances of other activities, a template mechanism:
  • Eliminates the need to clear lots of existing data (i.e., from a previous iteration of an activity) when starting a new activity
  • Provides a place to describe what the kind of site in intended for (and possibly other meta-data)
  • Potentially supports scripted initialization or "wizard" UIs for setting up complex sites

For consistency it probably makes sense to make "Template Site" an instance of the current "Web Site" Bridge class. This would allow templates to be web-browsable and have consistent boiler-plate content (e.g., "what is a template and how do I use it"). Each template site could have:
  • A standard format object (the thing we've unfortunately been calling "template" -- an object that defines how all of the pages in a site should look)
  • A web page for description
  • A "contents" folder (sub-site) containing the things to be copied/linked when a user instantiates the template
  • Discussion objects (?)
  • Init script/wizard object (eventually)
  • List of example sites previously instantiated from the template

It is likely that all but the simplest templates will have some objects that should be copied and others that should be linked. For example, a basic "personal home" site template would have content pages that should be copied and modified, but might also reference things like a global search and user list which should be linked instead of copied. Two approaches to this are:
  1. Have a way to specify which of a site template's objects should be copied and which should be linked. This approach is flexible, but does not handle the case where an instantiated copy of a template is copied.
  2. Have a way to mark invidual objects as "link-only" (or maybe "strongly suggest linking instead of copying"). This would hide the decision from the user in the common case, and alternate mechanisms could be introduced for handling the special case where, you actually want to copy something like the global user list.

Objects that are marked as "link-only" should be distinguished in the UI such that users have an idea that others might be viewing/modifying them from elsewhere in the space.

Once the site template mechanism is in place it would let us replace the current "Add to X >" menu in the interactive client with a "template browser". The advantages of this would be to reduce all content creation (at least for novice users) to a single operation and to provide more information about what each site/object might be used for.


/public/projects/bridge/design/Content and site template support Login | Web Editor | Full Editor
Last modified 9/11/03 1:31 PM by isenhour (history)
Site contents