Subject: [xsl] Copy Attribute Unless From: Alan <alan-xsl-list@xxxxxxxxx> Date: Fri, 25 Mar 2005 12:26:54 -0500 |
This is a coding style question. My document looks like this: <xfixture> <bench> <fixture class="com.agtrz.test.StringReverse"> <control-point name="input" class="java.lang.String"/> <control-point name="output" trim="true" class="java.lang.String"/> </fixture> <test> <control name="input">Hello</control> <control name="output" trim="false">olleH</control> </test> </bench> </xfixture> I'm using this document to generate JUnit tests. I run the document through two XSLT _2.0_ transforms. The first one "expands" the document, which makes it easier to write a transform that generates Java code. When I expand, I want to copy properties from the control definiton, into the test control value, unless they have been overridden by the <xfixture> <bench> <fixture class="com.agtrz.test.StringReverse"> <control-point name="input" class="java.lang.String"/> <control-point name="output" class="java.lang.String"/> </fixture> <test> <control class="java.lang.String" name="input">Hello</control> <control trim="false" class="java.lang.String" name="output">olleH</control> </test> </bench> </xfixture> In my expand.xslt I have a template like so... <xsl:template match="control"> <xsl:variable name="definition" select="ancestor::bench/fixture/control-point[ @name = current()/@name]"/> <xsl:copy> <xsl:copy-of select="@*"/> <xsl:if test="not(@trim)"> <xsl:copy-of select="$defition/@trim"/> </xsl:if> <xsl:if test="not(@class)"> <xsl:copy-of select="$defition/@class"/> </xsl:if> <!--| Repeat for every attribute I add. |--> </xsl:copy> </xsl:template> My question... Is there a clever select statement that could "copy all the attributes, and all the definition attributes, unless they are already definied in the test instance." -- Alan Gutierrez - alan@xxxxxxxxx
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Grouping elements, Marcos Hercules dos | Thread | Re: [xsl] Copy Attribute Unless, Alan |
Re: [xsl] how red ampersand from th, Joe Fawcett | Date | Re: [xsl] how red ampersand from th, henry human |
Month |