XML Editor
Sign up for a WebBoard account Sign Up Keyword Search Search More Options... Options
Chat Rooms Chat Help Help News News Log in to WebBoard Log in Not Logged in
Conferences Close Tree View
+ Stylus Studio Feature Requests (1192)
- Stylus Studio Technical Forum (14621)
-> + Delete rows in a MS SQL Server... (7)
-> - Attaching DB2 Database in File... (1)
-> + Can't debug xsl examples with ... (14)
-> - Best way to transform existing... (2)
-> ->Best way to transform exi...
-> + Exception in generated java co... (3)
-> + Java API for converting EDI X1... (2)
-> + XPath Query Editor slow perfor... (7)
-> + mapper schema problem (5)
-> + cursor issue in stylus studio ... (2)
-> + how to generate xslt code for ... (4)
-> + Web Service (12)
-> + Additional rule (2)
-> + Help needed: XMLSchema and unp... (9)
-> + Module settings for external X... (3)
-> + Finding Errors in the XML File (6)
-> + CSV 2 XML (2)
-> + Automatic Namespace when using... (2)
-> + Can't find 'Associate XML Sche... (3)
-> + Calling Stylus Studio API from... (2)
-> + EDI TO XML using the Stylus St... (4)
-- Previous [1441-1460] [1461-1480] [1481-1500] Next
+ Website Feedback (249)
+ XSLT Help and Discussion (7625)
+ XQuery Help and Discussion (2017)
+ Stylus Studio FAQs (159)
+ Stylus Studio Code Samples & Utilities (364)
+ Stylus Studio Announcements (113)
Topic  
Postnext
dave garciaSubject: Best way to transform existing excel XML spreadsheet?
Author: dave garcia
Date: 10 Sep 2007 12:57 AM
I have an existing excel XML spreadsheet I would like to transform with XSLT and during the transformation replacing existing values in cells and adding new rows to existing tables in worksheets. What is the best approach for doing this?

I found thus far I can do a deep copy as follows:

<xsl:template match="node()">
<xsl:copy>
<xsl:copy-of select="@*"/>
<xsl:apply-templates select="node()"/>
</xsl:copy>
</xsl:template>

And then am able to change the existing contents of a cell as follow:

<xsl:template match="ss:Cell[@ss:StyleID = 's22']/ss:Data">
<xsl:copy>
<xsl:copy-of select="@*"/>
<xsl:value-of select="$numValue"/>
</xsl:copy>
</xsl:template>

Which seems to work for one cell, however the source excel XML spreadsheet I am transforming is pretty complex with 6 worksheets, formulas, etc. and now I am thinking it may be hard to manipulate all the excel XML using this approach.. Maybe I should simply start with:

<xsl:template match="/">

and re-create the excel XML and during the process of it insert new values and rows by using Xpath to find the right places in the excel XML to do it in? Any sugggestions are appreciated.

TIA for your help,

ADG13

Posttop
Tony LavinioSubject: Best way to transform existing excel XML spreadsheet?
Author: Tony Lavinio
Date: 10 Sep 2007 03:45 PM
If you're looking for an opinion, I'd say the latter would give
you more control and would at least guarantee you get the structure
you're expecting.

Otherwise, it depends...

   
Download A Free Trial of Stylus Studio 6 XML Professional Edition Today! Powered by Stylus Studio, the world's leading XML IDE for XML, XSLT, XQuery, XML Schema, DTD, XPath, WSDL, XHTML, SQL/XML, and XML Mapping!  
go

Log In Options

Site Map | Privacy Policy | Terms of Use | Trademarks
Stylus Scoop XML Newsletter:
W3C Member
Stylus Studio® and DataDirect XQuery ™are from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2016 All Rights Reserved.