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]