Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (
Help us improve Python packaging - Donate today!

Configurable Marshallers for Archetypes

Project Description


People coming to Plone from other CMS or from no CMS at all often want to be able to bulk import existing content. There are also cases of sites which produce a high volume of content that needs to be published constantly.

The easiest way to achieve the goal of allowing import/export of structured content currently is through introspectable schemas. Archetypes provides this right now. However, Archetypes expects a schema to have only one marshaller component, and the default ones are not able to marshall all the facets of a complex piece of content by themselves.

The Marshall product provides the missing pieces of this complicated puzzle by giving you:

  • A ControlledMarshaller implementation, which resorts on a tool to decide which marshaller implementation should be used for marshalling a given piece of content or demarshalling an uploaded file.
  • A marshaller_tool which sits on the root of your CMF/Plone site and that allows you to do fine grained control of marshallers.
  • Simple export functionality to dump the Archetypes-based objects of your CMF/Plone site as a hierarchy of files in .zip format.

2.2.1 (2016-08-18)


  • Use zope.interface decorator. [gforcada]

2.2.0 (2015-09-27)

  • Removed libxml2 based marshalling [tomgross]

2.1.4 (2015-02-11)

  • Ported tests to [tomgross]

2.1.3 (2014-04-16)

  • Remove duplicate code which is already available from Products.Archetypes and add deprecation warnings about it. [tomgross]

2.1.2 (2013-01-13)

  • Unicode export text is not supported since GS 1.7.0. [rossp]

2.1.1 - 2011-07-20

  • Fixed typo which prevents the deserializing of multiValued fields. [matth]

2.1 - 2011-01-03

  • Use plone.uuid to look up content UUIDs. [toutpt, davisagli]

2.0 - 2010-07-18

  • No changes.

2.0b2 - 2010-04-20

  • atmxl: Export / import mimetype of Archetypes IObjectFields so the right content type will be set in Plone 4. Ported from quintagroup.transmogrifier. [csenger]
  • atxml: Encode/decode strings with control characters that breaks common xml parsers in base64. This can be turned off by calling the marshaller with ‘encode_with_ctrlchars=False’. [csenger]
  • Make sure DateTime fields are constructed properly in by explicitly constructing a DateTime instance for input values that would result in a DateTime value of None otherwise. [tomster]
  • Deprecationfix: Use DateTime.ISO8601() instead of DateTime.ISO [tomster]

2.0b1 - 2009-12-27

  • Removed BBB code for guess_content_type and fixed package dependencies. [hannosch]

2.0a1 - 2009-11-13

  • Replaced a simple logging call with the standard logging module. [hannosch]
  • Changed the check for ElementTree to accept xml.etree. [hannosch]
  • Get tests to work with xml.etree and Plone trunk. We have to use the ATCT test cases as a base to get the expected content types. [hannosch]
  • Downgrade warning about missing libxml2-python to debug level. [hannosch]
  • Avoid a test dependency on quick installer. [hannosch]
  • Updated package metadata and cleaned up a bit. [hannosch]
  • Declare package dependencies and fixed deprecation warnings for use of Globals. [hannosch]
  • Made test runs that require libxml2 dependent on the availability of it. [hannosch]
  • Made the dependency on elementree conditional on the Python version. For Python 2.5 and later, we use the xml.etree modules. [hannosch]
  • Purged old Zope 2 Interface interfaces for Zope 2.12 compatibility. [elro]

1.2.2 - unreleased

1.2.1 - 2009-05-29

  • Register atxml and namespaces even if libxml2 isn’t present, but test for elementtree. [csenger]

1.2.0 - 2008-09-30

  • Intial egg release.

1.0.0 - 2007-11-07

  • Made demarshall of SchemaAttributes more verbose. Now it raises its own Exception with information on which attribute and value it fails. [jensens]
  • Demote libxml2-python missing log message from “warning” to “info”. This warning has been a common source of confusion for new users trying to track down real errors. [smcmahon]

1.0.0-b1 - 2007-04-28

  • In the ATNS marshaller, preserve the field order by not using set. [nouri]

1.0.0-a1 - 2006-10-25

  • Fixed some deprecation warnings for guess_content_type. [hannosch]
  • Updated a test for generated XML export format. [hannosch]
  • Initial version, see README.txt for details. [lots of people]
Release History

Release History

This version
History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


Download Files

Download Files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
Products.Marshall-2.2.1.tar.gz (100.9 kB) Copy SHA256 Checksum SHA256 Source Aug 18, 2016

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting