Jean-Baptiste Quenot wrote:
* David Crossley:
Jean-Baptiste Quenot wrote:
I would like to know what purpose serves the existing
resources in webapp/WEB-INF/entities? I know that one can
setup a catalog for resolving entities, but I'm talking about
all the stuff: DTDs, schemas, etc. Is it really useful for a
mean web application?
The configuration stuff is definitely necessary.
What stuff to be precise?
The entities/catalog and the entry in cocoon.xconf
Many of the resources are probably not necessary. For example,
the document-v*.dtd etc. were needed when we had the Cocoon
documentation packaged with the webapp and generated by
Cocoon. That has all been ripped out so probably don't need
them.
OK so we can remove them.
In the README, there is a message that I don't understand:
??Please keep these resources in sync with the authoritative
stuff at Forrest.??
The DTDs started life at Cocoon, then Forrest took over the
maintenance. With the documentation situation that is mentioned
above, we did need to keep these synchronised.
So we can remove this comment in the README file?
Yes.
I'm proposing to add a build option to avoid copying all these
often-unnecessary resources.
WDYT?
Perhaps better to remove the stuff that we don't need. I would
suggest to leave the ISO*.pen entity sets which are often needed
by applications.
No problem if it is needed by a few applications, but we must
optionally avoid copying them.
Why must we?
The entities/web-app_2_3.dtd might be needed.
Webapp runs without it, I hope we are not issuing an HTTP request
to Sun's website everytime ;)
Did you check? ngrep.sf.net helps ... 'sudo ngrep dtd'
The entities/catalog-demo/ is needed by some of the core
samples.
So we don't have to copy them if exclude.samples has been set?
True. That will save 3k.
Anyway, we are able to run our application without this entities
directory. So I think we should allow to optionally avoid to copy
those resources. Let's decide what is the best name for this
option, maybe this is already the exclude.documentation option?
No they are not related to documentation. The entity resolver
is needed whenever a source xml file declares a DTD.
http://cocoon.apache.org/2.1/userdocs/concepts/catalog.html
Often people do not realise that they need it.
They are requesting DTDs on every parse and could
speed up their application.
I think that it is a core facility that is often needed.
Why do you want to be rid of it? There is not really any
overhead, is there.
-David