Hi,
Thanks for the praise.
Regarding the future of CPSSchemas: in the CPS 3 line, they won't
change at all.
For CPS 4 we're going with a slightly different model. Schemas that
can be edited through the web are not the main focus, and this will
not be possible. The reason is that in most of our use cases, schemas
are designed at specification time, and don't change after that,
except for updates. This means that in this context changing schemas
is an administration task akin to deploying a new version of the
application. So yes, schemas will be close to the Zope 3 ones, in
that they are defined "in code", or at least in a place not
administered TTW. And the internal model for the CPS 4 schemas will
be Zope 3 schemas (although probably read from an XML file or from a
JCR repository backend).
Another big change is that schemas will be hierarchical, à la XML
schemas, and will be able to represent complex subobjects. Internally
this uses zope.schema.Object schema fields, and zope.schema.List.
As for the layout part, we don't want to change too much in CPS 4 so
they won't be much different, only more complex to cater for non-flat
schemas. You'll still be able to change the rendering by going to the
layout and swap widgets.
Another change is that the current notion of flexible document
disappears, because this would mean changing a schema at runtime. On
the other hand, an equivalent functionality will be provided by more
complex list types, where a field of a schema can be a list of
complex subobjects themselves described by a schema. With lists, you
get most of what flexible documents are used for.
Florent
On 18 May 2006, at 12:15, Santi Camps wrote:
> I was studing CPSSchema's for some days, and I'm really excited
with
> it. It's really a impressive work. Congratulations.
>
> I'm planning to develop the next generation of our product, KMKey,
> using CPS and CPSSchema's. But before that, I want be sure of the
> future of CPSSchema's. I can see that in last products like
> CPSSharedCalendar you are already using the Zope 3 way, using
> interfaces and Z3 autogenerated add and edit forms, widgets, etc.
> That way has an inconvenience for me: a lot of flexibility is
lost.
> It's not so easy add a field to a type in one site, and leave the
> others sites without this specific field, for instance.
>
> Is there any defined plans about the merge between CPSSchema's and
> Zope 3 ? Will be the flexible types, schema's and layout's remain
> available until Zope 3 local utilities can replace them ? Are you
> planning to maintain CPSSchema's interface and reimplement it
using Z3
> code, or simply abandon CPSSchema's and begin to use Z3 way ?
>
> I'm really interested about this issues. If we take that way, we
> will need to contribute CPSSchema's with some code early (if you
want,
> of course, if not that code will be a new product).
--
Florent Guillaume, Nuxeo (Paris, France) Director of R&D
+33 1 40 33 71 59 http://nuxeo.com [EMAIL PROTECTED]