Michael Wechner wrote:

[...]

which I think should apply for all "components" working on resource
types:
Creator
Editor
Indexer
Publisher
LinkRewriter
....

If we allow this, we would also need a resource-type specific Mover,
Copier, Deleter, Deactivator, Revisioner, ...


similar to the source interface ;-)

It's not really similar. The source interface is a single entry point
to access resources using a protocol. There are no cross-connections
if you use the concept consequently (i.e., always use the protocol and
therefore the source implementation to access these resources)

The components mentioned by Josias have multiple cross-connections.
Providing a specific implementation for one of them requires to
provide implementations for the others as well.


The basic question seems to be whether Lenya knows what a document is or
not (and how to move it around, for example). So far, a document is just
an xml file.

that's a common misunderstanding

Josias just pointed out how it is implemented today.
But I guess all of us are aware that we'd like to change that.


It could be extended to a binary file, or even multiple
files, while Lenya still knows what a document is.

that's why we have the concept of a resource type

But if we allow that a document may be "anything", and only the resource
type knows what it is, the complexity seems to grow quite a lot (of
course the flexibility would increase, too). It might also lead to
duplication of knowledge if each resource type has e.g. its own
publisher.

you can always provide default implementations

But that doesn't reduce the complexity. If implementing a custom
resource type means to implement all these mentioned components,
it means to virtually implement a document management system for
each advanced and complex resource type.

-- Andreas

--
Andreas Hartmann
Wyona Inc.  -   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]

Reply via email to