I don't quite understand this - why does the blog publication show
particular drawbacks of the sitetree / repository scalability?
Not really going to talk about "scalability" as such, just the blog in general.

The problem for me was simply about development speed. In my case I needed a news system. Nothing fancy, but I did want multiple news categories and to have aggregate categories showing news from multiple other categories and embed them in different front pages. So I looked at the blog publication, and that finally made me realize (it didn't dawn on me until then) that Lenya should be avoided for me.

(Of course, there might be many cases where Lenya fits in, all I know is that it won't fit us.)

My issue is this:

The blog publication basically reimplements in one specific case, what all databases solve in the generic case. Now the reasons for trading new unstable specific code with old, proven and more generic code can only be something like speed, either development or runtime. But the blog publication (or the whole choice of Lenya repository) gives neither. (Q: But what about the one specific view that the blog publication is optimized for? (ie access by date).. that will be faster than with a DB? A: No, because Cocoon can effortlessly cache the most used views, and make DB queries per request only in the more seldomly used cases, the ones that are not even posssible now).

And so I simply got convinced that a database-less CMS is actually a very bad idea - blogs, news postings etc. are inherently applications that should be database driven. And my prime concern is actually development speed. (As soon as you start to want to access the data by more than one criterion you start having real problems without a DB though. The blog publication seems to be heavily geared towards access by date, and it seems like other access methods would create something of a linear search. I'll admit I didn't look that deeply into it though.)

Anyway, in my mind, a blog publication should be as simple as:
a) Defining a resource type for a blog post
b) Create a content aggregate based on the request in the sitemap, like
...match="blog/*/*/*/*"...
and generate with a query along the lines of
"select where year = {1} and name = {4} and ..." (Daisy and other RDMBS-driven repos)
or
//blog:blogs[(@year = {1}) and (@name = {4}) and ... ] (eXist and other XML dbs)

(of course, insertion and editing queries come into it as well)

c) Style it in the layout

Dag Sverre


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to