473,405 Members | 2,421 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,405 software developers and data experts.

xml transform using xslt

I have an xml file:

<?xml version="1.0" encoding="utf-8" ?>
<G2Registers
xmlns="http://tempuri.org/registers.xsd">
<register>
<name>Version Register</name>
<address>"00000000"</address>
<verilogname>"PPC_Version"</verilogname>
<bitfield>
<name>"Xilinx Part"</name>
<startbit>19</startbit>
<endbit>16</endbit>
</bitfield>
<bitfield>
<name>"Revision Number"</name>
<startbit>15</startbit>
<endbit>0</endbit>
</bitfield>
<type>"Status"</type>
</register>
</G2Registers>

The real file has lots of <register> elements, not just one.

The schema file "registers.xsd" was created by visual studio .net from the
xml file.

I read in an xml file and schema like so:

regDoc = New XmlDataDocument
Try
regDoc.DataSet.ReadXmlSchema(xsdFileName)
Catch e As Exception
Console.WriteLine("Exception: " & e.ToString())
End Try
regDoc.Load(xmlFileName)

At this point, everything is fine and my data lives in regDoc.DataSet.

Now I want to use an xsl Transform to create an html file with some of the
data. I use the following xslt file:

<?xml version="1.0" encoding="UTF-8" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="G2Registers">
<html>
<body>
<table border="1">
<xsl:apply-templates/>
</table>
</body>
</html>
</xsl:template>
<xsl:template match="register">
<tr>
<td><xsl:value-of select="name"/></td>
<td><xsl:value-of select="address"/></td>
</tr>
</xsl:template>
</xsl:stylesheet>

using the following code:

Private Sub write_html(ByVal xml_doc As XmlDocument, ByVal xls_doc As String, ByVal html_doc As String)
Dim tfm As New Xsl.XslTransform
Dim newDoc As New IO.StringWriter
Dim xpn As System.Xml.XPath.XPathNavigator
Dim root As XmlElement = xml_doc.DocumentElement

xpn = root.CreateNavigator()

tfm.Load("..\reg_to_html.xslt", Nothing)
Dim writer As XmlTextWriter = New XmlTextWriter("..\registers.htm", Nothing)
tfm.Transform(xpn, Nothing, writer, Nothing)
End Sub

However, the resulting file just contains a single line which is a
concatenation of all the elements and attributes from the xml file.

I have discovered that if I remove the namespace line:

xmlns="http://tempuri.org/registers.xsd"

from the source xml file, that the transform works properly and creates
the html file with tables and so on. But if I do this, then the DataSet
(regDoc.DataSet) contains no data. It does have the schema read in and the
tables defined in the schema exist, but they are empty.

Surely there is a way around this problem??

Thanks for taking the time to read a long post.

Terry Brown
Stickman Software
http://www.stickmansoftware.com

Nov 21 '05 #1
0 1252

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

5
by: KathyB | last post by:
If someone could just explain this to me...I just don't get it! I have an aspx page where I retrieve several session variables and use xmlDocument to transform xml file with xsl file into an...
8
by: Luther Miller | last post by:
I am using the XML tranform functionality in .NET to transform data in a DataSet into XMLSS using an XSLT file I have created. There are about 100 columns and only about 120 rows in the data...
3
by: Jason S | last post by:
Hello Group, I am just about tearing my hair out with this one and thought someone may have some insight. I have a transform that wasn't working so I grabbed the nearest debugger (xselerator)...
4
by: schneider | last post by:
Anyone know if there is a way to dynamicly create a Xslt template/s and use them as an xml transform with-out use files for the Xslt? All the methods I see use files. I want to create a Xslt...
3
by: Andy | last post by:
Hi all, I'm having a problem doing an Xslt transform in code. I've done it before, so I'm not really sure why its not working. The problem is that the result of the transform is an empty...
1
by: Danny Lesnik | last post by:
Hi i have my XML file c:\prd.xm <?xml-stylesheet type="text/xsl" href="prd.xsl"?><products><product><a>2</a><b>3</b></product><product><a>4</a><b>2</b></product></products This is my XSL file...
3
by: Peter Row | last post by:
Hi, I have 2 XML files and 1 XSLT file. The second XML file has the following declarative 1st line: <?xml version="1.0" encoding="UTF-8" standalone="yes"?> ....the 1st one (the one to be...
4
by: WStoreyII | last post by:
I wish to know how to set it up so that when an xml webservice is called that instead of displaying the xml in the browser it will render it with a xslt file the problem is i dont know how to do...
1
by: Steve | last post by:
Using VB.NET 2.0 I have a simple routine that attempts transforms an XmlDocument with an XSLT stylesheet into HTML. Under the old 1.1 framework with XslTransform, everything worked fine. Now...
12
by: das | last post by:
Hello all, I am using .NET XSLT to transform an XML into another XML file. All this is fine with small files, but when tested with big files (30MB) it is taking between 1hr-2hrs to just transform...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.