forrest-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From David Crossley <cross...@apache.org>
Subject Re: DocBook and numeric entity declaration
Date Fri, 22 Oct 2004 05:45:35 GMT
Clay Leeds wrote:
> Juan Jose Pablos wrote:
> > I am downloading the fop cvs and I am getting a diferent error:
> >
> > validate-xdocs:
> > /home/cheche/xml/xml-fop/src/documentation/content/xdocs/DnI/ 
> > properties.xml:2245:39: The entity "rarr" was referenced, but not  
> > declared.
> >
> > Do you know much about this?
> 
> I've found out a little more about this problem. Apparently Forrest (or  
> Cocoon?) is not properly validating DocBook character entities. There  
> may be a couple of reasons for this
> 
> Here's the most recent msg[1] I sent to fop-dev on the subject:
> 
> On Oct 20, 2004, at 11:32 AM, Simon Pepping wrote:
>  > Clay,
>  >
>  > I am a bit surprised. The docbook dtd clearly defines the entity
>  > &rarr; in iso-num.ent:
>  > <!ENTITY rarr       "&#x2192;"> <!-- RIGHTWARDS DOUBLE ARROW -->
>  > Why does not the forrest build see this? Does it not read the DTD?
>  >
>  > I do not like character entities in decimal numbers. I can never
>  > figure out what they refer to. IMO character codes should be given in
>  > hexadecimal notation; all Unicode documentation uses this. Then it
>  > becomes &#x2192; as shown above.
>  >
>  > Regards, Simon
> 
> Changing &rarr; to &#x2192; is an acceptable solution. The xml-fop
> /forrest/ build does not error out when it tries to validate
> 'properties.xml'. I made the change and checked it in.
> 
> I'd also like to resolve the error in Forrest if possible, so the rest
> of this POST deals with that.

I do not see any such problem. I have a test seed site
that includes a couple of Full DocBook examples using the
DocBook XSL and also processes them via Forrest's default
docbook2document XSL. I can add an example character entity
to them &rarr; and everything works perfectly:
'forrest validate' is fine
and with 'forrest run' i see the entity rendered as "->"
as expected.

This is my document type declaration.
<!DOCTYPE article
  PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
  "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">

Forrest resolves all the DTDs and *.ent properly.

More below ...

> I suspect the problem is related to the fact that properties.xml
> references a dtd like this:
> 
> <!--
> <!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
>                            "docbookx.dtd">
> -->
> 
> A couple of things I note here:
> 1. It's commented out

I don't understand. How can it ever work if it is commented out?

Remember, if you suspect issues with the catalog entity resolver
then raise the verbosity level in src/core/context/WEB-INF/cocoon.xconf
for the <entity-resolver> component. Then watch the messages
when Cocoon starts and during 'forrest run'. You should see stacks
of messages and then "Resolved public: ..." when the forrest catalog
finds each DTD and *.ent file.

--David

> 2. this is a relative/local link, but the 'docbookx.dtd' is not local
>      (I also tried  
> 'http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd'
>      and 'http://www.oasis-open.org/docbook/xml/4.2/' and as expected  
> neither
>      works.)
> 3. fwiw, iso-num.ent is at
>      http://www.oasis-open.org/docbook/xml/4.2/ent/iso-num.ent
> 
> I'm not very 'up' on DocBook, so this may be how it's 'supposed' to
> work. Nevertheless, &rarr; is the only thing in 'properties.xml' that
> doesn't validate during the /forrest/ run (unless I replace &rarr; with
> &#8594; or &#x2192;).
>
> Web Maestro Clay
> 
> [1]
> http://marc.theaimsgroup.com/?l=fop-dev&m=109839392707948&w=2


Mime
View raw message