forrest-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ross Gardler <>
Subject Re: Test Zone for new Forrest Sample Site
Date Thu, 21 Oct 2004 11:30:47 GMT
Sean Wheller wrote:
> On Wednesday 20 October 2004 22:28, Ross Gardler wrote:
>>Sean Wheller wrote:
>>>Here is a test site that will eventually be hosted at
>>> All content except the FAQ's are Docbook
>>>The test zone URL is
>>>Please check the courses section to see an example of the problem with
>>I'm afraid I cannot address the problem you are having with XIncludes,
>>but I do have a useful suggestion. First a little background:
>>Some time ago I tried to do exactly what you were doing, that is
>>XInclude content in course materials. I wanted to reuse content from one
>>course in another (I guess this is what you are doing). I ran into many
>>limitiations of the XInclude handling in Cocoon itself and eventually
>>dropped the whole thing for cut and paste and careful management
>>(deadlines and all that).
> Yes, this is exactly what we're doing. It's called modular Docbook. We can 
> implement it using two methods: entities or xincude. The problem with the 
> entities is that you cannot have a DocTypeDecl in the referenced documents. 
> This mean to have to transform from the driver (master document), in order to 
> get output. This is not good since people sometimes what to take it one piece 
> at a time. In addition there is the overhead of turning Forrest validation 
> off for these documents.
> XInclude is the way forward. Since it solves these problems. Seems that this 
> should be listed as a major bug in Forrest. What do you think?

If you can't get your code to work then it is either a bug in Forrest or 
a problem in your code. The issues I had were different, the includes 
worked fine, but when it came to nested includes it didn't work. At that 
time this was a bug in Cocoon. But this is at least 18 months ago now 
and I suspect it is fixed. I think your problem is a different issue.

> The problem here is that the sources must be transformable under forrest and 
> under any other publishing tool chain. IMHO, this is the way it should be.


> <comment>Forrest is a good idea, unfortunately it seems to have deviated from 
> the standards in places and only partially implements them.</comment>

Hmmmm. Forrest is at version 0.6, i.e. it is not complete so by 
definition it only partially implements some of its features (like 
docbook support). The idea of Open Source is that we all add the 
functionality we need, eventually we get to a complete state and release 1.0

As for deviating from the standards, I am not sure I agree here. Can you 
give an example? The only non-standard item I am aware of is our use of 
Documentv20, but this is an internal format so we should be fre to use 
what we want. Nevertheless, we are migrating to XHTML2 support.

>>As you know I have been working on a plugin system for Forrest. The
>>first plugin I have built for this replaces site.xml and tabs.xml with
>>an IMSManifest file (this is the equivalent of site.xml for a SCORM1.2
>>learning object). One of the functions of this plugin is that you can
>>include content from one content object in another.
>>Now, this is alpha code and has some problems (i.e. there is some
>>hardcoded path information in the XMaps and xsl), however, it does work.
>>I have used it for all the courses I have developed and we use it within
>>Burrokeet itself.
>>So, my advice to you would be forget XInclude and use this new plugin (
>>I am hoping to merge the branch with trunk tomorrow). There is even a
>>graphical editor you can use to create your IMSManifest :-).
> Yes. I have been watching the sitemap-plugins branch. I have not tried it, 
> time is the problem. Perhaps I should have, but I expected xi:include to work 
> in forrest. I will take another look at it and try to implement it. Tough I 
> am not sure about the "hardcoding". I understand why you have done it 
> though :-)

Don't worry, I do not intend to leave the hardcoding in place, it was 
one of those "meeet the deadline" things. Once I have merged the branch 
this becomes a priority, I will not commit the plugin code until this 
has gone and since I want the plugin code available to people who may 
use and help improve it this is, of course, a priority.


View raw message