Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > XML > output syntax problem

Reply
Thread Tools

output syntax problem

 
 
Bill Sneddon
Guest
Posts: n/a
 
      06-25-2003
Can any one tell me how to output the following string?



<%response.write "<tr><td><a href=""file://SERVER/mmlogs/TNAME" &
yearmonth & """>"& "MYJUNK" & "</a><BR></td></tr>" %>

<xsl:variable name="SERVER" select="MM_NAME" />
<xsl:variable name="TNAME" select="TOOL_NAME" />

I would want SERVER,TNAME and MYJUNK filled in at transform time.

I am using Python PYANA ver .8 (which is XLAN) to create the transform.
I have spent a lot of time messing around with this to no good end.

 
Reply With Quote
 
 
 
 
Derek Harmon
Guest
Posts: n/a
 
      06-25-2003
"Bill Sneddon" <(E-Mail Removed)> wrote in message news:bdcpse$399$(E-Mail Removed)...
> <%response.write "<tr><td><a href=""file://SERVER/mmlogs/TNAME" &
> yearmonth & """>"& "MYJUNK" & "</a><BR></td></tr>" %>


In your XSLT stylesheet (Python-irrelevant) you'd have the following in an
xsl:template (whitespace/indentation added for readability), and you would
pass yearmonth (and any other Python variables) to the stylesheet as
parameters,

<![CDATA[<%response.write "]]>
<tr>
<td>
<a href="file://{$SERVER}/mmlogs/{$TNAME}{$YEARMONTH}" >
<xsl:value-of select="$MYJUNK" />
</a>
<br/>
</td>
</tr>
%>

Both parameters and variables can be referenced within your stylesheet's
templates with $PARAM_OR_VARIABLE_NAME. They can be injected
into quoted text (ie, attribute values) by enclosing the parameter or variable
reference in curly braces, as shown above.

> I have spent a lot of time messing around with this to no good end.


A few pointers if you'll be modifying the stylesheet to accept global
parameters is that it requires <xslaram name="YEARMONTH" />
(etc.) tags as the immediate children of the opening <xsl:stylesheet ...>
tag. Then your Python environment should offer a means for passing
arguments to the stylesheet before kicking off the Transform process.

Look for overloaded methods that take a list of arguments in the
documentation, and pass the Python variables you're using like
yearmonth to the stylesheet beforehand.

If yearmonth is a JSP or other after-the-fact variable identifier that you
don't have at transformation time, then what else you might try is to
set the xslutput mode to text and do something literal with CDATA
sections in the stylesheet, like (newlines added for readability):

<!-- . . . -->
<xsl:text>&lt;a href='file://</xsl:text>
<xsl:value-of select="$SERVER"/>
<xsl:text>/mmlogs/</xsl:text>
<xsl:value-of select="$TNAME"/>
<xsl:text>" & yearmonth & "'"></xsl:text>
<!-- . . . -->

Notice I took advantage of HTML's allowance for either single-quote
or double-quotes, having runs of """ can be problematic.


HTH,

Derek Harmon


 
Reply With Quote
 
 
 
 
Bill Sneddon
Guest
Posts: n/a
 
      06-26-2003
Thanks Derek,

I was able to make this work by changing the output to text and
and escaping all of my <> in my html tags.
It is NOT pretty but it works.

I did some reading but was unable to figure out how to make the output
be & < > inside a html output file.

What I would like is the behavior of <xslutput method='text'/> locally
within a file.

It seem that the <xslutput method='xml|html|text'/> is a top level
element. So I works for the whole transform. I would like to switch
between output methods in a transform where it make the XSL more
readable for me. Is there a way to do this?

If not, I wonder if it is being concidered for XSL 2.x or beyond


Bill


Derek Harmon wrote:
> "Bill Sneddon" <(E-Mail Removed)> wrote in message news:bdcpse$399$(E-Mail Removed)...
>
>><%response.write "<tr><td><a href=""file://SERVER/mmlogs/TNAME" &
>>yearmonth & """>"& "MYJUNK" & "</a><BR></td></tr>" %>

>
>
> In your XSLT stylesheet (Python-irrelevant) you'd have the following in an
> xsl:template (whitespace/indentation added for readability), and you would
> pass yearmonth (and any other Python variables) to the stylesheet as
> parameters,
>
> <![CDATA[<%response.write "]]>
> <tr>
> <td>
> <a href="file://{$SERVER}/mmlogs/{$TNAME}{$YEARMONTH}" >
> <xsl:value-of select="$MYJUNK" />
> </a>
> <br/>
> </td>
> </tr>
> %>
>
> Both parameters and variables can be referenced within your stylesheet's
> templates with $PARAM_OR_VARIABLE_NAME. They can be injected
> into quoted text (ie, attribute values) by enclosing the parameter or variable
> reference in curly braces, as shown above.
>
>
>>I have spent a lot of time messing around with this to no good end.

>
>
> A few pointers if you'll be modifying the stylesheet to accept global
> parameters is that it requires <xslaram name="YEARMONTH" />
> (etc.) tags as the immediate children of the opening <xsl:stylesheet ...>
> tag. Then your Python environment should offer a means for passing
> arguments to the stylesheet before kicking off the Transform process.
>
> Look for overloaded methods that take a list of arguments in the
> documentation, and pass the Python variables you're using like
> yearmonth to the stylesheet beforehand.
>



> If yearmonth is a JSP or other after-the-fact variable identifier that you
> don't have at transformation time, then what else you might try is to
> set the xslutput mode to text and do something literal with CDATA
> sections in the stylesheet, like (newlines added for readability):
>
> <!-- . . . -->
> <xsl:text>&lt;a href='file://</xsl:text>
> <xsl:value-of select="$SERVER"/>
> <xsl:text>/mmlogs/</xsl:text>
> <xsl:value-of select="$TNAME"/>
> <xsl:text>" & yearmonth & "'"></xsl:text>
> <!-- . . . -->
>
> Notice I took advantage of HTML's allowance for either single-quote
> or double-quotes, having runs of """ can be problematic.
>
>
> HTH,
>
> Derek Harmon
>
>


 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Syntax Checker that's better than the normal syntax checker Jacob Grover Ruby 5 07-18-2008 05:07 AM
Syntax bug, in 1.8.5? return not (some expr) <-- syntax error vsreturn (not (some expr)) <-- fine Good Night Moon Ruby 9 07-25-2007 04:51 PM
[ANN] SqlStatement 1.0.0 - hide the syntax of SQL behind familiarruby syntax Ken Bloom Ruby 3 10-09-2006 06:46 PM
Syntax highligth with textile: Syntax+RedCloth ? gabriele renzi Ruby 2 12-31-2005 02:44 AM
Syntax problem with HTML output in email Tom Petersen ASP General 4 10-24-2003 12:13 PM



Advertisments