Hi All, I'm trying to put in place the infrastructure to manage a trade organization that does a lot of standards work for the eBook world (http://www.openebook.org/). At the moment, the site is all static. We now have a handful of working groups with subgroups, etc. I'm trying to pick the right technology to build a much fancier site with lots of groupware stuff. Zope looks pretty good.. I'm looking for suggestions for how to tackle one of the pieces I think I need. I don't know Python (yet), but do know a dozen other OO languages and web stuff pretty much inside out... I've created a WorkingGroup ZClass. I'm going to create WorkingGroups for each of the workign groups in the "real world." I want to give them the ability to have a library of documents that are meaningful for their work. I want to capture certain metadata about each Document (author, etc.). I want the documents to be URL-addressable and to be protectable using the standard Zope security system. I imagine that the DTHL for the index view of WorkingGroup will have, among other things, a list of documents in the document library (for that WorkignGroup) with the ability to add/remove/update/etc... While many of the folks on the working groups will be web-savvy, this whole thing should behave as an application for them. I don't believe I want to expose them to the Zope Management interface. I'm trying to figure out which direction to head. Would you build a new ZClass called DocumentLibrary and another called Document (maybe subclass from File somehow?)? How would you generate the table view of all the documents in a DocumentLibrary (DTML in the index view of the DocumentLibrary)? How would you deal with next/prev if the list's too long? I'm willing to do the work, but I'd rather have a sense that I'm pursuing this in a way that embodies some ZopeSense. Suggestions? Thanks much, David ___________________________________________________________ David Ornstein, CTO, NuvoMedia, Inc. AIM: dbo666 voice: 650-314-1200 web: http://www.nuvomedia.com/ PGP Public Key Available at: ldap://certserver.pgp.com "An honest man is able to speak for himself, when a knave is not." Shakespeare, King Henry VI., Part 2