Ferdinand Soethe wrote:
I'm currently working on a package of xml-grammar and transformations to
easily generate Slidy-Presentations, the W3C equivalent of the S5
presentation tool (See http://www.w3.org/Talks/Tools/Slidy/ for more
on Slidy).

Cool, a license compatible slide plugin :-))

(Thanks to Sylvain who pointed us at this thing in Stuttgart)


...

Now I would like to start building a plugin that to support

        - transforming 'presenation xml' to slidy-html (unskinned
          document)
        - transforming 'presenation xml' to normal skinned html
        - transforming 'presenation xml' to normal Forrest pdf

Am I correct to think that it should really be two plugins,

        - an input plugin to translate 'presenation xml' to document13
        - an output plugin to translate document13 to slidy.

Yes..

And while I see this from the architectural point of view as a long term
goal, right now this is out of question for a number of reasons.

Why? It is usually the fastest way to do things.

So my
question really is:
>
(how) can I design a plugin that will provide these translations

        - transforming 'presenation xml' to slidy-html (unskinned
          document)

<match pattern="**.slidy.html">
  <map:generate src="{1}.xml"/>
  <map:transform src="{lm:tranform.slidy.html}"/>
  <map:serialize type="html"/>
</match>

request: http://domain.org/path/to/slides/myslides.slidy.html

Belongs in org.apache.forrest.plugins.output.slidy

        - transforming 'presenation xml' to normal skinned html

<match pattern="**.xml">
  <!-- here you must only process files of your presentation DTD
       The output must be XDoc
       See the simplified docobook plugin for example how to do this -->
</match>

request: http://domain.org/path/to/slides/myslides.html

Belongs in org.apache.forrest.plugins.input.slidy

        - transforming 'presenation xml' to normal Forrest pdf

You'd get this by implmenting the above.

without going through an intermediate format when transforming
'presenation xml' to slidy-html (unskinned document)?

The above does go through the intermediate format, but there is no other was of doing it unless you want to write a presentation.xml to Formatting Objects stylseheet to get your PDF, which is much more complex and time consuming than building the intermediate format, expsecially when you consider that your html generating XSL is very close to XDoc anyway.

There is a workaround that *may* work, it depends on what your HTML looks like. In the input plugin you could use the HTML generated by your output plugin and process that with the html-to-document stylesheet. This is a technique I have used in the projectInfo plugin becuase I do not have control over the doap-to-html stylsheet. However, I do not recomend this route, it is full of potholes.

Ross