Subject: re: [xsl] creating attribute for xsl:element in applied template From: "Vladimir Nesterovsky" <vladimir@xxxxxxxxxxxxxxxxxxxx> Date: Mon, 21 Jul 2008 05:58:00 -0700 |
You may want to move some templates into a different mode. In fact all except <xsl:template match="/xs:schema/xs:element[@name]"> Thus <xsl:template match="/xs:schema/xs:attribute[@name]" > won't be matched by default. -- Vladimir Nesterovsky http://www.nesterovsky-bros.com/ > What I try to do now is to generate a sample XML file with XSLT. Therefore > I first create an xsl:element and then apply-templates on every > child-node. When some sub-structure happens to contain a xs:attribute, I'd > like to assign that attribute to the created xsl:element. This is not > possible, because the creation of xsl:attribute takes place in another > template than the creation of the xsl:element. > > The XSLT I came up with so far: > > <xsl:template match="xs:element[@ref]" > > <xsl:apply-templates select="/xs:schema/xs:element[@name = > current()/@ref]" /> > </xsl:template> > > <xsl:template match="/xs:schema/xs:element[@name]" > > <xsl:element name="{@name}"> > <xsl:apply-templates /> > </xsl:element> > </xsl:template> > > <xsl:template match="xs:complexType" > > <xsl:apply-templates select="xs:attribute" /> > <xsl:apply-templates select="*[not(self::xs:attribute)]" /> > </xsl:template> > > <xsl:template match="xs:attribute[@ref]" > > <xsl:apply-templates select="/xs:schema/xs:attribute[@name = > current()/@ref]" /> > </xsl:template> > > <xsl:template match="/xs:schema/xs:attribute[@name]" > > <xsl:attribute name="{@name}"> > <xsl:value-of select="@type" /> > </xsl:attribute> > </xsl:template> > > Saxon sais: "Cannot write an attribute node when no element start tag is > open" > > Is there no other way to accomplish this task than to create all > attribute-nodes directly in the "xs:element[@name]" - template? Would a > switch to XSLT 2.0 change something?
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] creating attribute for xs, christoph . naber | Thread | [xsl] Fetch xml from URL in XSL, sudheshna iyer |
Re: [xsl] Content negotiation in XS, Florent Georges | Date | Re: [xsl] creating attribute for xs, Tony Graham |
Month |