<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.0">
  <channel>
    <title>
Altova Mailing List: microsoft.public.xsl
    </title>
    <link>http://www.altova.com/</link>
    <description>Altova accelerates application development and data management projects with software and solutions that enhance productivity and maximize results. As an innovative, customer-focused company and the creator of XMLSpy and other leading XML, data administration, UML, and Web services tools, Altova is the choice of over 3 million clients worldwide, including virtually every Fortune 500 company. With customers ranging from vast development teams in the worldâ€™s largest organizations to progressive one-person shops, Altovaâ€™s line of software applications fulfills a broad spectrum of business needs. Altova is an active member of the World Wide Web Consortium (W3C) and Object Management Group (OMG) and is committed to delivering standards-based platform-independent solutions that are powerful, affordable, and easy to use. Altova was founded in 1992 and has headquarters in Beverly, Massachusetts and Vienna, Austria.</description>
    <language>en-us</language>
    <copyright>Copyright Â© 2005, 2006, 2007 Altova GmbH. All rights reserved. Altova, XMLSpy, MapForce, StyleVision, SemanticWorks, SchemaAgent, UModel, DiffDog, and Authentic are trademarks and/or registered trademarks of Altova GmbH in the United States and/or other countries. The names of and reference to other companies and products mentioned herein may be the trademarks of their respective owners.</copyright>
    <pubDate>Tue, 03 Jun 2008 10:00:00 EDT</pubDate>
    <lastBuildDate>Tue, 03 Jun 2008 10:00:00 EDT</lastBuildDate>
    <generator>Authentic RSS Editor, visit www.altova.com for details</generator>
    <managingEditor>pr@altova.com</managingEditor>
    <webMaster>webmaster@altova.com</webMaster>
    <image>
      <url>http://www.altova.com/images/logos/altova_right_120.gif</url>
      <title>ALTOVA</title>
      <link>http://www.altova.com/</link>
      <width>120</width>
      <height>24</height>
      <description>Altova Logo</description>
    </image>

