Andreas Hartmann wrote:
At the moment we don't have this repository abstraction, we just operate on sources.
exactly, and it would be a mistake to expose storage details in the API. who cares if nodes are stored as folders or attributes internally?
But anyway, IMO the leaf/branch issue on the repository side is not related to the Creator interface. The Creator is related to the site structure, not to the internal representation of the files. The user doesn't care whether a document is stored as a child file/node of another document, she cares whether it is a child in the site structure (which are entirely different things in the Lenya core, though they can be related in specific publications).
+1 and even on the site, it is silly to restrict it, because that means if you change your mind and want to add child nodes to a leaf node, you have to start over. which is exactly why we have never used it.
Imagine you have a tree-like site structure and a flat-file storage. The parent-child relations are managed by the SiteManager component. So it doesn't make sense to use a leaf/branch concept on the file system (storage), but the SiteManager has to know the difference between a leaf and a branch. At the moment, there is no such concept. If we introduce it, we're restricted to trees again (what about topic maps etc.?).
-1 for introducing it
But if someone uses the underscore instead of the slash to separate parents from children, the Creator has no chance to interfere: /foo_leaf /foo_leaf_bar <- allowed by the creator
it is wrong to infer structure from the URI space. URI are opaque: http://www.w3.org/2001/tag/2002/0508-intro#URI-meaning
If you want to create a section that can't have children (for instance a "contact" section), you can't use the URL space tree for this purpose.
why would you restrict that? sounds like a solution looking for a problem. an API that tries to second-guess users is destined to fail.
This means that the above contract is a restriction - it restricts the parent-child relation to the slash-separated URL space. I just wanted to illustrate that such a contract is very specific, even if it does look general on the first glance.
IMO the most reasonable way to use the leaf/branch concept is to add it to the SiteManager, which would mean a restriction tree structures.
-1 based on the grounds above --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
