Gary,
thanks for your answer and sorry for being off topic. I've been misled
by the error message to think that it came frome Xalan because it says
something about a "XSLT Error". I'll try the Xerces list.
I tried removing the inner parentheses around each entity, but that
didn't help. In fact, if I remove them, my XML document doesn't validate
correctly in XML Spy. I think XML Spy uses MSXML 3.0 as standard parser
to validate XML documents against a DTD.
Sending the complete DTD to the mailing list is no good idea, it is too
large. And it would be very time-consuming for you to read it, too.
If the parser is the problem I think I can find out.
Regards,
Jens
> 1. This is really a Xerces problem since the error message is coming
> from Xerces and Xalan is just passing it through. You might have better
> luck on the Xerces lists.
>
> 2. Without your DTDs, this is going to be impossible to reproduce to
> give you a definitive answer.
>
> 3. I think the inner parentheses around each entity may be causing your
> problems. I don't think the syntax allows for ((. Try removing all of
> the inner parentheses around each entity and just leaving the two outer
> ones (the open and the close).
>
> HTH,
> Gary
>
> Jens Schaefers wrote:
> >
> > hi,
> >
> > i've got a problem concerning the use of parameter entities in a dtd of
> > a document i want to process with xalan-j 2.1.0 (distribution version).
> > the problem occured with xalan-j 2.0.1 (version distributed with fop
> > 0.17), too.
> >
> > xalan error message:
> >
> > ----
> >
> > H:\test>java org.apache.xalan.xslt.Process -IN umsetzung.mdl -XSL
> > html.xsl -OUT
> > test.html
> >
> > XSLT Error (javax.xml.transform.TransformerException): A '(' character
> > or an ele
> > ment type is required in the declaration of element type
> > "lsf:Properties".
> >
> > ----
> >
> > this is the dtd part where lsf:properties is defined:
> >
> > ----
> >
> > <!ELEMENT lsf:Properties ((%resource-properties;) |
> > (%systemchannel-properties;) | (%model-properties;) |
> > (%agency-properties;) | (%channel-properties;) | (%fragment-properties;)
> > | (%edge-properties;))>
> >
> > ----
> >
> > the parameter entities are properly declared previously. each parameter
> > entity contains a list of elements that are also properly declared.
> >
> > there is no problem when i validate my xml document against the dtd in
> > xml spy nor is there a xerces error message either.
> >
> > it did work with xalan-j 2.0.1, though.
> >
> > the problem emerged when i modularized my dtd in several handy parts.
> > the parts are composed in a kind of main dtd in which all dtd modules
> > are imported as external entities. the order of the external entities in
> > the main dtd is ok, otherwise i would get errors before xalan has a
> > chance to do anything.
> >
> > what am i doing wrong?
> >
> > sorry for my poor english and thanks for your help in advance!
> >
> > jens