O'Reilly logo

Practical Internet Groupware by Jon Udell

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Building Web Docbases

A discussion is a species of docbase—that is, a set of documents that share common properties and that store semistructured data. With clever and determined use of the tools that create and view discussions, you can achieve excellent results. But in the Internet realm, message composers work with fixed-function message templates. You can’t, for example, add a Company or Project field to an Internet mail or news message. To do that, we shifted gears in Part II and explored how to build web docbases. These can handle the same kinds of semistructured data that we put into messages but don’t suffer from the constraints of a fixed-function template.

The template for a web docbase can be anything that you need it to be. You can define its metadata very simply using HTML <meta> tags or more elaborately using XHTML or full-blown XML. In Chapter 6, we built a system that uses XHTML record templates to help users preview and validate docbase records and that stores records in the same XHTML format. In Chapter 7, we extended that system, using the metadata to create navigational views of docbases. In Chapter 11, and Chapter 12, we tapped that metadata again to create subscription and authorization services based not only on group membership, but also on docbase attributes.

Every docbase is potentially a groupware application. It becomes one when you activate bindings, latent in the metadata, that connect docbase records to groups and their activities. Every scrap of metadata ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required