Jarno(_dot_)Elovirta(_at_)nokia(_dot_)com wrote:
Hi,
I am stuck trying to determine how to create nested structures from my
transform for my xsl output.
Desired output example would be
<table><tr><td></td></tr><table><tr><td></td></tr></table></table>
Also is there a XPath method that can be employed to find a begining
elements closing tag structure when transforming a nested xml
input file?
XPath doesn't operate on tags, but rather on node tree.
Example:
Input xml file:
<TABLE><DPROW><OBJECT>2</OBJECT><OBJECT>4</OBJECT></DPROW><TAB
LE><DPROW><OBJECT>4</OBJECT></DRROW></TABLE></TABLE>
This transformation is so simple that I can only suggest that you take some time to
learn XPath and XSLT—if you have problems after that, show use the source XML,
the stylesheet so far, and the desired output.
Cheers,
Jarno - Feindflug: Glaubenskrieg
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Jarno,
thanks for your comments. I know XSLT quite well; but I am not very
strong with XPath. Any additional insight to solving my problem would be
greatly appreciated.
XML Input file to be parsed: <snippet>
<FORMATTED>
<title>Report1</title>
<TABLE BORDER="0" CELLSPACING="0" CELLPADDING="0"
OCCURENCE="1">
<DPROW>
<OBJECT ALIGN="left"
STYLE="background-color:#FFFFFF;" HEIGHT="10"/>
</DPROW>
</TABLE>
<TABLE BORDER="0" CELLSPACING="0" CELLPADDING="0"
WIDTH="842" OCCURENCE="2">
<DPROW>
<OBJECT ALIGN="left" WIDTH="3"/>
<OBJECT>
<TABLE WIDTH="100%" BORDER="0"
CELLSPACING="0" CELLPADDING="0" OCCURENCE="2">
<DPROW>
<OBJECT WIDTH="4" HEIGHT="6"/>
<OBJECT WIDTH="22" HEIGHT="6"/>
<OBJECT WIDTH="67" HEIGHT="6"/>
<OBJECT WIDTH="2" HEIGHT="6"/>
<OBJECT WIDTH="211" HEIGHT="6"/>
<OBJECT WIDTH="2" HEIGHT="6"/>
<OBJECT WIDTH="273" HEIGHT="6"/>
<OBJECT WIDTH="48" HEIGHT="6"/>
<OBJECT WIDTH="92" HEIGHT="6"/>
<OBJECT WIDTH="2" HEIGHT="6"/>
<OBJECT WIDTH="2" HEIGHT="6"/>
<OBJECT WIDTH="82" HEIGHT="6"/>
<OBJECT WIDTH="6" HEIGHT="6"/>
<OBJECT WIDTH="22" HEIGHT="6"/>
<OBJECT WIDTH="5" HEIGHT="6"/>
</DPROW>
<DPROW>
<OBJECT WIDTH="4"/>
<OBJECT WIDTH="22"/>
<OBJECT WIDTH="67" VALIGN="TOP">
<TABLE BORDER="0" WIDTH="66"
OCCURENCE="2">
<DPROW>
<OBJECT
STYLE="color:#000000;font-family:Arial;font-size:10pt;background-color:#FFFFFF;height:20px;font-weight:bold;">Agent
ID:</OBJECT>
</DPROW>
</TABLE>
</OBJECT>
<OBJECT WIDTH="2" COLSPAN="2"
VALIGN="TOP">
<TABLE BORDER="0" WIDTH="212"
OCCURENCE="2">
<DPROW>
<OBJECT
STYLE="color:#000000;font-family:Arial;font-size:12pt;background-color:#FFFFFF;height:20px;font-weight:bold;">100008</OBJECT>
</DPROW>
</TABLE>
</OBJECT>
<OBJECT WIDTH="2"/>
<OBJECT WIDTH="273"/>
<OBJECT WIDTH="48"/>
<OBJECT WIDTH="92"/>
<OBJECT WIDTH="2"/>
<OBJECT WIDTH="2" COLSPAN="2"
VALIGN="TOP">
<TABLE BORDER="0" WIDTH="84"
OCCURENCE="2">
<DPROW>
<OBJECT
STYLE="color:#000000;font-family:Arial;font-size:10pt;background-color:#FFFFFF;height:20px;font-weight:bold;">12/19/2003</OBJECT>
</DPROW>
</TABLE>
</OBJECT>
<OBJECT WIDTH="6"/>
<OBJECT WIDTH="22"/>
<OBJECT WIDTH="5"/>
<OBJECT HEIGHT="20"/>
</DPROW>
<DPROW>
<OBJECT WIDTH="4"/>
<OBJECT WIDTH="22" COLSPAN="3"
ROWSPAN="2" VALIGN="TOP">
<TABLE BORDER="0" WIDTH="90"
OCCURENCE="2">
<DPROW>
<OBJECT
STYLE="color:#000000;font-family:Arial;font-size:10pt;background-color:#FFFFFF;height:20px;font-weight:bold;">Agent
Name:</OBJECT>
</DPROW>
</TABLE>
</OBJECT>
Desired output is xhtml<-creating xhtml output I have no problem with.
The problem I am stuck on is given the above nested input file I need to
know when to transform the closing </TABLE> element to </table> in my
transformed output. Once I have completed that task I need to be able to
use the same logic for the DPROW and OBJECT structure.
- Scott
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list