<item>
<title>Re: How do I hide the carriage return square character? - 11/4/2009 11:20:00 PM</title>
<description><![CDATA[<pre>On Wed, 4 Nov 2009 05:14:01 -0800, Mitch
&lt;Mitch@discussions.microsoft.com&gt; wrote:

&gt;When I open Excel on one computer I get a  SQUARE character where I have 
&gt;carriage returns. On another computer these boxes are not visable. 
&gt;
&gt;Can someone explain how I can make the squares with question marks hide on 
&gt;my other PC.

Hi this is an XSL (XML stylesheets) newsgroup.

You actually want an XLS (Excel file format) newsgroup

Look for newsgroups with  'Excel' in their title

HTH
Cheers - Neil
------------------------------------------------
Digital Media MVP : 2004-2009
http://mvp.support.microsoft.com/mvpfaqs</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200911/msg1000306048.html</link>
</item><item>
<title>How do I hide the carriage return square character? - 11/4/2009 5:14:00 AM</title>
<description><![CDATA[<pre>When I open Excel on one computer I get a  SQUARE character where I have 
carriage returns. On another computer these boxes are not visable. 

Can someone explain how I can make the squares with question marks hide on 
my other PC.</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200911/msg1000306007.html</link>
</item><item>
<title>Re: Creating tabular HTML output based on comment in XML (using XS - 11/3/2009 9:49:00 PM</title>
<description><![CDATA[<pre>Thanks a lot Martin. This is just what I needed. This will be of much help!!

Cheers
Ayan</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200911/msg1000305983.html</link>
</item><item>
<title>Re: Creating tabular HTML output based on comment in XML (using XSLT) - 10/30/2009 12:11:00 PM</title>
<description><![CDATA[<pre>Ayan wrote:

&gt; &lt;orders&gt;
&gt; &lt;OrdersTransaction&gt;
&gt; &lt;Item&gt;
&gt; &lt;!--  Changed Element:old --&gt; 
&gt; &lt;Description&gt;Marker&lt;/Description&gt; 
&gt; &lt;!--  Changed Element:new --&gt; 
&gt; &lt;Description&gt;Mark er&lt;/Description&gt; 
&gt; &lt;/Item&gt;
&gt; &lt;/OrdersTransaction&gt;
&gt; &lt;OrdersTransaction&gt;
&gt; &lt;Item&gt;
&gt; &lt;!--  Changed Element:old --&gt; 
&gt; &lt;Description&gt;Eraser&lt;/Description&gt; 
&gt; &lt;!--  Changed Element:new --&gt; 
&gt; &lt;Description&gt;eraser&lt;/Description&gt; 
&gt; &lt;/Item&gt;
&gt; &lt;Item&gt;
&gt; &lt;!--  Added Element(s) --&gt; 
&gt; &lt;comment&gt;additional comments&lt;/comment&gt; 
&gt; &lt;/Item&gt;
&gt; &lt;Item&gt;
&gt; &lt;!--  Deleted Element(s) --&gt; 
&gt; &lt;comment&gt;Pen&lt;/comment&gt; 
&gt; &lt;/Item&gt;
&gt; &lt;Item&gt;
&gt; &lt;!--  Changed Element:old --&gt; 
&gt; &lt;Description&gt;Highlighter&lt;/Description&gt; 
&gt; &lt;!--  Changed Element:new --&gt; 
&gt; &lt;Description&gt;highlighter&lt;/Description&gt; 
&gt; &lt;/Item&gt;
&gt; &lt;/OrdersTransaction&gt;
&gt; &lt;/orders&gt;
&gt; 
&gt; 
&gt; &quot;Deleted Element(s)&quot; means, it was present in First XML, but not anymore in 
&gt; Second XML.
&gt; &quot;Added Element(s)&quot; means, it was present in Second XML, but not in First XML.
&gt; &quot;Changed Element:old&quot; means it was like this in First XML but &quot;Changed 
&gt; Element:new&quot; shows the changed 
&gt; 
&gt; version of it in Second XML.
&gt; 
&gt; Now, these deleted, added or changed components can occur at any position in 
&gt; the XML file. What I mean 
&gt; 
&gt; to say is, the tags can be deep inside. So there is no chance to know 
&gt; beforehand. Only we can check the 
&gt; 
&gt; comments to know which part in the XML holds what.
&gt; 
&gt; My question:
&gt; 
&gt; I need to show HTML output in a simple table like this:
&gt; 
&gt; ------------------------------------------------------------
&gt; First XML		| Second XML			
&gt; ------------------------------------------------------------
&gt; 		|
&gt; 		|	Added Element(s):
&gt; 		|	Item&gt;comment
&gt; 		|	value: additional comments
&gt; ------------------------------------------------------------
&gt; 		|
&gt; Deleted Element(s):	|
&gt; Item&gt;comment	|
&gt; value: Pen		|
&gt; ------------------------------------------------------------
&gt; Changed Element:old	|	Changed Element:new
&gt; Item&gt;Description	|	Item&gt;Description
&gt; value: Highlighter	|	value: highlighter
&gt; ------------------------------------------------------------


Here is a sample stylesheet that should give you an idea:

&lt;xsl:stylesheet
   xmlns:xsl=&quot;http://www.w3.org/1999/XSL/Transform&quot;
   version=&quot;1.0&quot;&gt;

   &lt;xsl:output method=&quot;html&quot; indent=&quot;yes&quot;/&gt;

   &lt;xsl:template match=&quot;/&quot;&gt;
     &lt;html lang=&quot;en&quot;&gt;
       &lt;head&gt;
         &lt;title&gt;Example&lt;/title&gt;
       &lt;/head&gt;
       &lt;body&gt;
         &lt;table&gt;
           &lt;thead&gt;
             &lt;tr&gt;
               &lt;th&gt;First XML&lt;/th&gt;
               &lt;th&gt;Second XML&lt;/th&gt;
             &lt;/tr&gt;
           &lt;/thead&gt;
           &lt;tbody&gt;
             &lt;xsl:apply-templates/&gt;
           &lt;/tbody&gt;
         &lt;/table&gt;
       &lt;/body&gt;
     &lt;/html&gt;
   &lt;/xsl:template&gt;

   &lt;xsl:template match=&quot;comment()[. = '  Changed Element:old ']&quot;&gt;
     &lt;tr&gt;
       &lt;td&gt;
         &lt;xsl:text&gt;Changed element:old&lt;/xsl:text&gt;
         &lt;br/&gt;
         &lt;xsl:text&gt;Item&gt;&lt;/xsl:text&gt;
         &lt;xsl:value-of select=&quot;name(following-sibling::*[1])&quot;/&gt;
         &lt;br/&gt;
         &lt;xsl:text&gt;value: &lt;/xsl:text&gt;
         &lt;xsl:value-of select=&quot;following-sibling::*[1]&quot;/&gt;
       &lt;/td&gt;
       &lt;td&gt;
         &lt;xsl:text&gt;Changed element:new&lt;/xsl:text&gt;
         &lt;br/&gt;
         &lt;xsl:text&gt;Item&gt;&lt;/xsl:text&gt;
         &lt;xsl:value-of select=&quot;name(following-sibling::comment()[. = ' 
Changed Element:new '][1]/following-sibling::*[1])&quot;/&gt;
         &lt;br/&gt;
         &lt;xsl:text&gt;value: &lt;/xsl:text&gt;
         &lt;xsl:value-of select=&quot;following-sibling::comment()[. = ' 
Changed Element:new '][1]/following-sibling::*[1]&quot;/&gt;
       &lt;/td&gt;
     &lt;/tr&gt;
   &lt;/xsl:template&gt;

   &lt;xsl:template match=&quot;comment()[. = '  Deleted Element(s) ']&quot;&gt;
     &lt;tr&gt;
       &lt;td&gt;
         &lt;xsl:text&gt;Deleted element(s):&lt;/xsl:text&gt;
         &lt;br/&gt;
         &lt;xsl:text&gt;Item&gt;&lt;/xsl:text&gt;
         &lt;xsl:value-of select=&quot;name(following-sibling::*[1])&quot;/&gt;
         &lt;br/&gt;
         &lt;xsl:text&gt;value: &lt;/xsl:text&gt;
         &lt;xsl:value-of select=&quot;following-sibling::*[1]&quot;/&gt;
       &lt;/td&gt;
       &lt;td&gt;&lt;/td&gt;
     &lt;/tr&gt;
   &lt;/xsl:template&gt;

   &lt;xsl:template match=&quot;comment()[. = '  Added Element(s) ']&quot;&gt;
     &lt;tr&gt;
       &lt;td&gt;&lt;/td&gt;
       &lt;td&gt;
         &lt;xsl:text&gt;Added element(s):&lt;/xsl:text&gt;
         &lt;br/&gt;
         &lt;xsl:text&gt;Item&gt;&lt;/xsl:text&gt;
         &lt;xsl:value-of select=&quot;name(following-sibling::*[1])&quot;/&gt;
         &lt;br/&gt;
         &lt;xsl:text&gt;value: &lt;/xsl:text&gt;
         &lt;xsl:value-of select=&quot;following-sibling::*[1]&quot;/&gt;
       &lt;/td&gt;
     &lt;/tr&gt;
   &lt;/xsl:template&gt;

   &lt;xsl:template match=&quot;text()&quot;/&gt;

&lt;/xsl:stylesheet&gt;

Its output, when run against the XML sample you posted, is as follows:

&lt;html lang=&quot;en&quot;&gt;
    &lt;head&gt;
       &lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=utf-8&quot;&gt;

       &lt;title&gt;Example&lt;/title&gt;
    &lt;/head&gt;
    &lt;body&gt;
       &lt;table&gt;
          &lt;thead&gt;
             &lt;tr&gt;
                &lt;th&gt;First XML&lt;/th&gt;
                &lt;th&gt;Second XML&lt;/th&gt;
             &lt;/tr&gt;
          &lt;/thead&gt;
          &lt;tbody&gt;
             &lt;tr&gt;
                &lt;td&gt;Changed element:old&lt;br&gt;Item&amp;gt;Description&lt;br&gt;value: 
Marker
                &lt;/td&gt;
                &lt;td&gt;Changed element:new&lt;br&gt;Item&amp;gt;Description&lt;br&gt;value: 
Mark er
                &lt;/td&gt;
             &lt;/tr&gt;
             &lt;tr&gt;
                &lt;td&gt;Changed element:old&lt;br&gt;Item&amp;gt;Description&lt;br&gt;value: 
Eraser
                &lt;/td&gt;
                &lt;td&gt;Changed element:new&lt;br&gt;Item&amp;gt;Description&lt;br&gt;value: 
eraser
                &lt;/td&gt;
             &lt;/tr&gt;
             &lt;tr&gt;
                &lt;td&gt;&lt;/td&gt;
                &lt;td&gt;Added element(s):&lt;br&gt;Item&amp;gt;comment&lt;br&gt;value: 
additional comments
                &lt;/td&gt;
             &lt;/tr&gt;
             &lt;tr&gt;
                &lt;td&gt;Deleted element(s):&lt;br&gt;Item&amp;gt;comment&lt;br&gt;value: Pen
                &lt;/td&gt;
                &lt;td&gt;&lt;/td&gt;
             &lt;/tr&gt;
             &lt;tr&gt;
                &lt;td&gt;Changed element:old&lt;br&gt;Item&amp;gt;Description&lt;br&gt;value: 
Highlighter
                &lt;/td&gt;
                &lt;td&gt;Changed element:new&lt;br&gt;Item&amp;gt;Description&lt;br&gt;value: 
highlighter
                &lt;/td&gt;
             &lt;/tr&gt;
          &lt;/tbody&gt;
       &lt;/table&gt;
    &lt;/body&gt;
&lt;/html&gt;


-- 

	Martin Honnen --- MVP XML
	http://msmvps.com/blogs/martin_honnen/</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200910/msg1000305636.html</link>
</item><item>
<title>Creating tabular HTML output based on comment in XML (using XSLT) - 10/29/2009 10:55:00 PM</title>
<description><![CDATA[<pre>Hi Friends

Greetings!

I have an XML file which contains difference between two xml like this: 

&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; ?&gt; 
&lt;orders&gt;
&lt;OrdersTransaction&gt;
&lt;Item&gt;
&lt;!--  Changed Element:old --&gt; 
&lt;Description&gt;Marker&lt;/Description&gt; 
&lt;!--  Changed Element:new --&gt; 
&lt;Description&gt;Mark er&lt;/Description&gt; 
&lt;/Item&gt;
&lt;/OrdersTransaction&gt;
&lt;OrdersTransaction&gt;
&lt;Item&gt;
&lt;!--  Changed Element:old --&gt; 
&lt;Description&gt;Eraser&lt;/Description&gt; 
&lt;!--  Changed Element:new --&gt; 
&lt;Description&gt;eraser&lt;/Description&gt; 
&lt;/Item&gt;
&lt;Item&gt;
&lt;!--  Added Element(s) --&gt; 
&lt;comment&gt;additional comments&lt;/comment&gt; 
&lt;/Item&gt;
&lt;Item&gt;
&lt;!--  Deleted Element(s) --&gt; 
&lt;comment&gt;Pen&lt;/comment&gt; 
&lt;/Item&gt;
&lt;Item&gt;
&lt;!--  Changed Element:old --&gt; 
&lt;Description&gt;Highlighter&lt;/Description&gt; 
&lt;!--  Changed Element:new --&gt; 
&lt;Description&gt;highlighter&lt;/Description&gt; 
&lt;/Item&gt;
&lt;/OrdersTransaction&gt;
&lt;/orders&gt;


&quot;Deleted Element(s)&quot; means, it was present in First XML, but not anymore in 
Second XML.
&quot;Added Element(s)&quot; means, it was present in Second XML, but not in First XML.
&quot;Changed Element:old&quot; means it was like this in First XML but &quot;Changed 
Element:new&quot; shows the changed 

version of it in Second XML.

Now, these deleted, added or changed components can occur at any position in 
the XML file. What I mean 

to say is, the tags can be deep inside. So there is no chance to know 
beforehand. Only we can check the 

comments to know which part in the XML holds what.

My question:

I need to show HTML output in a simple table like this:

------------------------------------------------------------
First XML		| Second XML			
------------------------------------------------------------
		|
		|	Added Element(s):
		|	Item&gt;comment
		|	value: additional comments
------------------------------------------------------------
		|
Deleted Element(s):	|
Item&gt;comment	|
value: Pen		|
------------------------------------------------------------
Changed Element:old	|	Changed Element:new
Item&gt;Description	|	Item&gt;Description
value: Highlighter	|	value: highlighter
------------------------------------------------------------


Now, the tags &quot;Item&quot;, &quot;comment&quot; etc are not fixed. It depends on the XML we 
are comparing. So need to 

track on the basis of &lt;!--  Added Element(s) --&gt;, &lt;!--  Deleted Element(s) 
--&gt;, &lt;!--  Changed 

Element:new --&gt; etc. and need to render the table printing the values and 
attributes in the tags.

Please ask me anything you like.
Thanks a ton in advance

Ayan</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200910/msg1000305613.html</link>
</item><item>
<title>Re: Timestamp formatting in XSLT - 10/23/2009 5:01:00 PM</title>
<description><![CDATA[<pre>jai wrote:

&gt; I have a dateTime format as an XML element (&lt;PDFTIMESTAMP&gt;2009-10-09
&gt; 13:10:58.00000&lt;/PDFTIMESTAMP&gt;). This dateTime format is not accepted
&gt; by XSLT 2.0 using Saxon 9.
&gt; 
&gt; I came to know that 2009-10-09T13:10:58.00000 is proper format for
&gt; dateTime.
&gt; 
&gt; I actually do a sort using PDFTIMESTAMP inside a for-each loop as
&gt; below:
&gt; 
&gt; &lt;xsl:for-each-group select=&quot;current-group()&quot; group-by=&quot;RECEIPTTYPE&quot;&gt;
&gt; 
&gt;                &lt;xsl:sort select=&quot;max(PDFTIMESTAMP/xs:dateTime(.)&quot;
&gt; order=&quot;descending&quot;/&gt;
&gt; 
&gt; In xs:dateTime(.), the issue is comming as format of current dateTime
&gt; is not correct. If the XML element's value cannot be corrected to
&gt; acceptable format, what can i do to convert the the improper dateTime
&gt; comming in xs:dateTime(.) to work?

If only the 'T' is missing then you can certainly do e.g.
         &lt;xsl:sort 
select=&quot;max(PDFTIMESTAMP/xs:dateTime(concat(substring(., 1, 10), 'T', 
substring(., 11))))&quot;/&gt;

-- 

	Martin Honnen --- MVP XML
	http://msmvps.com/blogs/martin_honnen/</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200910/msg1000305193.html</link>
</item><item>
<title>Re: Following XSLT Logic Not Working - 10/23/2009 11:46:00 AM</title>
<description><![CDATA[<pre>Sanket wrote:
&gt; I have to check a value of a variable in XSLT, if it is null then i
&gt; have to set it to default &quot;$&quot; otherwise same value.
&gt; so for that i have written the following XSLT Logic:
&gt; 
&gt; &lt;XSL:variable name=&quot;dummy&quot; select= &quot;ArrayOfBookMark/BookMark
&gt; [ShortName='Asp-7041-EndVar1]/Value&quot;/&gt;
&gt; &lt;XSL:choose&gt;
&gt;    &lt;XSL:when test=&quot;($dummy!='')&quot;&gt;
&gt;         &lt;XSL:variable name=&quot;dummy1&quot; select=&quot;$dummy&quot;/&gt;
&gt;    &lt;/when&gt;
&gt;    &lt;XSL:otherwise&gt;
&gt;         &lt;XSL:variable name=&quot;dummy1&quot; select=&quot;'$'&quot;/&gt;
&gt;        &lt;/XSL:variable&gt;
&gt;    &lt;XSL:otherwise&gt;
&gt; &lt;/XSL:choose&gt;

You might want

   &lt;xsl:variable name=&quot;dummy&quot;
 
select=&quot;ArrayOfBookMark/BookMark[ShortName='Asp-7041-EndVar1]/Value&quot;/&gt;
   &lt;xsl:variable name=&quot;dummy1&quot;
                 select=&quot;if ($dummy) then $dummy else '$'&quot;/&gt;

That is XSLT 2.0 supported by Saxon, Altova, Gestalt.

If you use XSLT 1.0 then it is more difficult:

   &lt;xsl:variable name=&quot;dummy&quot;
 
select=&quot;ArrayOfBookMark/BookMark[ShortName='Asp-7041-EndVar1]/Value&quot;/&gt;
   &lt;xsl:variable name=&quot;dummy1&quot;&gt;
     &lt;xsl:choose&gt;
       &lt;xsl:when test=&quot;$dummy&quot;&gt;
         &lt;xsl:value-of select=&quot;$dummy&quot;/&gt;
       &lt;/xsl:when&gt;
       &lt;xsl:otherwise&gt;$&lt;/xsl:otherwise&gt;
     &lt;/xsl:choose&gt;
   &lt;/xsl:variable&gt;




-- 

	Martin Honnen --- MVP XML
	http://msmvps.com/blogs/martin_honnen/</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200910/msg1000305162.html</link>
</item><item>
<title>Timestamp formatting in XSLT - 10/23/2009 5:08:00 AM</title>
<description><![CDATA[<pre>Hello,

I have a dateTime format as an XML element (&lt;PDFTIMESTAMP&gt;2009-10-09
13:10:58.00000&lt;/PDFTIMESTAMP&gt;). This dateTime format is not accepted
by XSLT 2.0 using Saxon 9.

I came to know that 2009-10-09T13:10:58.00000 is proper format for
dateTime.

I actually do a sort using PDFTIMESTAMP inside a for-each loop as
below:

&lt;xsl:for-each-group select=&quot;current-group()&quot; group-by=&quot;RECEIPTTYPE&quot;&gt;

               &lt;xsl:sort select=&quot;max(PDFTIMESTAMP/xs:dateTime(.)&quot;
order=&quot;descending&quot;/&gt;

In xs:dateTime(.), the issue is comming as format of current dateTime
is not correct. If the XML element's value cannot be corrected to
acceptable format, what can i do to convert the the improper dateTime
comming in xs:dateTime(.) to work?

Any help is much appreciated.

Thanks!!

Jai</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200910/msg1000305179.html</link>
</item><item>
<title>Following XSLT Logic Not Working - 10/22/2009 10:05:00 PM</title>
<description><![CDATA[<pre>I have to check a value of a variable in XSLT, if it is null then i
have to set it to default &quot;$&quot; otherwise same value.
so for that i have written the following XSLT Logic:

&lt;XSL:variable name=&quot;dummy&quot; select= &quot;ArrayOfBookMark/BookMark
[ShortName='Asp-7041-EndVar1]/Value&quot;/&gt;
&lt;XSL:choose&gt;
   &lt;XSL:when test=&quot;($dummy!='')&quot;&gt;
        &lt;XSL:variable name=&quot;dummy1&quot; select=&quot;$dummy&quot;/&gt;
   &lt;/when&gt;
   &lt;XSL:otherwise&gt;
        &lt;XSL:variable name=&quot;dummy1&quot; select=&quot;'$'&quot;/&gt;
       &lt;/XSL:variable&gt;
   &lt;XSL:otherwise&gt;
&lt;/XSL:choose&gt;


Here in &quot;dummy&quot; i am copying the value comming from follwing XML.it is
retriving value correctly in to &quot;dummy&quot;.
Condition also checking but the value assignment code for new variable
&quot;dummy1&quot;  is not working.

&lt;ArrayOfBookMark&gt;
  &lt;BookMark&gt;
     &lt;ShortName&gt;Asp-7041-EndVar1&lt;/ShortName&gt;
     &lt;Value&gt;12345&lt;/Value&gt;
  &lt;/BookMark&gt;
&lt;/ArrayOfBookMark&gt;

please help...


Quick response will be appriciated.

-Sanket
Sanket.chougule@gmail.com</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200910/msg1000305159.html</link>
</item><item>
<title>Re: For Each to a Comma Separated List - 10/22/2009 12:02:00 PM</title>
<description><![CDATA[<pre>Brian wrote:

&gt; Here is the simple XML Block where I want to transform the ListNode items 
&gt; into a comma separated list that gets inserted into a table cell.
&gt; 
&gt; &lt;XMLBlk BlkAttr=&quot;A001&quot;&gt;
&gt; 	&lt;NodeA&gt;Standard&lt;/NodeA&gt;
&gt; 	&lt;ListNode&gt;
&gt; 		&lt;ListItem&gt;Item 1&lt;/ListItem&gt;
&gt; 		&lt;ListItem&gt;Item 2&lt;/ListItem&gt;
&gt; 		&lt;ListItem&gt;Item 3&lt;/ListItem&gt;
&gt; 	&lt;/ListNode&gt;
&gt; 	&lt;AnotherNode&gt;&lt;/AnotherNode&gt;
&gt; &lt;/XMLBlk&gt;
&gt; 
&gt; The list output would be &quot;Item 1, Item 2, Item 3&quot;

With XSLT 2.0 creating the comma separated list is as easy as

   &lt;xsl:template match=&quot;ListNode&quot;&gt;
     &lt;xsl:value-of select=&quot;ListItem&quot; separator=&quot;, &quot;/&gt;
   &lt;/xsl:template&gt;

With XSLT 1.0 you need

   &lt;xsl:template match=&quot;ListNode&quot;&gt;
     &lt;xsl:for-each select=&quot;ListItem&quot;&gt;
       &lt;xsl:value-of select=&quot;.&quot;/&gt;
       &lt;xsl:if test=&quot;position() != last()&quot;&gt;, &lt;/xsl:if&gt;
     &lt;/xsl:for-each&gt;
   &lt;/xsl:template&gt;

&gt; My table is somehow creates the CSL but inserts the individual items into 
&gt; what appears to be sub-cells.  I get word wrapping on the &quot;Item 1&quot; text 
&gt; before it writes the &quot;Item 2&quot; text in the table cell.
&gt; 
&gt; Question...  what is the best way to structure this transform so that the 
&gt; cell just gets a CSL and wraps the content if it exceeds the width of the 
&gt; table cell?

What kind of output do you create with the XSLT? Is that HTML?


-- 

	Martin Honnen --- MVP XML
	http://msmvps.com/blogs/martin_honnen/</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200910/msg1000305106.html</link>
</item><item>
<title>Re: For Each to a Comma Separated List - 10/22/2009 9:26:00 AM</title>
<description><![CDATA[<pre>Yes... I'm outputting to HTML...

I'll have to dig into the XSLT 2.0 standard and see how much I can simplify. 
 I am using 1.0 because my list item logic is the same as your 1.0 example.

Were you able to access the attachment?

&quot;Martin Honnen&quot; wrote:

&gt; Brian wrote:
&gt; 
&gt; &gt; Here is the simple XML Block where I want to transform the ListNode items 
&gt; &gt; into a comma separated list that gets inserted into a table cell.
&gt; &gt; 
&gt; &gt; &lt;XMLBlk BlkAttr=&quot;A001&quot;&gt;
&gt; &gt; 	&lt;NodeA&gt;Standard&lt;/NodeA&gt;
&gt; &gt; 	&lt;ListNode&gt;
&gt; &gt; 		&lt;ListItem&gt;Item 1&lt;/ListItem&gt;
&gt; &gt; 		&lt;ListItem&gt;Item 2&lt;/ListItem&gt;
&gt; &gt; 		&lt;ListItem&gt;Item 3&lt;/ListItem&gt;
&gt; &gt; 	&lt;/ListNode&gt;
&gt; &gt; 	&lt;AnotherNode&gt;&lt;/AnotherNode&gt;
&gt; &gt; &lt;/XMLBlk&gt;
&gt; &gt; 
&gt; &gt; The list output would be &quot;Item 1, Item 2, Item 3&quot;
&gt; 
&gt; With XSLT 2.0 creating the comma separated list is as easy as
&gt; 
&gt;    &lt;xsl:template match=&quot;ListNode&quot;&gt;
&gt;      &lt;xsl:value-of select=&quot;ListItem&quot; separator=&quot;, &quot;/&gt;
&gt;    &lt;/xsl:template&gt;
&gt; 
&gt; With XSLT 1.0 you need
&gt; 
&gt;    &lt;xsl:template match=&quot;ListNode&quot;&gt;
&gt;      &lt;xsl:for-each select=&quot;ListItem&quot;&gt;
&gt;        &lt;xsl:value-of select=&quot;.&quot;/&gt;
&gt;        &lt;xsl:if test=&quot;position() != last()&quot;&gt;, &lt;/xsl:if&gt;
&gt;      &lt;/xsl:for-each&gt;
&gt;    &lt;/xsl:template&gt;
&gt; 
&gt; &gt; My table is somehow creates the CSL but inserts the individual items into 
&gt; &gt; what appears to be sub-cells.  I get word wrapping on the &quot;Item 1&quot; text 
&gt; &gt; before it writes the &quot;Item 2&quot; text in the table cell.
&gt; &gt; 
&gt; &gt; Question...  what is the best way to structure this transform so that the 
&gt; &gt; cell just gets a CSL and wraps the content if it exceeds the width of the 
&gt; &gt; table cell?
&gt; 
&gt; What kind of output do you create with the XSLT? Is that HTML?
&gt; 
&gt; 
&gt; -- 
&gt; 
&gt; 	Martin Honnen --- MVP XML
&gt; 	http://msmvps.com/blogs/martin_honnen/
&gt; .
&gt;</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200910/msg1000305127.html</link>
</item><item>
<title>Is Word 2010 an .NET implementation - 10/22/2009 5:55:00 AM</title>
<description><![CDATA[<pre>Hello

Will Word 2010 now be a .NET implementation?

Thanks - Studi1</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200910/msg1000305111.html</link>
</item><item>
<title>For Each to a Comma Separated List - 10/21/2009 2:33:00 PM</title>
<description><![CDATA[<pre>I inherited an XSLT that I'm trying to modify...  I'm a novice at this but 
have been able to pick my way through a lot of changes.  But this one has me 
stumped.

Here is the simple XML Block where I want to transform the ListNode items 
into a comma separated list that gets inserted into a table cell.

&lt;XMLBlk BlkAttr=&quot;A001&quot;&gt;
	&lt;NodeA&gt;Standard&lt;/NodeA&gt;
	&lt;ListNode&gt;
		&lt;ListItem&gt;Item 1&lt;/ListItem&gt;
		&lt;ListItem&gt;Item 2&lt;/ListItem&gt;
		&lt;ListItem&gt;Item 3&lt;/ListItem&gt;
	&lt;/ListNode&gt;
	&lt;AnotherNode&gt;&lt;/AnotherNode&gt;
&lt;/XMLBlk&gt;

The list output would be &quot;Item 1, Item 2, Item 3&quot;

My table is somehow creates the CSL but inserts the individual items into 
what appears to be sub-cells.  I get word wrapping on the &quot;Item 1&quot; text 
before it writes the &quot;Item 2&quot; text in the table cell.

Question...  what is the best way to structure this transform so that the 
cell just gets a CSL and wraps the content if it exceeds the width of the 
table cell?</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200910/msg1000305072.html</link>
</item><item>
<title>Re: xsltfunctions.com - 10/20/2009 8:10:00 PM</title>
<description><![CDATA[<pre>Artist wrote:
&gt; At the website:
&gt; http://www.xsltfunctions.com/
&gt; there are many xsl functions I need to have working in PHP5 on Windows 
&gt; XP. On this site I cannot find any place to download any PHP extension 
&gt; to support the functions in its &quot;http://www.functx.com&quot; namespace. If 
&gt; anyone knows anything about this function library and how to get it 
&gt; installed please let me know.

That is all XSLT/XPath 2.0 so you need an XSLT 2.0 processor like Saxon 
9 or AltovaXML tools.
PHP 5 uses libxslt I think so that does not work with those functions.

I think someone tries to make Saxon or AltovaXML tools callable from PHP 
but I can't find anything on sourceforge with a quick search.

-- 

	Martin Honnen --- MVP XML
	http://msmvps.com/blogs/martin_honnen/</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200910/msg1000305010.html</link>
</item><item>
<title>xsltfunctions.com - 10/20/2009 9:54:00 AM</title>
<description><![CDATA[<pre>At the website:
http://www.xsltfunctions.com/
there are many xsl functions I need to have working in PHP5 on Windows 
XP. On this site I cannot find any place to download any PHP extension 
to support the functions in its &quot;http://www.functx.com&quot; namespace. If 
anyone knows anything about this function library and how to get it 
installed please let me know.

-- 
If you desire to respond directly remove the &quot;sj.&quot; from the domain name 
part of my email address. It is a spam jammer.</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200910/msg1000305008.html</link>
</item><item>
<title>Re: typing in Hebrew - 10/16/2009 10:00:00 PM</title>
<description><![CDATA[<pre>On Thu, 15 Oct 2009 13:48:01 -0700, Kelev
&lt;bbss45@hotmail.com(donotspam&gt; wrote:

&gt;when I type a word at the spreadsheet at microsoft works, I see it in english 
&gt;and when i do ENTER, remain writen in english
&gt;when I type in Hebrew, I see when I tipe in Hebrew but when I do ENTER, it 
&gt;is written in gibrish
&gt;I whent to the control panel, regional and language and changed to Hebrew, 
&gt;and I still can not see written in hebrew
&gt;please what to do to fix this problem?

This is an XSL newsgroup, which deals with issues about XSL (the XML
formatting language). You meant to post in a newsgroup about
spreadsheets, for the file format XLS (not XSL ;-)

I'd look for newsgroups with Excel in their title

Cheers - Neil
------------------------------------------------
Digital Media MVP : 2004-2009
http://mvp.support.microsoft.com/mvpfaqs</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200910/msg1000304966.html</link>
</item><item>
<title>typing in Hebrew - 10/15/2009 1:48:00 PM</title>
<description><![CDATA[<pre>when I type a word at the spreadsheet at microsoft works, I see it in english 
and when i do ENTER, remain writen in english
when I type in Hebrew, I see when I tipe in Hebrew but when I do ENTER, it 
is written in gibrish
I whent to the control panel, regional and language and changed to Hebrew, 
and I still can not see written in hebrew
please what to do to fix this problem?
-- 
&#215;&#170;&#215;•&#215;“&#215;” &#215;œ&#215;&#162;&#215;•&#215;–&#215;&#168;&#215;™&#215;
Kelev</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200910/msg1000304944.html</link>
</item><item>
<title>Re: How to open a WordML document with an XSLT from MS Explorer? - 10/6/2009 6:23:00 PM</title>
<description><![CDATA[<pre>Studi1 wrote:
&gt; I want to display it in MS Word after tranformation. (In this case, 'to 
&gt; display' means to open a Word session ...).

Maybe someone in microsoft.public.office.xml understands what you want 
to achieve and can help.



-- 

	Martin Honnen --- MVP XML
	http://msmvps.com/blogs/martin_honnen/</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200910/msg1000304404.html</link>
</item><item>
<title>Re: How to open a WordML document with an XSLT from MS Explorer? - 10/6/2009 3:14:00 PM</title>
<description><![CDATA[<pre>Studi1 wrote:
&gt; I have a WordML document and want to display it transformed using an XSLT 
&gt; document.
&gt; -  Without XSLT one opens a Word document efficiently directly in MS 
&gt; Explorer (by a double click). 
&gt; -  Wirth XSLT I as a WordML beginner cannot see yet the way how to adopt 
&gt; this concept of a Word session 
&gt; --  I want that the object (Word document) opens the tool session 
&gt; automattically. 
&gt; --  Presently I only know how to open the tool session with Word first, and 
&gt; to include the Word XML document by a command of the type 'File / Open / ...' 
&gt; afterwards.

Do you want to transform the WordML document to HTML? In which 
application do you want to display the transformation result?

-- 

	Martin Honnen --- MVP XML
	http://msmvps.com/blogs/martin_honnen/</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200910/msg1000304389.html</link>
</item><item>
<title>Re: How to open a WordML document with an XSLT from MS Explorer? - 10/6/2009 1:16:00 PM</title>
<description><![CDATA[<pre>Studi1 wrote:

&gt; I am a WordML beginner and have a fundamental problem:  We open our Word 
&gt; documents from Explorer (double click) and would like to do so when we want 
&gt; to transform an WordML document with XSLT as well.
&gt; 
&gt; How can we do that?

I don't understand what you want to achieve. Do you have a WordML 
document and want to apply an XSLT transformation to that? Or do you 
want to create a WordML document as the result of an XSLT transformation?


-- 

	Martin Honnen --- MVP XML
	http://msmvps.com/blogs/martin_honnen/</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200910/msg1000304379.html</link>
</item><item>
<title>Re: Help sorting xml to xml - 10/6/2009 1:14:00 PM</title>
<description><![CDATA[<pre>derekmw wrote:

&gt; &lt;a&gt;
&gt; 	&lt;b&gt;
&gt; 		&lt;c type=&quot;period&quot;&gt;
&gt; 			&lt;key&gt;
&gt; 				&lt;d name=&quot;date&quot;&gt;2006-09-12 00:00:00.0&lt;/d&gt;
&gt; 			&lt;/key&gt;
&gt; 			...(many other elements, many which have nested elements 6-7 levels
&gt; deep)
&gt; 		&lt;/c&gt;
&gt; 		&lt;c type=&quot;period&quot;&gt;
&gt; 			&lt;key&gt;
&gt; 				&lt;d name=&quot;date&quot;&gt;2006-09-15 00:00:00.0&lt;/d&gt;
&gt; 			&lt;/key&gt;
&gt; 			...(many other elements, many which have nested elements 6-7 levels
&gt; deep)
&gt; 		&lt;/c&gt;
&gt; 	&lt;/b&gt;
&gt; &lt;/a&gt;
&gt; 
&gt; From what I read/understood, with xsl, you have to specify all the
&gt; fields you want to copy over to the new xml transformation?  If so,
&gt; that's just not an option as there are so many other elements within
&gt; the 'c' elements I want to sort by.
&gt; 
&gt; What I need to do is find a quick way to sort the 'c' elements by the
&gt; 'd' element value (date).  Any suggestions/direction would be
&gt; appreciated!

With XSLT 1.0 you can put xsl:sort elements as children of the 
xsl:for-each or xsl:apply-templates elements. What you do then is up to 
you thus if you want to sort and then make a deep copy that is certainly 
possible e.g.

   &lt;xsl:template match=&quot;b&quot;&gt;
    &lt;xsl:copy&gt;
     &lt;xsl:for-each select=&quot;c&quot;&gt;
       &lt;xsl:sort select=&quot;key/d[@name = 'date']&quot;/&gt;
       &lt;xsl:copy-of select=&quot;.&quot;/&gt;
     &lt;/xsl:for-each&gt;
    &lt;/xsl:copy&gt;
   &lt;/xsl:template&gt;

So the above is a template for 'b' elements that makes a shallow copy of 
the 'b' element and then processes the 'c' children, sorted by the text 
value of the &quot;key/d[@name = 'date']&quot; grandchild element and then simply 
makes a deep copy.


-- 

	Martin Honnen --- MVP XML
	http://msmvps.com/blogs/martin_honnen/</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200910/msg1000304378.html</link>
</item><item>
<title>Re: How to open a WordML document with an XSLT from MS Explorer? - 10/6/2009 6:50:00 AM</title>
<description><![CDATA[<pre>I want to display it in MS Word after tranformation. (In this case, 'to 
display' means to open a Word session ...).

&quot;Martin Honnen&quot; wrote:

&gt; Studi1 wrote:
&gt; &gt; I have a WordML document and want to display it transformed using an XSLT 
&gt; &gt; document.
&gt; &gt; -  Without XSLT one opens a Word document efficiently directly in MS 
&gt; &gt; Explorer (by a double click). 
&gt; &gt; -  Wirth XSLT I as a WordML beginner cannot see yet the way how to adopt 
&gt; &gt; this concept of a Word session 
&gt; &gt; --  I want that the object (Word document) opens the tool session 
&gt; &gt; automattically. 
&gt; &gt; --  Presently I only know how to open the tool session with Word first, and 
&gt; &gt; to include the Word XML document by a command of the type 'File / Open / ...' 
&gt; &gt; afterwards.
&gt; 
&gt; Do you want to transform the WordML document to HTML? In which 
&gt; application do you want to display the transformation result?
&gt; 
&gt; -- 
&gt; 
&gt; 	Martin Honnen --- MVP XML
&gt; 	http://msmvps.com/blogs/martin_honnen/
&gt;</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200910/msg1000304390.html</link>
</item><item>
<title>Re: How to open a WordML document with an XSLT from MS Explorer? - 10/6/2009 4:37:00 AM</title>
<description><![CDATA[<pre>I have a WordML document and want to display it transformed using an XSLT 
document.
-  Without XSLT one opens a Word document efficiently directly in MS 
Explorer (by a double click). 
-  Wirth XSLT I as a WordML beginner cannot see yet the way how to adopt 
this concept of a Word session 
--  I want that the object (Word document) opens the tool session 
automattically. 
--  Presently I only know how to open the tool session with Word first, and 
to include the Word XML document by a command of the type 'File / Open / ...' 
afterwards.

&quot;Martin Honnen&quot; wrote:

&gt; Studi1 wrote:
&gt; 
&gt; &gt; I am a WordML beginner and have a fundamental problem:  We open our Word 
&gt; &gt; documents from Explorer (double click) and would like to do so when we want 
&gt; &gt; to transform an WordML document with XSLT as well.
&gt; &gt; 
&gt; &gt; How can we do that?
&gt; 
&gt; I don't understand what you want to achieve. Do you have a WordML 
&gt; document and want to apply an XSLT transformation to that? Or do you 
&gt; want to create a WordML document as the result of an XSLT transformation?
&gt; 
&gt; 
&gt; -- 
&gt; 
&gt; 	Martin Honnen --- MVP XML
&gt; 	http://msmvps.com/blogs/martin_honnen/
&gt;</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200910/msg1000304380.html</link>
</item><item>
<title>How to open a WordML document with an XSLT from MS Explorer? - 10/6/2009 2:37:00 AM</title>
<description><![CDATA[<pre>Hello 
I am a WordML beginner and have a fundamental problem:  We open our Word 
documents from Explorer (double click) and would like to do so when we want 
to transform an WordML document with XSLT as well.

How can we do that?

Best regards - Studi1</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200910/msg1000304371.html</link>
</item><item>
<title>Help sorting xml to xml - 10/5/2009 4:00:00 PM</title>
<description><![CDATA[<pre>Hi all,

I've been stuck on this issue for a while.  I need to sort elements in
an xml file but have been unable to.  First of all, I'm new to xsl.
But here is the general layout of my xml:

&lt;a&gt;
	&lt;b&gt;
		&lt;c type=&quot;period&quot;&gt;
			&lt;key&gt;
				&lt;d name=&quot;date&quot;&gt;2006-09-12 00:00:00.0&lt;/d&gt;
			&lt;/key&gt;
			...(many other elements, many which have nested elements 6-7 levels
deep)
		&lt;/c&gt;
		&lt;c type=&quot;period&quot;&gt;
			&lt;key&gt;
				&lt;d name=&quot;date&quot;&gt;2006-09-15 00:00:00.0&lt;/d&gt;
			&lt;/key&gt;
			...(many other elements, many which have nested elements 6-7 levels
deep)
		&lt;/c&gt;
	&lt;/b&gt;
&lt;/a&gt;

From what I read/understood, with xsl, you have to specify all the
fields you want to copy over to the new xml transformation?  If so,
that's just not an option as there are so many other elements within
the 'c' elements I want to sort by.

What I need to do is find a quick way to sort the 'c' elements by the
'd' element value (date).  Any suggestions/direction would be
appreciated!

Thanks.</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200910/msg1000304344.html</link>
</item><item>
<title>[ANN] XMLmind XML Editor 4.5 - 9/25/2009 10:03:00 AM</title>
<description><![CDATA[<pre>XMLmind is happy to announce the version 4.5 of XMLmind XML Editor.
    _____________________________________________

XMLmind XML Editor Personal Edition 4.5 can be downloaded from
http://www.xmlmind.com/xmleditor/download.shtml

Professional Edition users, please upgrade using this form:
http://www.xmlmind.com/store/download.php

(The above form is usually accessed through
http://www.xmlmind.com/xmleditor/upgrade.html.)
    _____________________________________________

v4.5 (September 24, 2009): DITA support is now
bundled in XMLmind XML Editor. This support has
been greatly enhanced. It is now as comprehensive
as DocBook support in XMLmind XML Editor. Most of
the enhancements come from XMLmind DITA Converter.

   XMLmind DITA Converter (ditac for short)
   allows to convert the most complex DITA 1.1
   documents to production-quality XHTML 1.0, XHTML
   1.1, HTML 4.1, Java[tm] Help, HTML Help, PDF,
   PostScript[r], RTF (can be opened in Word 2000+),
   WordprocessingML (can be opened in Word 2003+),
   Office Open XML (.docx, can be opened in Word
   2007+), OpenOffice (.odt, can be opened in
   OpenOffice.org 2+).

   XMLmind DITA Converter is free, open source,
   software licensed under the very liberal terms
   of the Mozilla Public License version 1.1.

   More information in http://www.xmlmind.com/ditac/
    _____________________________________________

More information in
http://www.xmlmind.com/xmleditor/changes.html

--
XMLmind XML Editor Information List
xmleditor-announce@xmlmind.com
http://www.xmlmind.com/mailman/listinfo/xmleditor-announce</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200909/msg1000303588.html</link>
</item><item>
<title>[ANN] First release of XMLmind DITA Converter - 9/24/2009 9:25:00 AM</title>
<description><![CDATA[<pre>XMLmind is happy to announce the first release of
XMLmind DITA Converter.

XMLmind DITA Converter, which is open source software,
can be freely downloaded from:

http://www.xmlmind.com/ditac/download.shtml
________________________________________________

XMLmind DITA Converter v1.0 (September 23, 2009)

XMLmind DITA Converter (ditac for short) allows to
convert the most complex DITA 1.1 documents to
production-quality XHTML 1.0, XHTML 1.1, HTML 4.1,
Java[tm] Help, HTML Help, PDF, PostScript[r], RTF (can
be opened in Word 2000+), WordprocessingML (can be
opened in Word 2003+), Office Open XML (.docx, can
be opened in Word 2007+), OpenOffice (.odt, can be
opened in OpenOffice.org 2+).

XMLmind DITA Converter has been developed in order
to be integrated in the following XMLmind
commercial products:
   * XMLmind XML Editor,
   * XMLmind XSL-FO Converter.

As such, XMLmind DITA Converter is professionally
developed software, well tested, well documented
and well supported.

XMLmind DITA Converter is free, open source,
software licensed under the very liberal terms of
the Mozilla Public License version 1.1.

All this makes XMLmind DITA Converter a very
serious alternative to using the DITA Open
Toolkit.

More information in http://www.xmlmind.com/ditac/.


_______________________________________________
ditac-support mailing list
ditac-support@xmlmind.com
http://www.xmlmind.com/mailman/listinfo/ditac-support</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200909/msg1000303513.html</link>
</item><item>
<title>Re: distinct-values work-around for Xpath 1.0 - 9/22/2009 1:10:00 PM</title>
<description><![CDATA[<pre>Barnum wrote:
&gt; Hmmm.... I've been thinking about the fact that I need to use the
&gt; predicate also in the preceding-sibling clause.
&gt; This must mean that my first select: &lt;xsl:variable name=&quot;fie&quot;
&gt; select=&quot;$in/foo[@name='1']&quot; /&gt;
&gt; gives a node set where the nodes still have the original sibling
&gt; information.
&gt; 
&gt; So, a select only gives a selection from a node set, and the original
&gt; node set information is still there?

I am not sure I understand what you are asking but XPath operates on a 
tree model and any node selection selects nodes in that tree where the 
tree remains intact meaning any parent/child/sibling/ancestor 
relationships continue to exist.

-- 

	Martin Honnen --- MVP XML
	http://msmvps.com/blogs/martin_honnen/</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200909/msg1000303392.html</link>
</item><item>
<title>Re: distinct-values work-around for Xpath 1.0 - 9/22/2009 4:29:00 AM</title>
<description><![CDATA[<pre>On 22 Sep, 13:09, Martin Honnen &lt;mahotr...@yahoo.de&gt; wrote:
&gt; Barnum wrote:
&gt; &gt; Hmmm.... I've been thinking about the fact that I need to use the
&gt; &gt; predicate also in the preceding-sibling clause.
&gt; &gt; This must mean that my first select: &lt;xsl:variable name=3D&quot;fie&quot;
&gt; &gt; select=3D&quot;$in/foo[@name=3D'1']&quot; /&gt;
&gt; &gt; gives a node set where the nodes still have the original sibling
&gt; &gt; information.
&gt;
&gt; &gt; So, a select only gives a selection from a node set, and the original
&gt; &gt; node set information is still there?
&gt;
&gt; I am not sure I understand what you are asking but XPath operates on a
&gt; tree model and any node selection selects nodes in that tree where the
&gt; tree remains intact meaning any parent/child/sibling/ancestor
&gt; relationships continue to exist.
&gt;
&gt; --
&gt;
&gt; =A0 =A0 =A0 =A0 Martin Honnen --- MVP XML
&gt; =A0 =A0 =A0 =A0http://msmvps.com/blogs/martin_honnen/

That was exactly what I meant: &quot;any parent/child/sibling/ancestor
relationships continue to exist.&quot;
Thanks!</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200909/msg1000303393.html</link>
</item><item>
<title>Re: distinct-values work-around for Xpath 1.0 - 9/22/2009 3:57:00 AM</title>
<description><![CDATA[<pre>Hmmm.... I've been thinking about the fact that I need to use the
predicate also in the preceding-sibling clause.
This must mean that my first select: &lt;xsl:variable name=&quot;fie&quot;
select=&quot;$in/foo[@name='1']&quot; /&gt;
gives a node set where the nodes still have the original sibling
information.

So, a select only gives a selection from a node set, and the original
node set information is still there?

Thanks for any insight.</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200909/msg1000303388.html</link>
</item><item>
<title>Re: linfeed - 9/18/2009 4:59:00 PM</title>
<description><![CDATA[<pre>Atila wrote:
&gt; How do I remove linefeeds with xslt transform?
&gt; I do not want to use normailze-space() as it modifies the text. I want to 
&gt; count whitespaces as 1 characater as I have maxLength constraint. 
&gt; substring(element,1,2000) counts more than 2000 as whitespaces count more 
&gt; than 1 character 

I don't understand what you want to achieve.
If you want to remove a certain character you can use the translate 
function e.g.
   translate(foo, '&amp;#10;', '')
will remove any linefeed character (where that code needs to be put in 
an XML document or other environment where '&amp;#10;' denotes a linefeed 
character).

-- 

	Martin Honnen --- MVP XML
	http://msmvps.com/blogs/martin_honnen/</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200909/msg1000303128.html</link>
</item><item>
<title>linfeed - 9/18/2009 3:25:00 PM</title>
<description><![CDATA[<pre>How do I remove linefeeds with xslt transform?
I do not want to use normailze-space() as it modifies the text. I want to 
count whitespaces as 1 characater as I have maxLength constraint. 
substring(element,1,2000) counts more than 2000 as whitespaces count more 
than 1 character</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200909/msg1000303125.html</link>
</item><item>
<title>Re: Question regarding XSL - 9/16/2009 7:53:00 PM</title>
<description><![CDATA[<pre>Rudolf wrote:
&gt; height is an attribute in the xml
&gt; 
&gt; i am using XSLT2.0


Here is an example, assuming an XML input alike

&lt;data&gt;
   &lt;item height=&quot;10&quot;/&gt;
   &lt;item height=&quot;20&quot;/&gt;
   &lt;item height=&quot;30&quot;/&gt;
&lt;/data&gt;

then this stylesheet below

&lt;xsl:stylesheet
   xmlns:xsl=&quot;http://www.w3.org/1999/XSL/Transform&quot;
   version=&quot;2.0&quot;
   xmlns:xs=&quot;http://www.w3.org/2001/XMLSchema&quot;
   xmlns:mf=&quot;http://example.com/2009/mf&quot;
   xmlns=&quot;http://www.w3.org/2000/svg&quot;
   exclude-result-prefixes=&quot;xs mf&quot;&gt;

   &lt;xsl:output indent=&quot;yes&quot;/&gt;

   &lt;xsl:template match=&quot;/&quot;&gt;
     &lt;svg&gt;
       &lt;xsl:call-template name=&quot;mf:make-rects&quot;&gt;
         &lt;xsl:with-param name=&quot;items&quot; select=&quot;data/item&quot;/&gt;
         &lt;xsl:with-param name=&quot;xcoord&quot; select=&quot;10&quot;/&gt;
         &lt;xsl:with-param name=&quot;ycoord&quot; select=&quot;10&quot;/&gt;
       &lt;/xsl:call-template&gt;
     &lt;/svg&gt;
   &lt;/xsl:template&gt;

   &lt;xsl:template name=&quot;mf:make-rects&quot;&gt;
     &lt;xsl:param name=&quot;items&quot; as=&quot;element()*&quot;/&gt;
     &lt;xsl:param name=&quot;xcoord&quot; as=&quot;xs:integer&quot;/&gt;
     &lt;xsl:param name=&quot;ycoord&quot; as=&quot;xs:integer&quot;/&gt;
     &lt;xsl:if test=&quot;$items[1]&quot;&gt;
       &lt;rect x=&quot;{$xcoord}&quot; y=&quot;{$ycoord}&quot; width=&quot;10&quot; 
height=&quot;{$items[1]/@height}&quot; fill=&quot;green&quot;/&gt;
       &lt;xsl:call-template name=&quot;mf:make-rects&quot;&gt;
         &lt;xsl:with-param name=&quot;items&quot; select=&quot;$items[position() gt 1]&quot;/&gt;
         &lt;xsl:with-param name=&quot;xcoord&quot; select=&quot;$xcoord&quot;/&gt;
         &lt;xsl:with-param name=&quot;ycoord&quot; select=&quot;$ycoord + 1 + 
xs:integer($items[1]/@height)&quot;/&gt;
       &lt;/xsl:call-template&gt;
     &lt;/xsl:if&gt;
   &lt;/xsl:template&gt;

&lt;/xsl:stylesheet&gt;

creates the following XML:

&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot;&gt;
    &lt;rect x=&quot;10&quot; y=&quot;10&quot; width=&quot;10&quot; height=&quot;10&quot; fill=&quot;green&quot;/&gt;
    &lt;rect x=&quot;10&quot; y=&quot;21&quot; width=&quot;10&quot; height=&quot;20&quot; fill=&quot;green&quot;/&gt;
    &lt;rect x=&quot;10&quot; y=&quot;42&quot; width=&quot;10&quot; height=&quot;30&quot; fill=&quot;green&quot;/&gt;
&lt;/svg&gt;

-- 

	Martin Honnen --- MVP XML
	http://msmvps.com/blogs/martin_honnen/</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200909/msg1000303004.html</link>
</item><item>
<title>Re: Question regarding XSL - 9/16/2009 11:43:00 AM</title>
<description><![CDATA[<pre>Rudolf wrote:
&gt; I am trying to draw SVG using the information in an XML using XSL. So
&gt; basiccally for this purpose inside a for loop i need to keep track of
&gt; the coordinates.
&gt; 
&gt; For instance something like this :
&gt; 
&gt; &lt;xsl:variable name=&quot;xcoord&quot; select=&quot;10&quot;/&gt;
&gt; &lt;xsl:variable name=&quot;ycoord&quot; select=&quot;10&quot;/&gt;
&gt; &lt;xsl:for-each ......&gt;
&gt;      &lt;draw rectangle at xcoord and ycoord/&gt;
&gt;      &lt;update value of xcoord and ycoord&gt;
&gt; &lt;/xsl:for-each&gt;
&gt; 
&gt; so i need to figure out a way to update a values of xcoord and ycoord.
&gt; I cannot use the position() function for this since the update depends
&gt; on a third variable 'height' which is constantly changing .. so new
&gt; ycoord = ycoord + height.

And where do you get the height from? Is that an element or attribute 
value in the XML input?
Also do you use XSLT 1.0 or 2.0? With 1.0 you could write a named, 
recursive template with some parameters, with 2.0 you could write a 
function.


-- 

	Martin Honnen --- MVP XML
	http://msmvps.com/blogs/martin_honnen/</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200909/msg1000302978.html</link>
</item><item>
<title>Re: Question regarding XSL - 9/16/2009 10:12:00 AM</title>
<description><![CDATA[<pre>height is an attribute in the xml

i am using XSLT2.0</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200909/msg1000303003.html</link>
</item><item>
<title>Re: Question regarding XSL - 9/15/2009 5:54:00 PM</title>
<description><![CDATA[<pre>I am trying to draw SVG using the information in an XML using XSL. So
basiccally for this purpose inside a for loop i need to keep track of
the coordinates.

For instance something like this :

&lt;xsl:variable name=&quot;xcoord&quot; select=&quot;10&quot;/&gt;
&lt;xsl:variable name=&quot;ycoord&quot; select=&quot;10&quot;/&gt;
&lt;xsl:for-each ......&gt;
     &lt;draw rectangle at xcoord and ycoord/&gt;
     &lt;update value of xcoord and ycoord&gt;
&lt;/xsl:for-each&gt;

so i need to figure out a way to update a values of xcoord and ycoord.
I cannot use the position() function for this since the update depends
on a third variable 'height' which is constantly changing .. so new
ycoord = ycoord + height.

Thanks</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200909/msg1000302952.html</link>
</item><item>
<title>Re: Question regarding XSL - 9/15/2009 12:15:00 PM</title>
<description><![CDATA[<pre>Rudolf wrote:
&gt; Hi, I am really new to XSL. I was wondering if it is possible in xsl
&gt; to reassign variables.

No, it is not possible.

XSLT is a declarative programming language, not a procedural one.

If you show us an XML input sample you have and the corresponding output 
you want to create with XSLT then we can suggest an XSLT way of 
achieving that.

-- 

	Martin Honnen --- MVP XML
	http://msmvps.com/blogs/martin_honnen/</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200909/msg1000302889.html</link>
</item><item>
<title>Question regarding XSL - 9/14/2009 3:21:00 PM</title>
<description><![CDATA[<pre>Hi, I am really new to XSL. I was wondering if it is possible in xsl
to reassign variables.

so for instance this piece of code does not work:

&lt;xsl:if test=&quot;$y &amp;lt;2&quot;&gt;
     &lt;xsl:variable name=&quot;x&quot; select=&quot;5&quot; /&gt;
&lt;/xsl:if&gt;

when i try and use x afterwards, it gives me the following error:
&quot;Error during XSLT transformation: An unknown error has occurred ()&quot;

The following code gives me an error as well:

&lt;xsl:variable name=&quot;height&quot;/&gt;
&lt;xsl:if test=&quot;$y &amp;lt;2&quot;&gt;
     &lt;xsl:variable name=&quot;x&quot; select=&quot;5&quot; /&gt;
&lt;/xsl:if&gt;


&quot;Error during XSLT transformation: Variable binding shadows variable
binding within the same template.&quot;

I am not sure how to achieve what i am trying to do.

any help is appreciated.</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200909/msg1000302862.html</link>
</item><item>
<title>Re: replace work-around for Xpath 1.0 - 9/14/2009 12:54:00 PM</title>
<description><![CDATA[<pre>Barnum wrote:

&gt; still struggling with XPath 1.0, now it's the replace function (only
&gt; in 2.0) I need.
&gt; Is there a work-around for that in 1.0?

Not in XPath 1.0. In XSLT 1.0 you can write a recursive, named template 
that implements the string replacement:
http://www.dpawson.co.uk/xsl/sect2/replace.html#d9701e43


-- 

	Martin Honnen --- MVP XML
	http://msmvps.com/blogs/martin_honnen/</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200909/msg1000302825.html</link>
</item><item>
<title>Re: replace work-around for Xpath 1.0 - 9/14/2009 4:23:00 AM</title>
<description><![CDATA[<pre>On 14 Sep, 12:54, Martin Honnen &lt;mahotr...@yahoo.de&gt; wrote:
&gt; Barnum wrote:
&gt; &gt; still struggling with XPath 1.0, now it's the replace function (only
&gt; &gt; in 2.0) I need.
&gt; &gt; Is there a work-around for that in 1.0?
&gt;
&gt; Not in XPath 1.0. In XSLT 1.0 you can write a recursive, named template
&gt; that implements the string replacement:http://www.dpawson.co.uk/xsl/sect2=
/replace.html#d9701e43
&gt;
&gt; --
&gt;
&gt; =A0 =A0 =A0 =A0 Martin Honnen --- MVP XML
&gt; =A0 =A0 =A0 =A0http://msmvps.com/blogs/martin_honnen/

Works fine, thanks!</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200909/msg1000302828.html</link>
</item><item>
<title>replace work-around for Xpath 1.0 - 9/14/2009 2:39:00 AM</title>
<description><![CDATA[<pre>Hi,

still struggling with XPath 1.0, now it's the replace function (only
in 2.0) I need.
Is there a work-around for that in 1.0?

Thanks!</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200909/msg1000302822.html</link>
</item><item>
<title>Re: missing something in for-each select - 9/11/2009 8:01:00 PM</title>
<description><![CDATA[<pre>I think the if is right Martin, the more I think about it. Thanks for 
helping me see the trees =)


&quot;Martin Honnen&quot; &lt;mahotrash@yahoo.de&gt; wrote in message 
news:ePd%233wsMKHA.504@TK2MSFTNGP06.phx.gbl...
&gt; Junkbox wrote:
&gt;
&gt;&gt; The xml is basically
&gt;&gt; &lt;result status=&quot;ok&quot;&gt;
&gt;&gt;     &lt;product&gt;
&gt;&gt;         &lt;nodes...&gt;
&gt;&gt;     &lt;/product&gt;
&gt;&gt;     &lt;product&gt;
&gt;&gt;         &lt;nodes...&gt;
&gt;&gt;     &lt;/product&gt;
&gt;&gt;     &lt;...&gt;
&gt;&gt; &lt;/result&gt;
&gt;&gt;
&gt;&gt; I'm trying to lay out the product data in a 3x3 grid format with...
&gt;&gt;
&gt;&gt; &lt;xsl:template match=&quot;result[@status='ok']&quot;&gt;
&gt;&gt; &lt;xsl:apply-templates/&gt;
&gt;&gt; &lt;/xsl:template&gt;
&gt;&gt;
&gt;&gt; &lt;xsl:template match=&quot;product&quot;&gt;
&gt;&gt; &lt;xsl:for-each select=&quot;.[position() mod 3 =1]&quot;&gt;
&gt;
&gt; That for-each does not make sense to me as the dot &quot;.&quot; selects only a 
&gt; single node. Maybe you simply want
&gt;     &lt;xsl:if test=&quot;position() mod 3 = 1&quot;&gt;
&gt; instead of the for-each.
&gt;
&gt; -- 
&gt;
&gt; Martin Honnen --- MVP XML
&gt; http://msmvps.com/blogs/martin_honnen/</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200909/msg1000302696.html</link>
</item><item>
<title>Re: missing something in for-each select - 9/11/2009 12:40:00 PM</title>
<description><![CDATA[<pre>Junkbox wrote:

&gt; The xml is basically
&gt; &lt;result status=&quot;ok&quot;&gt;
&gt;     &lt;product&gt;
&gt;         &lt;nodes...&gt;
&gt;     &lt;/product&gt;
&gt;     &lt;product&gt;
&gt;         &lt;nodes...&gt;
&gt;     &lt;/product&gt;
&gt;     &lt;...&gt;
&gt; &lt;/result&gt;
&gt; 
&gt; I'm trying to lay out the product data in a 3x3 grid format with...
&gt; 
&gt; &lt;xsl:template match=&quot;result[@status='ok']&quot;&gt;
&gt; &lt;xsl:apply-templates/&gt;
&gt; &lt;/xsl:template&gt;
&gt; 
&gt; &lt;xsl:template match=&quot;product&quot;&gt;
&gt; &lt;xsl:for-each select=&quot;.[position() mod 3 =1]&quot;&gt;

That for-each does not make sense to me as the dot &quot;.&quot; selects only a 
single node. Maybe you simply want
     &lt;xsl:if test=&quot;position() mod 3 = 1&quot;&gt;
instead of the for-each.

-- 

	Martin Honnen --- MVP XML
	http://msmvps.com/blogs/martin_honnen/</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200909/msg1000302649.html</link>
</item><item>
<title>Re: Writing your own functions in XSLT 1.0 - 9/11/2009 12:36:00 PM</title>
<description><![CDATA[<pre>Barnum wrote:

&gt; is it correct that I cannot write my own XSLT functions in XSLT 1.0?

Not in pure XSLT 1.0. Some XSLT processors support 
http://www.exslt.org/func/index.html.
But moving to XSLT 2.0 with Saxon 9 (http://saxon.sourceforge.net/) or 
AltovaXML tools (http://www.altova.com/altovaxml.html) seems a better 
decision these days with XSLT 2.0 being a standard since 2007.

&gt; I am using Microsoft's XSLT processor, but it can't help much. (It
&gt; does support using VB scripts, but I don't want that....).

Microsoft has three different XSLT 1.0 processors. There are the various 
MSXML versions (counting them as one processor version) which support 
writing extension functions in JScript or VBScript and there are two 
.NET XSLT processors, XslTransform and XslCompiledTransform, both of 
which support writing extension functions as .NET methods in .NET 
languages like C# or VB.NET.



-- 

	Martin Honnen --- MVP XML
	http://msmvps.com/blogs/martin_honnen/</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200909/msg1000302648.html</link>
</item><item>
<title>Re: missing something in for-each select - 9/11/2009 9:13:00 AM</title>
<description><![CDATA[<pre>On Fri, 11 Sep 2009 03:06:56 -0400, &quot;Junkbox&quot;
&lt;junkbox@foggyknockersrox.com&gt; wrote:

&gt;Hi,
&gt;
&gt;I'm trying to get a for-each clause to work for laying out result sets and 
&gt;I'm not really sure I understand why I can't get this to parse.
&gt;
&gt;The xml is basically
&gt;&lt;result status=&quot;ok&quot;&gt;
&gt;    &lt;product&gt;
&gt;        &lt;nodes...&gt;
&gt;    &lt;/product&gt;
&gt;    &lt;product&gt;
&gt;        &lt;nodes...&gt;
&gt;    &lt;/product&gt;
&gt;    &lt;...&gt;
&gt;&lt;/result&gt;
&gt;
&gt;I'm trying to lay out the product data in a 3x3 grid format with...
&gt;
&gt;&lt;xsl:template match=&quot;result[@status='ok']&quot;&gt;
&gt;&lt;xsl:apply-templates/&gt;
&gt;&lt;/xsl:template&gt;
&gt;
&gt;&lt;xsl:template match=&quot;product&quot;&gt;
&gt;&lt;xsl:for-each select=&quot;.[position() mod 3 =1]&quot;&gt;
&gt;&lt;...other stuff...&gt;
&gt;&lt;/xsl:for-each&gt;
&gt;&lt;/xsl:template&gt;
&gt;
&gt;I can get this working other ways, but I'd like to know if someone can tell 
&gt;me why the for-each statement is incorret?


I'm not sure what you mean by &quot;not working&quot; but you need mod 3 = 0 to
show rows split at multiples of 3 (0, 3, 6) and not 1 (1, 4, 7)

HTH
Cheers - Neil
------------------------------------------------
Digital Media MVP : 2004-2009
http://mvp.support.microsoft.com/mvpfaqs</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200909/msg1000302641.html</link>
</item><item>
<title>Re: Writing your own functions in XSLT 1.0 - 9/11/2009 3:43:00 AM</title>
<description><![CDATA[<pre>On 11 Sep, 12:36, Martin Honnen &lt;mahotr...@yahoo.de&gt; wrote:
&gt; Barnum wrote:
&gt; &gt; is it correct that I cannot write my own XSLT functions in XSLT 1.0?
&gt;
&gt; Not in pure XSLT 1.0. Some XSLT processors supporthttp://www.exslt.org/fu=
nc/index.html.
&gt; But moving to XSLT 2.0 with Saxon 9 (http://saxon.sourceforge.net/) or
&gt; AltovaXML tools (http://www.altova.com/altovaxml.html) seems a better
&gt; decision these days with XSLT 2.0 being a standard since 2007.
&gt;
&gt; &gt; I am using Microsoft's XSLT processor, but it can't help much. (It
&gt; &gt; does support using VB scripts, but I don't want that....).
&gt;
&gt; Microsoft has three different XSLT 1.0 processors. There are the various
&gt; MSXML versions (counting them as one processor version) which support
&gt; writing extension functions in JScript or VBScript and there are two
&gt; .NET XSLT processors, XslTransform and XslCompiledTransform, both of
&gt; which support writing extension functions as .NET methods in .NET
&gt; languages like C# or VB.NET.
&gt;
&gt; --
&gt;
&gt; =A0 =A0 =A0 =A0 Martin Honnen --- MVP XML
&gt; =A0 =A0 =A0 =A0http://msmvps.com/blogs/martin_honnen/

Good point, I could use extension functions on .NET. Unfortunately,
this must work on old &quot;C++ platform&quot; as well.
Thanks!</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200909/msg1000302650.html</link>
</item><item>
<title>missing something in for-each select - 9/11/2009 3:07:00 AM</title>
<description><![CDATA[<pre>Hi,

I'm trying to get a for-each clause to work for laying out result sets and 
I'm not really sure I understand why I can't get this to parse.

The xml is basically
&lt;result status=&quot;ok&quot;&gt;
    &lt;product&gt;
        &lt;nodes...&gt;
    &lt;/product&gt;
    &lt;product&gt;
        &lt;nodes...&gt;
    &lt;/product&gt;
    &lt;...&gt;
&lt;/result&gt;

I'm trying to lay out the product data in a 3x3 grid format with...

&lt;xsl:template match=&quot;result[@status='ok']&quot;&gt;
&lt;xsl:apply-templates/&gt;
&lt;/xsl:template&gt;

&lt;xsl:template match=&quot;product&quot;&gt;
&lt;xsl:for-each select=&quot;.[position() mod 3 =1]&quot;&gt;
&lt;...other stuff...&gt;
&lt;/xsl:for-each&gt;
&lt;/xsl:template&gt;

I can get this working other ways, but I'd like to know if someone can tell 
me why the for-each statement is incorret?

Thanks =)</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200909/msg1000302634.html</link>
</item><item>
<title>Writing your own functions in XSLT 1.0 - 9/11/2009 3:06:00 AM</title>
<description><![CDATA[<pre>Hi,

is it correct that I cannot write my own XSLT functions in XSLT 1.0?
I am using Microsoft's XSLT processor, but it can't help much. (It
does support using VB scripts, but I don't want that....).

Thanks for any insight!</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200909/msg1000302647.html</link>
</item><item>
<title>Re: Recursion within documentElement.transformNode ??? - 9/10/2009 1:01:00 PM</title>
<description><![CDATA[<pre>Jack Maclean wrote:

&gt; &lt;thread&gt;
&gt; 
&gt; 	&lt;threadentry id=&quot;1760434&quot; img=&quot;a.jpg&quot; text=&quot;Start New Thread&quot;&gt;
&gt; 
&gt; 
&gt; 		&lt;threadentry id=&quot;1760440&quot; img=&quot;a.jpg&quot; text=&quot;First Reply&quot;&gt;
&gt; 		&lt;/threadentry&gt;
&gt; 
&gt; 		&lt;threadentry id=&quot;1760445&quot; img=&quot;b.jpg&quot; text=&quot;Second Reply&quot;&gt;
&gt; 
&gt; 			&lt;threadentry id=&quot;1760440&quot; img=&quot;c.jpg&quot; text=&quot;Reply to the reply.&quot;&gt;
&gt; 			&lt;/threadentry&gt;
&gt; 
&gt; 		&lt;/treadentry&gt;
&gt; 
&gt; 	&lt;/threadentry&gt;
&gt; 
&gt; &lt;/thread&gt;

&gt; the simplest XSL that I can get to work looks like this. Its not doing
&gt; what I want, it just outputs the root elements, no child elements.
&gt; 
&gt; 
&gt; &lt;div xmlns:xsl=&quot;http://www.w3.org/TR/WD-xsl&quot;&gt;

XSLT 1.0 has been standardized in 1999 and the namespace of XSLT is 
http://www.w3.org/1999/XSL/Transform.
The namespace http://www.w3.org/TR/WD-xsl you are using is that of a 
predecessor of XSLT 1.0 that only old versions of MSXML (3.0 and 
earlier) support.
Unless you have legacy code I would strongly suggest not to use that 
namespace anymore but use XSLT 1.0.

As for your question, if you post the HTML output you want to generate 
for the XML input sample you have posted then we can help with an XSLT 
1.0 stylesheet.

-- 

	Martin Honnen --- MVP XML
	http://msmvps.com/blogs/martin_honnen/</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200909/msg1000302587.html</link>
</item><item>
<title>Recursion within documentElement.transformNode ??? - 9/9/2009 11:05:00 PM</title>
<description><![CDATA[<pre>Hello,

I'm kinda new to XSLT but not a beginner. I have a chunk of XML that
holds recursive data. Here's a simple sample:


&lt;thread&gt;

	&lt;threadentry id=&quot;1760434&quot; img=&quot;a.jpg&quot; text=&quot;Start New Thread&quot;&gt;


		&lt;threadentry id=&quot;1760440&quot; img=&quot;a.jpg&quot; text=&quot;First Reply&quot;&gt;
		&lt;/threadentry&gt;

		&lt;threadentry id=&quot;1760445&quot; img=&quot;b.jpg&quot; text=&quot;Second Reply&quot;&gt;

			&lt;threadentry id=&quot;1760440&quot; img=&quot;c.jpg&quot; text=&quot;Reply to the reply.&quot;&gt;
			&lt;/threadentry&gt;

		&lt;/treadentry&gt;

	&lt;/threadentry&gt;

&lt;/thread&gt;


I'm trying to use the documentElement.transform node method to convert
this using XSLT into DHTML.  I've been reading various articles on
recursion in XLST but they all use templates and when I try to use
templates per the samples IE complains. I just can't figure out how to
do this. Totally stuck.   Can anyone help?


--------------------

the JavaScript snippet:


	gXSL = new ActiveXObject(&quot;Microsoft.XMLDOM&quot;);
	gXSL.async=&quot;false&quot;;
	gXSL.load(&quot;threads.xsl&quot;);

	gThreadsXML = new ActiveXObject(&quot;Microsoft.XMLDOM&quot;);
	gThreadsXML.async = &quot;false&quot;;
	gThreadsXML.loadXML(gThreadsXMLStr);

	if (gThreadsXML.parseError.errorCode != 0) return;

	f_ThreadContainer.innerHTML =
gThreadsXML.documentElement.transformNode(gXSL.documentElement);



------------------------

the simplest XSL that I can get to work looks like this. Its not doing
what I want, it just outputs the root elements, no child elements.


&lt;div xmlns:xsl=&quot;http://www.w3.org/TR/WD-xsl&quot;&gt;

	&lt;TABLE BORDER=&quot;0&quot; CELLSPACING=&quot;0&quot; cellpadding=&quot;2&quot;&gt;

		&lt;xsl:for-each select=&quot;threadentry&quot;&gt;
			&lt;TR class=&quot;stateHeader&quot;&gt;
				&lt;TD&gt;
					&lt;xsl:value-of select=&quot;@id&quot;/&gt;
				&lt;/TD&gt;

				&lt;TD&gt;
					&lt;xsl:value-of select=&quot;@img&quot;/&gt;
				&lt;/TD&gt;

				&lt;TD&gt;
					&lt;xsl:value-of select=&quot;@text&quot;/&gt;
				&lt;/TD&gt;
			&lt;/TR&gt;

		&lt;/xsl:for-each&gt;

	&lt;/TABLE&gt;
&lt;/div&gt;</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200909/msg1000302574.html</link>
</item><item>
<title>Re: Any tools for XSL? - 9/9/2009 9:13:00 AM</title>
<description><![CDATA[<pre>Frank Peterson wrote:
&gt; Just curious if there are any programs for doing XSL, that make it
&gt; easier to parse through XML files and see what you get, rather than
&gt; modifying a file in a text editor and hitting refresh in your browser.

Just run the XSLT programatically, for instance from the command line 
(http://www.microsoft.com/downloads/details.aspx?FamilyID=2FB55371-C94E-4373-B0E9-DB4816552E41)

BR, Julian</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200909/msg1000302538.html</link>
</item><item>
<title>Re: Any tools for XSL? - 9/8/2009 4:12:00 PM</title>
<description><![CDATA[<pre>Frank Peterson wrote:
&gt; Just curious if there are any programs for doing XSL, that make it
&gt; easier to parse through XML files and see what you get, rather than
&gt; modifying a file in a text editor and hitting refresh in your browser.

Visual Studio 2005 and 2008 has support for running and debugging XSLT 
1.0 stylesheet with .NET's XslCompiledTransform.
And of course the &quot;big&quot; XML suites like Altova XML Spy, Stylus Studio or 
Oxygen allow you to run and debug stylesheets.

-- 

	Martin Honnen --- MVP XML
	http://msmvps.com/blogs/martin_honnen/</pre>]]></description>
<link>http://www.altova.com/list/microsoft.public.xsl/200909/msg1000302529.html</link>
</item>

</channel>
</rss>
