After I sucessfully imported some parts of my old weblog I reconsidered the idea to publish with Tinderbox to a database instead of using it to render HTML. Here is the current idea:
- A Python script will read the Tinderbox file and publish this into a MySQL database
- The database will be synchronized with a copy on the server
- The server uses Zope to publish content (but can use anything that works with MySQL)
- Server will use meta data, link data and possibly other things to create the site
Some advantages:
- No need for agents anymore, the searching/collecting is done entirely on the server
- No need for export and rendering from Tinderbox
- A wider range of possibilities when translating data to HTML (full scripting)
- Agents and HTML export is still possible – e.g. to keep a “internal work site”
- Can possibly be extended to work for other environments
- Possibly opens a way to use other ways of translating ASCII text to HTML (e.g. ReStructuredText or Textile)
- Could allow many authors to contribute to one site (but not edit content created by others)
Some disadvantages:
- Obviously there is code needed
- Needs Python and MySQL on the client and MySQL on the server
- Concept for a database structure and content specifications needed (how to use actually information from the Tinderbox file in the site)
- A great deal of development needed on the server to turn the database into a site
- Changing the Tinderbox file a lot could break the system
- It is a one-way process – so no edits on the server travel back to Tinderbox
I investigated PyXML and elementtree which I found via Uche Ogbujis article on XML.com. I also found this XML & Python tutorial by Alexandre Fyolle very helpful. This Devshed tutorial on MySQL & Python reminded me about how to connect to the database. All this worked pretty well in first experiments.
The translation script will have to do some heavy work:
- Translate Tinderbox commands (or invent own)
- Maybe convert links and styles
- manage images that are inside the Tinderbox file
Leave a Reply