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)
-> + 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)
-> + How to substitute element or t... (2)
-> + Xalan support in x16? (2)
-> + The context item for axis step... (5)
-> - ASP to XSL (1)
-> + xsl report, with xml feed, SVG... (7)
-> + XSLT code to transform CSV typ... (2)
-> + Make xstl file working in brow... (4)
-> + identity template, result-docu... (6)
-> - identity template and xsl:resu... (1)
-> + java.lang.RuntimeException: Er... (5)
-> + How to check matching parenthe... (2)
-> - Error only on using xalan:eval... (1)
-> + XSLT not displaying SOAP respo... (2)
-> + How do i delete the node from ... (2)
-> + How to break xslt lines to mak... (4)
-> - Marge node using attribute val... (1)
-> - Replce utf to unicode using xs... (1)
-> - getting different instances of... (1)
-> + XML to Flat (4)
-> + non breaking space   in e... (2)
-> - How can i attach a empty names... (1)
-> + Cannot find a matching 1-argum... (7)
-> - get value from different docum... (1)
-> + How can I change the XML heade... (2)
-> + Stylus Studio and Datapower (9)
-> + Generate XML form a XSD (2)
-> + There is no way to run xslt tr... (3)
-> + XML-Source NS is copied into t... (3)
-> + new guy attempting xslt (2)
-> + XML 2011 question (7)
-> + Manipulating XML with external... (2)
-> + removing duplicates from xml w... (8)
-> + Wnat to use presence of tag t... (2)
-> + modifing Andrew Welch's csv 2 ... (5)
-> + Can't use (or see) XSLT or WYS... (3)
-> + Delete the xsi:nil attribute ... (2)
-> + FOTY0012: Cannot get the typed... (20)
-> + XSLT Mapper - Two way xslt map... (2)
-> + EDI (5)
-> + XSL Test for lack of XML eleme... (4)
-> + Trouble Calling a java functio... (4)
-> + How to generate EDI 997 (2)
-> + followup on tokenize with /r (5)
-> + tokenize a string with \r (4)
-> + How to convert XML to XLS file... (2)
-> - How to convert XML to XLS file... (1)
-> + how to pass value to xsl for t... (3)
-> + entity expansion liimit exceed... (4)
-> + Creating XSLT Stylesheet (2)
-> + Create XSLT from XSD (2)
-> + How to remove nodes from xml b... (4)
-> + Highlighting text in XSL file (4)
-> - XSLT to Excel, predefine cell ... (1)
-> + CSaxon8Driver issue...time out (2)
-> + Is it possible to generate a X... (2)
-> + Is there any tool which genera... (2)
-> + xslt to html producing double ... (2)
-> - ADD 2 XML 2 Generate Single XM... (1)
-> + converting XML1 to XML2 struct... (2)
-> + How to remove the name space i... (2)
-> + Dump Payload into String (4)
-> + Converting Global EDIFACT into... (2)
-> + Auto mapping of XSLT? (3)
-> + Numbering a list broken into m... (3)
-> + help in xsl:analyze-string (2)
-> + Use XSLT with SOAP (2)
-> + Order of Processing Child Elem... (2)
-> + XSL finding a node based on va... (2)
-> + grouping a group? (11)
-> + Query on Looping (5)
-> + java.lang.Assertionerror_: Slo... (7)
-> + CONVERT SQL Server data to XML... (11)
-> + Error using "xsltproc" command... (3)
-> + XML refresh via web broswer (3)
-> + XSL-mapping usage for csv file... (4)
-> + form controls with xslt (2)
-> + Stylus Studio 2011 XML Enterpr... (2)
-> + Looping through Itema and gett... (2)
-> + Image src through System Varia... (3)
-> + XSL-mapping usage for csv file... (3)
-> + How to achieve UTF-8 encoding ... (2)
-> + sorting Using JavaScript (6)
-> + Display values from .xml horiz... (5)
-> + query on xslt for-each (3)
-> + query on xslt for-each (2)
-> + issue for First occurance (2)
-> + XSL: Mapping 2 XSD to 1 XSD (2)
-> + xslt mapper looses linkage fro... (2)
-> - How to Modify only few nodes a... (1)
-> + XSLT autocomplete function (2)
-> + i need to display dynamic list... (2)
-> + How to group when source has m... (11)
-> - Using EXCEL to create XSLT for... (1)
-> + Mapper generating XSLT, popula... (2)
-> + multiple columns (2)
-- [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
Brian ClementsSubject: Ignore Duplicate
Author: Brian Clements
Date: 04 Apr 2006 12:41 AM
I am currently trying to create a table of date which will display in an HTML page. It contains 4 columns. As rows are added I would like to display a blank table cell for information duplicated from previous row. I have included my XML Document, XSLT Stylesheet, current results, and result I am looking for.

I would appreciate any help you could give me!

Brian

Here is the XML Document:

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="ignoredup.xslt"?>
<results>
<details>
<detail>
<ACDealerID>111111</ACDealerID>
<DealershipName>Dealership 1</DealershipName>
<Status>Pending</Status>
<Comments>This is a test</Comments>
</detail>
<detail>
<ACDealerID>111111</ACDealerID>
<DealershipName>Dealership 1</DealershipName>
<Status>Pending</Status>
<Comments>This is a test 2</Comments>
</detail>
<detail>
<ACDealerID>222222</ACDealerID>
<DealershipName>Dealership 2</DealershipName>
<Status>Pending</Status>
<Comments>This is a test</Comments>
</detail>
<detail>
<ACDealerID>222222</ACDealerID>
<DealershipName>Dealership 2</DealershipName>
<Status>Pending</Status><Subject></Subject>
<Comments>This is a test2</Comments>
</detail>
<detail>
<ACDealerID>222222</ACDealerID>
<DealershipName>Dealership 2</DealershipName>
<Status>Opened</Status>
<Comments>This is a test</Comments>
</detail>
</details>
</results>


Here is the XSLT document:

<?xml version="1.0" encoding="ISO-8859-1"?>
<html xsl:version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns="http://www.w3.org/1999/xhtml">
<body class="body">
<table>
<xsl:for-each select="results/details">
<tr>
<td>
<table width="100%" cellspacing="1"
cellpadding="5" border="0"
bgcolor="#2C5376">
<tr>
<td class="charthead"
bgcolor="#2C5376">
<font color='white'>
<b>AC Dealer ID</b>
</font>
</td>
<td class="charthead"
bgcolor="#2C5376">
<font color='white'>
<b>Dealership Name</b>
</font>
</td>
<td class="charthead"
bgcolor="#2C5376">
<font color='white'>
<b>Status</b>
</font>
</td>
<td class="charthead"
bgcolor="#2C5376">
<font color='white'>
<b>Comments</b>
</font>
</td>
</tr>
<xsl:for-each select="detail">
<tr>
<td class="chart"
bgcolor="#f0f0f0">
<xsl:value-of
select="ACDealerID"/>
</td>
<td class="chart"
bgcolor="#f0f0f0">
<xsl:value-of
select="DealershipName"/>
</td>
<td class="chart"
bgcolor="#f0f0f0">
<xsl:value-of
select="Status"/>
</td>
<td class="chart"
bgcolor="#f0f0f0">
<xsl:value-of
select="Comments"/>
</td>
</tr>
</xsl:for-each>
</table>
</td>
</tr>
</xsl:for-each>
</table>
</body>
</html>


Here are my current results: (I typed in instead of displaying actual html)

AC Dealer ID Dealership Name Status Comments
------------ --------------- ------- -----------------
111111 Dealership 1 Pending This is a test
111111 Dealership 1 Pending This is a test 2
222222 Dealership 2 Pending This is a test
222222 Dealership 2 Pending This is a test 2
222222 Dealership 2 Opened This is a test 3

Here is the result I am looking for: (I typed in instead of displaying actual html)

AC Dealer ID Dealership Name Status Comments
------------ --------------- ------- -----------------
111111 Dealership 1 Pending This is a test
This is a test 2
222222 Dealership 2 Pending This is a test
This is a test 2
Opened This is a test 3



Postnext
Ivan PedruzziSubject: Ignore Duplicate
Author: Ivan Pedruzzi
Date: 04 Apr 2006 01:50 AM

You have to use xsl:key to remove duplicates


Hope this helps
Ivan Pedruzzi
Stylus Studio Team


DocumentACDealer.xsl

Postnext
Brian ClementsSubject: Ignore Duplicate
Author: Brian Clements
Date: 04 Apr 2006 11:33 AM
This solution reduced the number of rows returned from 5 to 2. For my situation this will not work. I need it to return 5 rows of data. Basically, we need to display an empty column for each duplicate entry. For instance, the first 2 rows are for AC Dealer ID 111111. We need to display 2 rows. The first row will have all the columns filled out. The second row will display with a blank in all the columns which match the previous row. So the second row should contain each element AC Dealer ID, Dealership Name, and Status as blanks and the Comments should have a value.

I really appreciate your help!

Thanks,
Brian

Posttop
Ivan PedruzziSubject: Ignore Duplicate
Author: Ivan Pedruzzi
Date: 04 Apr 2006 11:07 PM
I hoped that the sample I posted was a good starting point to understand how the key function works.

It is your responsabilty to learn XSLT, exploit it.

Attached you can find a new revision.

Ivan Pedruzzi
Stylus Studio Team


UnknownACDealer(1).xsl

   
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.