[Doc-SIG] DPS components

Garth T Kidd garth@deadlybloodyserious.com
Thu, 20 Sep 2001 14:22:32 +1000


> I forgot all about the fifth component: "filers" (formerly "output
> management"). Filers exist for each method of storing the results of
> processing:
>
> - In a single file on disk.
> - In a tree of directories and files on disk.
> - In a single tree-shaped data structure in memory.
> - In a tree of data structures in memory. (Maybe.)
>
> As opposed to readers, parsers, designers, and writers, I see only a
> small number of filers; namely, those listed above.

Could another word for 'designer' be 'filter'?

> [Tony]
> > Of course, the "reader" for plain .rst files is *ever so* simple!
>
> It is the simplest reader, but it still has to do some work, like
> hyperlink resolution & footnote numbering. On my to-do-soon list.

Oh, hang on. I thought the reader just passed the document to the parser
and the designer did the hyperlink resolution and footnote numbering?

> Nothing prevents XML->XHTML as Garth describes. Simply use the XML
> writer and XSLT style sheets for the transformations. (Remi Bertholet
> sent me .xsl and .css files; I'll make them available soon).

Ooh! Just what I've been waiting for! <jumps around eagerly>

> Perhaps more like::
>
>     Filer.file(Reader.read(inputref, Parser, Synthesist), Writer)

I'm getting completely lost there, I have to admit. I'm sure you have
excellent reasons for making it that complex, but you should be prepared
to write an IBG Dummy's Guide to Using the RST Parser in Your Simple
Python Applications to explain it to the rest of us. :)

> IOW we pass a parser class (or instance) in to the reader because the
> parser might be called repeatedly for each doclet

... such as when the contents of a directive are re-parsed so that we
have a directive containing marked up ReST?

Regards,
Garth.