Ok, as requested here is more detail - and in a new thread.

I shall very soon begin a ThinCMS weblog to go along with my existing
ThinOLAP (http://www.activeinterface.com/thinolap.html) blog.  But since
there seems to be some interest in this - and I haven't written anything
recently, allow me to give a bit more detail.  You will also see from my
ThinOLAP blog that I believe in sharing my work - and I'll be happy to share
the Word tools I discuss.

I currently work as the tech/IT partner (through my company Active
Interface) with design and media firms and provide them with tools to
streamline their processes.  Having done quite a bit of MS Office automation
in the past, and facing yet again the challenge of getting hundreds of pages
of content into my CMS, I decided to leverage Word 2003 for this. My
previous work had used Office XP (Word and Excel specifically) as the user
interface to workflow processes which autmated $100s of millions in
business transactions. So first let me dispel of the myth that Office is not
serious software.

I am not a professional web designer myself, as you can plainly see from my
site. But my site is valid XHTML 1.1
(http://validator.w3.org/check?uri=http%3A%2F%2Fwww.activeinterface.com).
And that site is maintained in Word.

In a nutshell, my approach is as follows.  I have a Word template (.dot
file) which I use when I create web content.  Each Word document derived
from this template has sections. Each section becomes either a web page or a
page callout element.  

Figure 1 (http://www.activeinterface.com/img/word2wpcml.gif) shows what this
currently looks like to the user. The Word document has is styles locked.
There are two types of styles defined: metadata and content. The template is
setup to cascade the block styles in the order shows (note however that the
processing doesn't depend on this order).  Shown in this example are the
following styles:
 - Link: a unique name for the page or element
 - Level: outline level of the page
 - Template: xsl template which will render the page-level XHTML
 - Section: name of section. Sections provide a content reuse frame above
the page but below the site levels.
 - Notes: stuff you want to say about the content but which won't get
rendered to web page.
 - Type: page or element (defaults to page I believe)

The other styles defined in this template are proxies for the XHTML base
styles (P, H1, H2, STRONG, etc.) and are they are used for assigning block
tags to content. Please note that the particular metadata and XHTML styles I
use were quickly defined to satisfy immediate needs - additional semantic
styles can easily be added - you just need to define in the XSL file what to
do with them.

One or more Word content documents are created to capture all of the content
for a site. The Word documents are saved in XML format to a folder which is
processed by a WSF scripts. This script performs the following action

Step 1: Transform each word xml file using nxslt.exe and word2wpcml.xsl to
outputt one page xml file for each section and one sitemap file for the
whole word xml file
Step 2: Concatenate the separate sitemap xml fines into one
Step 3: Apply sitemap.xsl to this merged sitemap file to create a
hierarchical sitemap using the Level values given to each page.

Figure 2  (http://www.activeinterface.com/img/word2wpcml-xml.gif) shows an
example "boilerplate" WPCML document after receiving the content form the
first section of my test document.

The final steps is to iterate the sitemap and publish each page. This is
done by applying a three-level page layout pattern to each page. All
navigation elements in the final pages are automatically built from the
sitemap (again by more XSLT templates).

Of course this approach is not appropriate in situations where the content
is more data-centric than document-centric.  But for data-centric stuff I
use a database. Data-driven pages are rendered at runtime instead of at
publish time.

I will write up a more comprehensive article on this shortly.  But for those
who cannot wait, feel free to send me an email and I will send you a link to
a zip file with all the code I use.  We've published two sites already this
month (http://www.rumsoncap.com and http://www.majesticathletic.com) and
sometime this month we'll publish the new Longwood Gardens site,  which had
all ~300 pages of content generated using my Word-based framework - can't
wait to share it!)
 
Chris

> -----Original Message-----
> From: [EMAIL PROTECTED] 
> [mailto:[EMAIL PROTECTED] On Behalf Of Hassan Schroeder
> Sent: Tuesday, December 06, 2005 4:39 PM
> To: [email protected]
> Subject: Re: [WSG CMS] Dreamweaver & Contribute (How do they work?)
> 
> Chris Harrington wrote:
> 
> >>......                       But user-created documents, in my own
> >>experience, *never* contain any content semantics, nor do I see a
> >>way for that to happen.
> > 
> > I must chime in and say that if that is the case then 
> either A) you are not
> > giving your users the right tools or B) the users have the 
> tools but are not
> > given the right incentives. This is not a tech issue but 
> instead an issue of
> > managing users needs and expectations.
> 
> Eh? I have no interest in anything anyone does with a Word document
> in relation to a CMS. I do *what I described before* -- provide the
> appropriate forms for entering data, which works just fine.
> 
> Documents are *created from* that data, not the other way around.
> 
> > I give my content contributors a Word 2003 template with 
> locked styles.
> > Several of the styles are for use in adding content 
> semantics and metadata.
> > And the users are motivated towards success so they use the tools as
> > designed.
> 
> That said, I'd be curious to see exactly how such a template works,
> assuming it demonstrates a specific knowledge domain, such as the
> earlier gem example, or John Deere tractors, or any other subject. :-)
> 
> Can you provide or point to an example?
> 
> -- 
> Hassan Schroeder ----------------------------- [EMAIL PROTECTED]
> Webtuitive Design ===  (+1) 408-938-0567   === http://webtuitive.com
> 
>                           dream.  code.
> 
> 
> *********************************************************
> The CMS discussion list for http://webstandardsgroup.org/
> *********************************************************
> 
> 

*********************************************************
The CMS discussion list for http://webstandardsgroup.org/
*********************************************************

Reply via email to