[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Re: [docbook-apps] Avoiding namespace resolution via the Internet ??
On Wed, Sep 17, 2003 at 12:49:36AM +0200, Marc Baaden wrote: > > Hi, > > I am currently playing with website and was highly surprised > how slow the processing of an extremely simple example was > going. > > I do use xsltproc, which is usually very fast on processing > my docbook xml documents. Note: docbook-apps is not the best place to report potential problems with xsltproc see http://xmlsoft.org/XSLT/bugs.html There have been some slowness found in libxslt when dealing with document using lot of namespaces. A fix has been provided and is in CVS. > I also noticed that everytime I tried to generate the simple > website, my internet traffic started to go up, which I think > is the reason for the slowness. That sounds quite strange, I don't know how website stylesheets work, but I would not expect them to fetch the resulting pages as part of the transformantion process... > I think this is related to namespace resolution, and I wonder > whether such namespaces can also be locally catalogued like > eg dtd's. What is "namespace resolution" ? Namespace names are pure strings they are compared for equality, but that's all, never dereferenced catalogs can't possibly be used for namespace processing. > In particular, "-v" output of a slow xsltproc process shows > > -=-=-=-=-= > SGML_CATALOG_FILES=/etc/sgml/catalog xsltproc -v --catalogs \ > --maxdepth 999 --output page1.html --stringparam output-root . \ > /usr/share/sgml/website-2.5.0/xsl/tabular.xsl doc1.xml Why use SGML catalogs for XML processing ???? > Added namespace: xsl mapped to http://www.w3.org/1999/XSL/Transform > Added namespace: html mapped to http://www.w3.org/1999/xhtml > Added namespace: doc mapped to http://nwalsh.com/xsl/documentation/1.0 > exclude result prefix html > exclude result prefix doc > exclude result prefix html > exclude result prefix doc > xsltPrecomputeStylesheet: removing ignorable blank node > xsltParseStylesheetProcess : found stylesheet > Added namespace: xsl mapped to http://www.w3.org/1999/XSL/Transform > Added namespace: html mapped to http://www.w3.org/1999/xhtml > Added namespace: doc mapped to http://nwalsh.com/xsl/documentation/1.0 > Added namespace: rddl mapped to http://www.rddl.org/ Well if RDDL is used then maybe some dereference of namespace names, that's not "standard processing" to me. > So I wonder whether the various namespaces are at the origin > of the slow processing, and how to speed that up. use --profile option to see in what template the processor is spending time, look at the stylesheets, at the web traffic generated, and in the last recourse run xsltproc under an execution profiler Daniel -- Daniel Veillard | Red Hat Network https://rhn.redhat.com/ email@example.com | libxml GNOME XML XSLT toolkit http://xmlsoft.org/ http://veillard.com/ | Rpmfind RPM search engine http://rpmfind.net/