[ZDP] mmmmmm...

Tom Deprez Tom.Deprez@uz.kuleuven.ac.be
Fri, 07 May 1999 20:09:40 +0200

I'm totally not sure about this piece of text. Maybe others know more? I've
also written some q'ns down I really don't know the solution of :

Zope Object Request Broker

The Z ORB is the real engine, it finds itself inside the Z Publisher. It
makes it possible that Pyhton  objects can be published as WWW resources.
<-> conflict with Z Publisher text

Zope Object Database

The Z ODB is used for storing all the Zope applications and web sites. The
database is build in such a way that it looks and feels like a filesystem
to end users. So, every object you create is stored in the Z ODB. This way
an object can look into the hierarchy of the Z ODB to determine it's context.

More text?

Z Framework

The Z Framework keeps Zope Objects together. But what is Z Framework
exactly? Is it something physical, or are it some rules which developers
have to follow?

Z Templates

Zope wasn't anything if it didn't had a way to display it's information.
Ok, let's assume you go to a shop and buy a self-to-build beach-seat (or
how do you call this?). Opening your box, you find the pieces of the seat ,
but also a manual. This manual explains how to build the seat and how it
eventually will look like.... Same goes here for objects. We know that
objects merely are a collection of data and methods. Without a 'manual'
they can't present the data in a certain way. The 'manuals' of these
objects are called Templates, Z Templates to be correct. The Z Templates
provide the way how the data has to be formatted. So, when an object is
asked to send it's data, the object first formats the data according to a
template in the right way and then sends the result back. If an object has
several Z Templates, it can send it's data in several formats, dependend on
the questionar. One time an object has to publish it's data into an XML
format, while another time it publishes it's data into HTML.

Z SQL Methods

We told you that it is possible to use existing data of external relational
databases into Zope. But how is this possible you may ask? An external
database isn't presenting itself as an object and Zope only works with
objects... However it is possible. Z SQL Methods are operating as a
go-between. Z SQL Methods are objects and can be used inside Zope. They ask
an SQL query on the relational database. The database itself performs the
query and returns with a result. The Z SQL Method then contains data, which
is the result of the query. Because Z SQL Method is an object, the data of
the Z SQL Method can be used by every other object in Zope. Ok, ok, you may
think, but that can't be everything... all relational databases should be
able to know SQL (it's a standard)... but the connection to a database
isn't standard specified... 

Z Database Adapters

That's where the Z Database Adapters (Z DA) are needed for. Z DA are
objects which provide the code which is specific per database server. So
the real answer to 'how can we connect Zope to a database' is. When
creating a Z SQL Method object you've to specify to which Z DA it belongs.
The Z DA needs a connection string, so it can connect itself to the
database. From that moment on Zope is always connected to that database.
Thus, when an object asks the data of an Z SQL Method, the Z SQL Method
sends the query to the database for which it is intended. The connection is
already done by the Z DA. The SQL query is performed by the database and
the result is returned to the Z SQL Method. Which on it's turn makes the
data available for the object who made the request.

What's the difference between Zope Applications and Zope WebSites? 

Is it possible to have two Zope WebSites running next to each other?