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)
+ Website Feedback (249)
- XSLT Help and Discussion (7625)
-> + Use of before and after string (3) Sticky Topic
-> - How do I substitute element ty... (1)
-> + How does one add working days ... (4)
-> - Help, I have existing XLT and... (1)
-> + Need help on XSLT issue - (2)
-> + EDI to XML Conversion (7)
-> - XML To JSON Conversion using X... (1)
-> + Formatting Paragraphs to same ... (2)
-> - Grouping of records (1)
-> + Problems with xsd 1.1 (4)
-> + XML to HL7 mapping (3)
-> + XSLT 3 and Iterate (2)
-> + XSL-FO to PDF preview (3)
-> + java.lang.RuntimeException: Er... (2)
-> + Create Acroforms with Stylus X... (2)
-> + How to change XSLT parameter s... (3)
-> + how to change format of the da... (2)
-> + Search "Next 8 Results " doesn... (2)
-> - Support for Git (1)
-> + newbee (8)
-- [1-20] [21-40] [41-60] Next
+ XQuery Help and Discussion (2017)
+ Stylus Studio FAQs (159)
+ Stylus Studio Code Samples & Utilities (364)
+ Stylus Studio Announcements (113)
Topic  
Postnext
Raymond SzaszSubject: XSL Converting SQL CASE Elements
Author: Raymond Szasz
Date: 19 Apr 2005 08:04 PM
I have an XSLT stylesheet (INTIN CONV.xsl) that converts a CASE statement into the correct element name: SHIP_CODE. The issue is I now have three other CASE statements that need element nameS as well. How can I distinguish each of the CASE elements and apply the correct element names. The XML file is also attached
SEABOURN ITININFO_DATASAMPLE.xml)

CASE (1) SHIP_CODE (this one is OK)
CASE (2) SAIL_DAY
CASE (3) ARRIVAL_TIME
CASE (4) DEPARTURE_TIME

Regards,
Ray Szasz


DocumentITINCONV.xsl
XSLT Stylesheet

DocumentSEABOURNITININFO_DATASAMPLE.XML
XML file with CASE elements

Postnext
(Deleted User) Subject: XSL Converting SQL CASE Elements
Author: (Deleted User)
Date: 19 Apr 2005 09:18 PM
in template matchs row element, you need to pick the first CASE and other non-case element as the xpath for apply-templates

xsl:template match="row">
<SAILING>
<xsl:apply-templates select="CASE[1] | *[name() != 'CASE']"/>
</SAILING>
</xsl:template>

Postnext
Raymond SzaszSubject: XSL Converting SQL CASE Elements
Author: Raymond Szasz
Date: 20 Apr 2005 11:49 AM
Song,

Thanks for your reply. I should have mentioned that I am new to XML. I have tried to use the statement you provided, but I cannot get my CASE elements to change.

Can you insert your example into my stylesheet and let me know how I should increment the multiple CASE statements to change the element names.

The first CASE statement in my stylesheet works, but I end up with SHIPC_CODE on all of the remaining CASE elements as well. I just wanted to clarify my issue.

Thanks,
Ray Szasz

Postnext
(Deleted User) Subject: XSL Converting SQL CASE Elements
Author: (Deleted User)
Date: 20 Apr 2005 01:21 PM
I thought you were going to ignore the last three cases.

you can try the following stylesheet to convert each CASE node:

<?xml version='1.0' encoding='utf-8'?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html"/>

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

<xsl:template match="CASE[1]">
<SHIP_CODE>
<xsl:apply-templates/>
</SHIP_CODE>
</xsl:template>
<xsl:template match="CASE[2]">
<SAIL_DAY>
<xsl:apply-templates/>
</SAIL_DAY>
</xsl:template>
<xsl:template match="CASE[3]">
<ARRIVAL_TIME>
<xsl:apply-templates/>
</ARRIVAL_TIME>
</xsl:template>

<xsl:template match="CASE[4]">
<DEPARTURE_TIME>
<xsl:apply-templates/>
</DEPARTURE_TIME>
</xsl:template>

<xsl:template match="root">
<ITININFO_DATA>
<xsl:apply-templates/>
</ITININFO_DATA>
</xsl:template>

<xsl:template match="row">
<SAILING>
<xsl:apply-templates/>
</SAILING>
</xsl:template>

<xsl:template match="*">
<xsl:element name="{name(.)}">
<xsl:apply-templates/>
</xsl:element>
</xsl:template>

</xsl:stylesheet>

Posttop
Raymond SzaszSubject: XSL Converting SQL CASE Elements
Author: Raymond Szasz
Date: 20 Apr 2005 03:17 PM
Song,

The stylesheet worked perfectly and I appreciate your assistance. I have a lot to learn about XSLT.

Thanks Again!
Ray Szasz

   
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.