Subject: RE: [xsl] Problems transforming a <A HREF> link using XSL From: "Allison Bloodworth" <abloodworth@xxxxxxxxxxxx> Date: Fri, 18 Nov 2005 09:17:02 -0800 |
Thanks very much for responding, Michael. However, xsl:copy-of gives me this: Gametracker: <gametracker> <a href="JavaScript:window.open('http://livestats.calbears.collegesports.com/li vestats/data/m-baskbl/353109/','mbaskblGameTracker','toolbar=no,resizable=no ,scrollbars=no,width=780,height=540'); void('');">Gametracker</a> </gametracker> And I want this: Gametracker: <a href="JavaScript:window.open('http://livestats.calbears.collegesports.com/li vestats/data/m-baskbl/353109/','mbaskblGameTracker','toolbar=no,resizable=no ,scrollbars=no,width=780,height=540'); void('');">Gametracker</a> (e.g. I don't want the <gametracker> tags around my link) I was able to do what you suggested with copy of if I target the <a> tag. However, I can't assume that the Gametracker tag will always include just the <a> tag. <xsl:template match="gametracker"> <xsl:if test="normalize-space(.)"> Gametracker: <xsl:copy-of select="a"/> </xsl:if> </xsl:template> If you want to copy HTML content inside an XML tag and don't know exactly what it is, is this not possible? Also, if there is a better way to use an XSL to do datatype testing on the contents of a node (hopefully using XPath 1.0, since I can't use XML Spy on a stylesheet with "castable"...thank goodness for Saxonica!), I'd love to hear of it. Right now this is what I'm doing: <xsl:if test="string(.) castable as xs:time"> <StartTime> <xsl:value-of select="."/> </StartTime> </xsl:if> Thanks again! Allison -----Original Message----- From: Michael Kay [mailto:mike@xxxxxxxxxxxx] Sent: Friday, November 18, 2005 1:09 AM To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx Subject: RE: [xsl] Problems transforming a <A HREF> link using XSL You want <xsl:copy-of> rather than <xsl:value-of>. Michael Kay http://www.saxonica.com/ > -----Original Message----- > From: Allison Bloodworth [mailto:abloodworth@xxxxxxxxxxxx] > Sent: 18 November 2005 02:04 > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > Subject: [xsl] Problems transforming a <A HREF> link using XSL > > Hi, > > I am trying to transform an XML document, which includes some HTML <a > href=.> links, into another XML document. However, when I do the > transformation, the <a href=..>Name of link</a> info is lost > and all I see > is the name of the link. I've tried using output methods of > "xml" "html" and > "text" to no avail. Does anyone know how to fix this problem? > > <?xml-stylesheet type="text/xsl" href="Sports.xsl"?> > <feed> > <update_stamp>11/10/2005 08:14:47</update_stamp> > <event> > <id>472691</id> > <date>12/03/2005</date> > <time>1:00 PM</time> > <sport>w-baskbl</sport> > <sport_name>W Basketball</sport_name> > <opponent><![CDATA[UNLV vs. Albany (CC Times > Classic)]]></opponent> > <location><![CDATA[Berkeley]]></location> > <tv></tv> > <home_visitor>H</home_visitor> > <outcome><![CDATA[]]></outcome> > <recap></recap> > <stats></stats> > <notes></notes> > <quotes></quotes> > <gallery></gallery> > <gametracker><a > href="JavaScript:window.open('http://livestats.calbears.colleg > esports.com/li > vestats/data/w-baskbl/354046/','wbaskblGameTracker','toolbar=n o,resizable=no > ,scrollbars=no,width=780,height=540'); > void('');">Gametracker</a></gametracker> > </event> > </feed> > > Top of XSL stylesheet: > <?xml version="1.0"?> > <xsl:stylesheet version="1.0" > xmlns:xsl="http://www.w3.org/1999/XSL/Transform" > xmlns:xs="http://www.w3.org/2001/XMLSchema" > xmlns:dt="http://xsltsl.org/date-time"> > <xsl:import href="http://xsltsl.sourceforge.net/modules/stdlib.xsl"/> > <xsl:output method="xml" indent="yes"/> > > Pertinent portion of stylesheet (I test to see if the element > exists before > I print it): > > <xsl:template match="gametracker"> > <xsl:if test="normalize-space(.)"> > Gametracker: <xsl:value-of select="."/> > </xsl:if> > </xsl:template> > > I want this in the resultant XML file: > <Description> > Gametracker: <a > href="JavaScript:window.open('http://livestats.calbears.colleg > esports.com/li > vestats/data/w-baskbl/354046/','wbaskblGameTracker','toolbar=n o,resizable=no > ,scrollbars=no,width=780,height=540'); void('');">Gametracker</a> > </Description> > > But I get this: > > <Description> > Gametracker: Gametracker > </Description> > > Thanks very much for any help you can give me! > > Allison Bloodworth > Principal Administrative Analyst > e-Berkeley Program Office > University of California, Berkeley > (415) 377-8243 > abloodworth@xxxxxxxxxxxx
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] Problems transforming a <, Michael Kay | Thread | Re: [xsl] Problems transforming a <, David Carlisle |
RE: [xsl] XSL from XSL, drkm | Date | Re: [xsl] Problems transforming a <, David Carlisle |
Month |