[Zope3-dev] Re: [Zope-dev] Re: [Zope] Custom Repository for Storing Objects

Steve Alexander steve@cat-box.net
Fri, 10 Jan 2003 09:45:29 +0000


Sameer,

Please don't post the same email to both zope@zope.org and 
zope-dev@zope.org.

At the end of each email to the list there is the message:

   **  No cross posts or HTML encoding!  **

In any case, I'm going to talk about Zope3, so I've copied this message 
to the zope3-dev mailing list, rather than the zope-dev one.


To your question, I think Dieter makes some very good points. When do 
you need to have your Zope front-end working? You should find it easier 
to write the kind of system that Dieter describes using Zope 3. But, 
zope 3 is not yet a finished project.

Here's how I would approach your requirements using Zope 3:

* Write a "traversal component" that says how to map the paths in URLs 
to objects in your repository.

* Write "content components" for the different XML things in your 
repository.

* Write "browser views" to view and edit an XML thing through the web.

* Write your own authentication service, using the interfaces that exist 
and are well documented, to authenticate users against your repository.


Zope 3 doesn't assume that you'll be using the ZODB and other 
zope-specific things in the same way as Zope2 does, so your project will 
be more straightforward.

Zope 3 has just had its first alpha release. So, it may be too early to 
consider using zope3 for your project.


Dieter Maurer wrote:
> Sameer Maggon wrote at 2003-1-9 18:11 -0800:
>  > I am a newbie to Zope and have just gone through the tutorials and a little
>  > bit of ZopeBook. I have my own Custom Repository (RDBMS based) that has the
>  > features like storing flat files, folders etc. It also has provisions for
>  > user management. I have the XML APIs (lanuage is not a problem) for
>  > interacting with the repository.
>  > 
>  > Can I store all the objects created in Zope in that repository?
> The easiest way to integrate with a Custom Repository
> would be to go along the RDBMS integration.
> 
> This would mean, the objects were not created in Zope at all
> but directly in the Custom Repository.
> Zope would provide views on the Custom Repository similar to
> Z SQL Methods (and the associated search interfaces) for relational databases.
> 
>  > Further I also want that the authentication should also be done based on
>  > that repository (its like the roles and users defined in the custom system).
>  > Is it possible in Zope?
> You would customize a User Folder.
> 
> There are (almost) hundreds of examples for such a task...
> 
>  > I can comprehend that I would need to develop some kind of an interface that
>  > sits between the two for integration, but I wanted to know that whether it
>  > is possible in Zope or not?
> It is.
> 
>  > Its like when a user creates a folder or an object, the request is actually
>  > send to a module and then that module stores the object in my repository
>  > (may be the format is little bit changed) and vice-versa.
> The interface would probably make the content of your
> repository "URL-addressable" (see Z SQL Methods and especially
> "direct traversal" in this context).
> It would create proxy objects (maybe using acquisition)
> to present/update/delete the objects in your repositiory.

--
Steve Alexander