Josias Thoeny wrote:
Hi,
There have been discussions before about how to represent the
hierarchical structure of a set of documents in Lenya.
I don't know if there has been a decision, I didn't find anything in the
mail archive. So I would like to raise this issue again.
Documents can be stored either in a hierarchical way, or in a flat way,
whereas the structure is stored separately:
1. flat storage:
---------------
repository:
- doc1
- doc2
- doc3
- doc4
site structure:
doc1-id
+- doc2-id
+- doc3-id
+- doc4-id
2. hierarchical storage:
-----------------------
repository:
doc1
+- doc2
+- doc3
+- doc4
Lenya 1.2 stores the documents hierarchically in the filesystem, but
also uses a sitetree.xml to represent the structure. It's a mixture of
option 1 and 2, and looks like knowledge-duplication to me. (Probably
good for performance, though)
With JCR, either option 1 or 2 are possible.
The advantage of the flat structure is that multiple views are possible.
As Felix said in an earlier email, it corresponds better to the MVC
pattern.
However, I think that in the case of Lenya the site structure is more
than "just" a view because it adds dependencies between documents. For
example, it is not allowed to delete a document which has children, or
it is not allowed to publish a document whose parent is not published
yet.
Actually I'm not really sure what this means w.r.t to the MVC pattern.
IMHO the main difference between JCR and a relational DB is that JCR
allows hierarchical access. To me it seems a little strange to use JCR,
but store all documents on the same level.
Furthermore, I think that even with the hierarchical model it would be
possible to have alternative views. Such a view would reference the
documents by their UUIDs.
For me it's not really clear which is the best way, so I would like to
hear your thoughts/opinions.
I think it doesn't matter how it's being stored (flat or hierarchical)
as long
as we use UUIDs for referencing and make a clear separation between
navigation and repository.
Michi
Josias
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
--
Michael Wechner
Wyona - Open Source Content Management - Apache Lenya
http://www.wyona.com http://lenya.apache.org
[EMAIL PROTECTED] [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]