Subject: Re: [xsl] Get children and text, excluding a child From: "Ryan Graham ryan.graham@xxxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> Date: Fri, 12 Jun 2015 22:24:36 -0000 |
Apologies for the mangled indentation my mail client imposed. :) On 6/12/15, 3:20 PM, "Ryan Graham ryan.graham@xxxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: >You could also do an identity transform, omitting number elements with an >empty template match: > ><xsl:template match="/"> > <xsl:apply-templates/> > </xsl:template> > > > <xsl:template match="@*|*"> > <xsl:copy> > <xsl:apply-templates select="@*"/> > <xsl:apply-templates/> > </xsl:copy> > </xsl:template> > > ><xsl:template match="number"/> > > >Thanks, >Ryan > >On 6/12/15, 1:50 PM, "Rick Quatro rick@xxxxxxxxxxxxxx" ><xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: > >>I think I figured it out: >> >><?xml version="1.0" encoding="UTF-8"?> >><xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" >> xmlns:xs="http://www.w3.org/2001/XMLSchema" >> exclude-result-prefixes="xs" >> version="2.0"> >> >> <xsl:output method="xml" indent="yes"/> >> >> <xsl:template match="/root"> >> <root> >> <xsl:for-each select="span"> >> <span><xsl:copy-of >>select="*[not(self::number)]|text()"/></span> >> </xsl:for-each> >> </root> >> </xsl:template> >> >></xsl:stylesheet> >> >>-----Original Message----- >>From: Rick Quatro rick@xxxxxxxxxxxxxx >>[mailto:xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx] >>Sent: Friday, June 12, 2015 4:45 PM >>To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx >>Subject: [xsl] Get children and text, excluding a child >> >>Hello, >> >>Here is my input xml: >> >><?xml version="1.0"?> >><root> >> <span><number>9.3</number> <code>protected</code> members</span> >> <span><number>9.4</number> miscellaneous members.</span> </root> >> >>Here is the desired output: >> >><?xml version="1.0"?> >><root> >> <span> <code>protected</code> members</span> >> <span> miscellaneous members.</span> >></root> >> >>I want to output all of the elements and text of the original <span> >>element, but without the <number> element. I am using this for my xsl: >> >><?xml version="1.0" encoding="UTF-8"?> >><xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" >> xmlns:xs="http://www.w3.org/2001/XMLSchema" >> exclude-result-prefixes="xs" >> version="2.0"> >> >> <xsl:output method="xml" indent="yes"/> >> >> <xsl:template match="/root"> >> <root> >> <xsl:for-each select="span"> >> <xsl:copy-of select="descendant::*[not(self::number)]"/> >> </xsl:for-each> >> </root> >> </xsl:template> >> >></xsl:stylesheet> >> >>This is my current (incorrect) output: >> >><?xml version="1.0" encoding="UTF-8"?> >><root> >> <code>protected</code> >></root> >> >>Any help or pointers would be appreciated. Thanks. >> >>Rick Quatro >>Carmen Publishing Inc. >>585-366-4017 >>rick@xxxxxxxxxxxxxxx
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Get children and text, ex, Ryan Graham ryan.gra | Thread | Re: [xsl] Get children and text, ex, Graydon graydon@xxxx |
Re: [xsl] Get children and text, ex, Ryan Graham ryan.gra | Date | Re: [xsl] Get children and text, ex, Graydon graydon@xxxx |
Month |