Assembling Pages from Parts

We once considered Web pages to be atomic pieces -- chunks of text connected by a handful of links. But today's pages, more often than not, have rich structure inside the page. They aren't single chunks of information; the page contains lots of different information, gathered together to inform and delight the audience.


Even a simple personal page is really assembled from a rich collection of parts. Consider this page (which happens to be the web journal of a European hypertext researcher, captured in February 2002). On the left, the writer introduces herself, her interests, and the purpose of the page. The left edge also provides access to archives and links to related people. On the right, the author lists her recent publications; when a new essay or chapter appears, its title and bibliography is added to to top. Near the top of the page, we have a headline; many sites place navigational and branding tools here as well. In the center of the page, we have daily news items, arranged chronologically.

Tinderbox lets you build compound pages like this naturally, assembling them from multiple notes. Each publication, for example, is a separate note; Tinderbox builds the right-hand column by gathering all the publications and sorting them by date. If we decide that sorting by title would be more useful for readers, it's an easy change. If we need to revise the entry for one article, we just open that note, without needing to worry about complex tables or stylesheets.

Assembling Pages

Tinderbox's export templates makes it easy to pull lots of notes together into a page, and to control exactly how you want the pieces to fit together. First, you can include a specific note:

^include("About",withTemplate)^

Second, we can include all the notes contained inside our note.

^children^

^childrenlet's you add a 'blog-style' list whenever and wherever you want it. Need several lists on the same page? Just ^include the container for each list, and let the containers each handle their ^children.

The templates let you control every detail of the appearance of your site, while cleanly separating content from presentation. Want to add a timestamp to each note? Just add the time:

^get(DateCreated,"d M y")^

Your list doesn't need to be chronological! Want Tinderbox to sort items by title? Fine! Or sort by priority, by author, even by word count. Or arrange the notes by hand in any of Tinderbox's handy views, and get the order exactly the way you want.

In fact, Tinderbox can build new lists automatically. Tinderbox agents scan your document continuously, searching for notes that fit criteria you specify. One agent might look for new notes, another might look for anything marked Urgent, a third agent might search for old notes that have not yet been acted upon. Use agents to make Web pages, parts of Web pages, or simply to locate notes that need special attention.