I saw the thread of the performance hit with Xalan on large XML packets, and it 
brought me to ask the following question.

I have an XML packet that has the top level element with some namespace 
declarations/schema. When I use transform on this guy, I see an exception in the debug 
output, and it takes nearly 2 seconds. If I remove the schema location, it takes 30 ms.

The XML packet is valid, it's been validated by the Xerces parser with a schema clean. 
But the transform has a hard time with it.

Included below is the top level element with the namespace declaration that's causing 
me the problem. Also, the same element, omitting the schema location, which then, 
doesn't cause the problem.

Problematic element:

<Envelope xmlns='http://www.hp.com/swapiv3' 
xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' 
xsi:schemaLocation='http://www.hp.com/swapiv3 /hsvmafiles/schswapiv3.xsd'>

Working Element:

<Envelope xmlns='http://www.hp.com/swapiv3' 
xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>

Problematic declaration in the element:

xsi:schemaLocation='http://www.hp.com/swapiv3 /hsvmafiles/schswapiv3.xsd'

*There is a space between http://www.hp.com/swapiv3 and /hsvmafiles/schswapiv3.xsd.

I am wondering why ? Any pointers would be great. I feel I am doing something wrong 
there but I am not sure why since the parser likes it.

Thanks.

Michel Racine
System Analyst
Hewlett-Packard

Reply via email to