I couldn't attend the conference but our main Plone development partner had great things to say about Deliverance. While some of the technical details are beyond me, the practical applications are not. We are working on launching a new technology platform for one of our association clients that will require 3 different applications (including Plone) to share the same theme. Deliverance may be the perfect answer.

Thanks for your hard work (and to those who helped you!). This is very important if we are going to continue to compete with other CMS's where theming is a little easier.

Designers - \"for people who think Photoshop is lickable\" as Paul Everitt says) Integrators (\"People who's job it is to make Plone work for other people\") Customers (who already have and manage a corporate identity) First-timers (who want a quick win without too many new concepts)

Consulting projects (where \"branding\" is already managed by non-developer) Heterogenous environment where the same theme must be shared across multiple applications (wiki, blog, mailman, bug tracker) Designers are not familiar with Plone and you need to iterate rapidly with design

- Performance and flexibility (designers' css, js, images can be served up from disk, rather than plone) - Works with Python (and non-Python) \"we catch the markup on the way out the door and modify it\"

- I'm both the developer and UI person (separation of concerns is overhead)

20.
Designers are not coders
quot;It is a signiﬁcant disadvantage if
the designers and HTML/CSS
coders are not familiar with Plone,
but it's incredibly difﬁcult to ﬁnd top
designers who have even heard of
Plone.quot;
- Scott Paley (Abstract Edge)

56.
Introducing XPath
• Replace page title and description and body
text
• Theme doesn't have explicit identiﬁers for
the description and body text ﬁelds
• We can use Firebug to tell us the XPath
expression for these elements.

63.
XPath
• The XPath expression that Firebug gives us:
• /html/body/div/div/div[3]/div[2]/p
• since the <div> above the <p> has an ID,
we can use this shorthand notation:
• //*[@id=quot;leftbarquot;]/p

85.
collective.xdv
• tightly integration solution with Plone
• applies a transformation to Plone's HTML
output, using the XDV compiler
• XDV is an implementation of Deliverance,
speciﬁcally the original Deliverance XML-
based syntax
• Compiles the theme (an HTML ﬁle) and
rules (an XML ﬁle) into a single XSLT ﬁle,
which is then applied to Plone's HTML on
render.

89.
Cons for xdv
• Somewhat less natural selectors/rules (i.e.
you can't use CSS selectors, at least not
directly)
• Less momentum
• The dv.xdvproxy that lets you use xdv on-
the-ﬂy with WSGI has some issues and is
not intended for production use.

91.
Cons for Deliverance 0.3
• More power means people will start doing crazy
things
• Makes most sense (for Plone) in a WSGI pipeline,
but that aspect is not quite as developed yet, and
Plone is not WSGI-iﬁed until 4.0.
• Requires a long-running process until we're talking
about a full WSGI stack or mod_wsgi