> Actually, we have three main parts :
>   - Build

Keep in mind that there will be two build modes;
indexing for on-the-fly doc generation (for doc authors)
and whole-docbook pre-generation (for distribution to
mirrors).

>   - XML parsing
>   - HTML rendering

Sounds good.
 
> In src/*.php we'll have such calls :
> 
> foo.php :
> <?php
>    include 'themes/' . $skin . '/foo.php';
> 
>    before_head();
>    // some code
>    head();
...
> ?>

that might not be flexible enough in practice (but is
still better than what we have currently!).

I'm thinking of a situation where someone might want to
render the header at the bottom, or on the right hand
side of the main content, or do something else a bit
strange.

Performance wise, it might be better for the template
to request only the parts it needs:

// returns node names and captions for sibling nodes
// (based on toc structure) for the named node
// $node = "function.fopen" as used by the search stuff.
$contents = livedocs_get_siblings($node);

// returns navigation information in the form of
// node names and captions for Next, Prev, and Up
// links, based on the named node
$nav = livedocs_get_navigation($node);

Other functions could do such things as fetching the raw
XML, fetching the HTML rendition of the XML using the
default (very clean) CSS attributed XML->HTML converter;
most templates shouldn't need to do anything to that
if all they need is HTML.

Using these things as building blocks, we can leave
template authors to do pretty much anything they want.

--Wez.
PS: Please CC me on all replies; I get way too much email
to subscribe to yet another mailing list--thanks!

Reply via email to