Subject: RE: [xsl] applying templates to attribute value From: "Michael Kay" <mike@xxxxxxxxxxxx> Date: Mon, 30 Jun 2008 22:32:34 +0100 |
You are trying to match element nodes within the attribute, but there are no element nodes there, there is only a string containing lexical markup that would turn into element nodes if it were put through an XML parser. If you want to treat this string as XML you need to parse it - you could do that in Saxon using a call on saxon:parse(), but there is no way of doing it within the standard. Michael Kay http://www.saxonica.com/ > -----Original Message----- > From: mark bordelon [mailto:markcbordelon@xxxxxxxxx] > Sent: 30 June 2008 20:41 > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > Subject: [xsl] applying templates to attribute value > > Hi guys, > > Not exactly a newbie anymore, after reading these posts for a > while I have learned quite a lot, but I have what I feal > might have a nagging beginner problem that I have not been > able to deal with. > Perhaps it has no solution in XSL, but even knowing that would help. > > Here is the problem in a nutshell, how can I applying a > template to string content in an attributes value. My > specific digital asset management application has HTML > formatting in an attribute value that I have to transform > into fo formating. I have the formatting templates, but I > cannot seem to match them to the attribute value. Can anyone > give me a quick hand? > > Thanks in advance. > > > XML: ================================== > > <TEAMS_ASSET_FILE> > <METADATA> > <UOIS> > <GT_ASSET_REQUEST_MD COVERLETTER_TEXT="This is a > <b>test</b> of the line break formatting<br > />. Did it work?" /> > </UOIS> > </METADATA> > </TEAMS_ASSET_FILE> > > XSL: ================================== > > <xsl:template match="TEAMS_ASSET_FILE"> > <xsl:apply-templates > select="./METADATA/UOIS/GT_ASSET_REQUEST_MD/@COVERLETTER_TEXT" > /> </xsl:template> > > <!-- formatting in the block --> > <xsl:template match="//GT_ASSET_REQUEST_MD/@COVERLETTER_TEXT"> > <xsl:apply-templates /> > </xsl:template> > <xsl:template match="br"> > <fo:block> </fo:block> > </xsl:template> > <xsl:template match="b"> > <fo:inline font-weight="bold"> > <xsl:apply-templates select="*|text()"/> > </fo:inline> > </xsl:template> > > </xsl:stylesheet>
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] applying templates to att, G. Ken Holman | Thread | Re: [xsl] Cocoon, Kamal Bhatt |
Re: [xsl] applying templates to att, mark bordelon | Date | Re: [xsl] Cocoon, Kamal Bhatt |
Month |