Subject: Re: [xsl] XSLT2.0 compatibility From: "Mukul Gandhi" <gandhi.mukul@xxxxxxxxx> Date: Sat, 2 Sep 2006 10:18:46 +0530 |
Hi Jessica, This error message is correct implementation by the XSLT processor.
Create element (a) Create element a's attributes Create any child elements
It is quite obvious, you cannot create child elements before creating parent element's (here a) attributes.
I used to run my xslt 1.0 fine with saxon xslt processor1.0. After I migrated to xslt processor2.0, I meet the strange error. It complains a simple attribute copy command in my xslt file which is <xsl:copy-of select="@*"/>. The error message is
Error at xsl:copy-of on line 141 of file:///C:/trex-dev/Trunk/Projects/BFW/bde.bfw.core/resources/transform.xslt: XTDE0410: An attribute node (key) cannot be created after the children of the containing element ** Transformation error
; SystemID: file:///C:/trex-dev/Trunk/Projects/BFW/bde.bfw.core/resources/transform.xslt; Line#: 141; Column#: -1 net.sf.saxon.trans.DynamicError: An attribute node (key) cannot be created after the children of the containing element at net.sf.saxon.instruct.CopyOf.processLeavingTail(CopyOf.java:138) An attribute node (key) cannot be created after the children of the containing element at net.sf.saxon.instruct.Block.processLeavingTail(Block.java:330) at net.sf.saxon.instruct.Instruction.process(Instruction.java:90) at net.sf.saxon.instruct.ElementCreator.processLeavingTail(ElementCreator.java:162) at net.sf.saxon.instruct.Block.processLeavingTail(Block.java:330) at net.sf.saxon.instruct.Template.expand(Template.java:95) at net.sf.saxon.instruct.Template.processLeavingTail(Template.java:79) at net.sf.saxon.instruct.ApplyTemplates.applyTemplates(ApplyTemplates.java:290) at net.sf.saxon.instruct.ApplyTemplates.apply(ApplyTemplates.java:169) at net.sf.saxon.instruct.ApplyTemplates.process(ApplyTemplates.java:129) at net.sf.saxon.instruct.ElementCreator.processLeavingTail(ElementCreator.java:162) at net.sf.saxon.instruct.Copy.processLeavingTail(Copy.java:123) at net.sf.saxon.instruct.Template.expand(Template.java:95) at net.sf.saxon.instruct.Template.processLeavingTail(Template.java:79) at net.sf.saxon.instruct.ApplyTemplates.applyTemplates(ApplyTemplates.java:290) at net.sf.saxon.instruct.ApplyTemplates.apply(ApplyTemplates.java:169) at net.sf.saxon.instruct.ApplyTemplates.process(ApplyTemplates.java:129) at net.sf.saxon.instruct.ElementCreator.processLeavingTail(ElementCreator.java:162) at net.sf.saxon.instruct.Copy.processLeavingTail(Copy.java:123) at net.sf.saxon.instruct.Template.expand(Template.java:95) at net.sf.saxon.instruct.Template.processLeavingTail(Template.java:79) at net.sf.saxon.instruct.ApplyTemplates.applyTemplates(ApplyTemplates.java:290) at net.sf.saxon.instruct.ApplyTemplates.apply(ApplyTemplates.java:169) at net.sf.saxon.instruct.ApplyTemplates.process(ApplyTemplates.java:129) at net.sf.saxon.instruct.Copy.processLeavingTail(Copy.java:170) at net.sf.saxon.instruct.Template.expand(Template.java:95) at net.sf.saxon.instruct.Template.processLeavingTail(Template.java:79) at net.sf.saxon.instruct.ApplyTemplates.applyTemplates(ApplyTemplates.java:290) at net.sf.saxon.Controller.transformDocument(Controller.java:1406) at net.sf.saxon.Controller.transform(Controller.java:1234)
The strange situation is the saxon xslt 2.0 processor does not complain all attribute copy. Many <xsl:copy-of select="@*"/> work fine. I want to know do any of you experience this before? Have any clue?
Thanks, Jessica
-- Regards, Mukul Gandhi
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] XSLT2.0 compatibility, Lin, Jessica | Thread | RE: [xsl] XSLT2.0 compatibility, Michael Kay |
[xsl] XSLT2.0 compatibility, Lin, Jessica | Date | RE: [xsl] Sort before paging, Michael Kay |
Month |