XSLT code doesn't seem to work!!

Please support our XML, XSLT and XPATH advertiser: Intel Parallel Studio Home
Reply

Join Date: Apr 2005
Posts: 1
Reputation: krishnakr is an unknown quantity at this point 
Solved Threads: 0
krishnakr krishnakr is offline Offline
Newbie Poster

XSLT code doesn't seem to work!!

 
0
  #1
Apr 6th, 2005
I am new to XML/XSLT and have taken a fascination to XSLT.
Please take a look at the following and let me know.
==========================================================
<?xml version="1.0"?>
<FAMILY>
<PERSON name="Freddy"/>
<PERSON name="Maartje"/>
<PERSON name="Gerard"/>
<PERSON name="Peter"/>
<PET name="Bonzo" type="dog"/>
<PET name="Arnie" type="cat"/>
</FAMILY>

This file is saved as family.xml
==========================================================
<?xml version="1.0" ?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/xsl/transform" version="1.0">
<xsl:template match="/">
<root_node>
<xsl:apply-templates/>
</root_node>
</xsl:template>

<xsl:template match="*">
<result_node>
<xsl:apply-templates/>
</result_node>
</xsl:template>
</xsl:stylesheet>

This file is saved as test.xsl
==========================================================
Dim oDoc As DOMDocument
Dim oXSLT As DOMDocument
Dim sResult As String
Dim sPath As String

Set oDoc = New DOMDocument
Set oXSLT = New DOMDocument

oDoc.async = False
oXSLT.async = False

oDoc.Load txtSource.Text
oXSLT.Load txtTransformer.Text

sResult = oDoc.transformNode(oXSLT)

Set fso = New Scripting.FileSystemObject
sPath = fso.BuildPath("C:\VB\XML\", "Dest.xml")
fso.CreateTextFile sPath
Set ts = fso.OpenTextFile(sPath, ForWriting)
ts.Write sResult
ts.Close

Set ts = Nothing
Set fso = Nothing
Set oDoc = Nothing
Set oXSLT = Nothing

In my VB IDE the project references MSXML v4.0
This code should be very self-explanatory.
==============================================================
My problem:
The code generates the result file, but is a copy of the xsl file minus the xml PI.

It is supposed to generate the following:
<root_node>
<result_node>
<result_node/>
<result_node/>
<result_node/>
<result_node/>
<result_node/>
<result_node/>
</result_node>
</root_node>

What am I doing wrong?
Reply With Quote Quick reply to this message  
Join Date: May 2005
Posts: 182
Reputation: alpha_foobar is an unknown quantity at this point 
Solved Threads: 3
alpha_foobar's Avatar
alpha_foobar alpha_foobar is offline Offline
Junior Poster

Re: XSLT code doesn't seem to work!!

 
0
  #2
May 5th, 2005
Hi I did a minor change to your xsl and i think i got the result you are after:

XML, XSLT and XPATH Syntax (Toggle Plain Text)
  1. <?xml version="1.0" ?>
  2. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  3. <xsl:template match="/">
  4. <root_node>
  5. <xsl:apply-templates select="*" mode="result_nodes"/>
  6. </root_node>
  7. </xsl:template>
  8.  
  9. <xsl:template match="*" mode="result_nodes">
  10. <result_node>
  11. <xsl:apply-templates select="*" mode="result_nodes"/>
  12. </result_node>
  13. </xsl:template>
  14. </xsl:stylesheet>
Reply With Quote Quick reply to this message  
Reply

This thread is more than three months old.
Perhaps start a new thread instead?
Message:



Similar Threads
Other Threads in the XML, XSLT and XPATH Forum
Thread Tools Search this Thread



About Us | Contact Us | Advertise | DaniWeb | Acceptable Use Policy | RSS Feed

©2003 - 2009 DaniWeb® LLC