XSL <> converted into &lt; and &gt; in final HTML

  • Thread starter Donald Firesmith
  • Start date
D

Donald Firesmith

I am having trouble having Google Adsense code stored in XSL converted
properly into HTML. The <> unfortunately become &lt; and &gt; and then
no longer work.

XSL code is:

<script type="text/javascript">
<![CDATA[
<!--
google_ad_client = "pub-5065036055322567";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "0000FF";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "0000FF";
google_color_text = "000000";
//-->
]]>
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>

Resulting HTML code is:

<script type="text/javascript">
&lt;!--
google_ad_client = "pub-5065036055322567";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "0000FF";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "0000FF";
google_color_text = "000000";
//--&gt;
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>

How do I fix this?

I get a similar problem when I try to have an XML description containing
html tags properly included into the meta description:

XML:
<meta name="description">
<xsl:attribute name="content">
<xsl:value-of select="definition"/>
</xsl:attribute>
</meta>
</meta>
XSL:
<meta name="description">
<xsl:attribute name="content">
<xsl:value-of select="definition"/>
</xsl:attribute>
</meta>
Results in HTML:
<meta name="description" content="
the &lt;a
href=&quot;../Activities.html&quot;&gt;activity&lt;/a&gt; consisting of
the cohesive collection of all
&lt;a
href=&quot;../../Tasks/Tasks.html&quot;&gt;tasks&lt;/a&gt; that are
primarily performed to produce the
&lt;a
href=&quot;../../../WorkProducts/RequirementsSet/Requirements/Requirements.html&quot;&gt;requirements&lt;/a&gt;
and other
&lt;a
href=&quot;../../../WorkProducts/RequirementsSet/RequirementsSet.html&quot;&gt;requirements
work products&lt;/a&gt; for an
&lt;a
href=&quot;../../../Endeavors/Endeavors.html&quot;&gt;endeavor

&lt;/a&gt;"/>

How do I fix this so that it is properly included?
 
J

Joris Gillis

Hi,
I am having trouble having Google Adsense code stored in XSL converted
properly into HTML. The <> unfortunately become &lt; and &gt; and then
no longer work.

What you are looking for is a way to disable output escaping.
XSL code is:

<script type="text/javascript">
<![CDATA[
<!--
google_ad_client = "pub-5065036055322567";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "0000FF";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "0000FF";
google_color_text = "000000";
//-->
]]>
</script>

From a (X)HTML point of view, I think this is a better (only valid?) way to include scripts in a document:
<script type="text/javascript">
<![CDATA[
google_ad_client = "pub-5065036055322567";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "0000FF";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "0000FF";
google_color_text = "000000";
]]>
</script>

Resulting HTML code is:
How do I fix this?

specify the 'cdata-section-elements' attribute:
I get a similar problem when I try to have an XML description containing
html tags properly included into the meta description:

Extract from the XSLT1.0 recommendation:
"It is an error for output escaping to be disabled for a text node that is used for something other than a text node in the result tree."
In this case, you try disbaling output escaping on an attribute. It is not possible with XSLT1.0
How do I fix this so that it is properly included?
AFAIK, the output returned is the only valid way to use '<' and '>' in attributes, so there isn't anything to 'fix'.


regards,
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,768
Messages
2,569,574
Members
45,050
Latest member
AngelS122

Latest Threads

Top