XML export/import is cool! (Was Re: [Zope-dev] Deprecating XML export/import?)

Jim Fulton jim at zope.com
Fri Mar 24 11:52:46 EST 2006


Andreas Jung wrote:
> 
...
> Right, but for duplicate functionality that is not widely used and that 
> I consider buggy it is legitimate to propose the deprecation. But as 
> usually I am open to good arguments :-)

I don't see this as primarily a duplicate feature.  I find the export
aspect to be most compelling.  Although, as others have pointed out, the
openness of the XML format can be very useful for moving data between
Zopes.  Small data transformations (e.g. adjusting a class name) are
possible and easy.


>> As I said above, I've been finding it surprisingly useful lately.
>>
>> When I first wrote it, I viewed it as someowhat of an academic
>> exercise, but I've come to realize that it is far more useful than
>> I originally thought.
> 
> 
> I still have the impression that the implementation was made an academic
> excercie  rather than something stable for production (.zexp works fine
> for production).

It was an exercise.  In some ways, it was ahead of it's time, as it
is much more useful in the presense of XSLT.  OTOH, there wasn't any
intention to make it any lower quality than the binary format.

>> This is more so now that XSLT is widely used
>> and quite capable of transforming the pickles into useful forms.
> 
> 
>>
>> Note that, IMO, there isn't likely to be a more generally useful
>> form because usefullness is generally determined by a particular
>> application.  XSLT + XML pickles together provide a general mechanism
>> that can adapt to particular application needs.
> 
> 
> In this case it has to be fixed if it should be used a general mechanism.

Sure

> 
>> I think the XML export is a facility that is and should be advertized
>> as a legitimate escape hatch for data kept in Zope.  People really
>> shouldn't feel afraid of putting data in Zope/ZODB as there
>> really is a useful way to get it out.
> 
> 
> Reasonable export/import should happen on a higher level. This low-level
> XML import/export is not really helpful when you want to migrate data 
> between applications and frameworks.

I don't agree, if you are willing to use XSLT to extract the bits you want.

 > E.g. on the Plone/Archetypes level
> we have some mechanisms to export/import data defined through schemas 


That's a good point. For Archetypes-based apps, this might be the way
to go.  I think that xml-pickle export is a reasonable approach
for other apps.

> (possibly
> we have something in Zope 3 (at least I once wrote a similar solution 
> for Zope 3). The export/import mechanism is basically for moving data 
> from one
> Zope instance to another instance. It should work in a reliable way and 
> should not try to solve issues that should be solved on another level.

The unfinished fssync tool in Zope 3 is intended for this use case.
It to uses an improved xmlpickle as a fallback.  It would be nice to
finish this, however, I can easily XSLT gun slingers prefering something
like xml export.

Jim

-- 
Jim Fulton           mailto:jim at zope.com       Python Powered!
CTO                  (540) 361-1714            http://www.python.org
Zope Corporation     http://www.zope.com       http://www.zope.org


More information about the Zope-Dev mailing list