Brolin Empey wrote:
> Ross Gardler wrote:
> >
> >To make Jim's DTD work you need to make Forrest aware of it, this is
> >documented at http://forrest.apache.org/docs_0_80/your-project.html#new_dtd
> 
> I know this.  How do you think I got validation of document-v20-jd.dtd
> to fail if Forrest is unaware of it? :P
> 
> Anyway, I did make some more progress after rereading the docs you linked 
> to. :)
> 
> http://forrest.apache.org/docs_0_90/validation.html says "This custom
> DTD should be placed in your project resources directory at
> src/documentation/resources/schema/dtd/".
> 
> However, my document-v20-jd.dtd was in schema/.  I did not have a 
> schema/dtd/.
> 
> I created schema/dtd/ and moved document-v20-jd.dtd into it.

It doesn't matter where the DTD is located. The important thing
is that your project's XML Catalog refers to it properly and
that you use the new Public Identifier in your source xml file.

>  Now
> validation succeeds, until I try using an <xi:include> element in my
> XDocs source file.  This causes validation to fail again:
> 
> validate-xdocs:
> /home/brolin/WEB/techsol.ca/forrest/src/documentation/content/xdocs/products/index.xml:34:74:
> Element type "xi:include" must be declared.
> /home/brolin/WEB/techsol.ca/forrest/src/documentation/content/xdocs/products/index.xml:34:74:
> The prefix "xi" for element "xi:include" is not bound.
> 
> I wonder if this is caused because I am using document-v20-jd.dtd in
> my Forrest project instead of installing document-v20-jd.dtd in the
> same place as document-v20.dtd in my Forrest installation.
>
> Jim does not say how he installed his new DTD file in his post.
> 
> I would prefer to keep document-v20-jd.dtd in my Forrest project so
> that it can be kept under version control.  Keeping it in my project
> also makes it easier for someone else who checks out a working copy of
> my Forrest site, since they get all the needed files in the checkout
> and do not need to modify their local Forrest installation.

It should work in the project space. This is why we make this
facility available.

However, because you are trying to intercept one of the main DTDs
and essentially re-define it, this might cause some troubles.

> >A better solution would be to patch our DTD with Jims proposed changes.
> 
> I would like to get my method working before I try to patch the Forrest DTD.

You are not providing sufficient information to enable us
to help you.

Please open a new issue in our issue tracker. Then attach example
files: your new DTD, your project XML Catalog, a cut-down example
of your index.xml file.

-David