This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

RE: using xsl to check for duplicate elements


Does anyone know of some sort of memory leak in Xalan V2 on Solaris with JDK
1.3.1?  I'm running the XSL below on a file more than 16MB and I'm getting
the following error "XSLT Error (java.lang.OutOfMemory): null"

Thanks
Pankaj

-----Original Message-----
From: Jörg Heinicke [mailto:joerg.heinicke@gmx.de]
Sent: Tuesday, October 23, 2001 6:46 PM
To: xsl-list@lists.mulberrytech.com
Subject: Re: [xsl] using xsl to check for duplicate elements


One method is to test on preceding(-sibling) or following(-sibling) nodes:

<?xml version="1.0"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform";>
  <xsl:output indent="yes"/>

 <xsl:template match="Instruments|Equity">
  <xsl:copy>
   <xsl:apply-templates/>
  </xsl:copy>
 </xsl:template>

 <xsl:template match="*">
  <xsl:if test="not(preceding-sibling::*[name()=name(current()) and
text()=current()/text()])">
   <xsl:copy-of select="."/>
  </xsl:if>
 </xsl:template>
</xsl:stylesheet>

Another method is to use keys for grouping with Muenchian Method:
http://www.jenitennison.com/xslt/grouping/muenchian.xml.

Joerg

----- Original Message -----
From: "Pankaj Jain" <pjain@globeop.com>
To: "XSL List (E-mail)" <xsl-list@lists.mulberrytech.com>
Sent: Wednesday, October 24, 2001 12:19 AM
Subject: [xsl] using xsl to check for duplicate elements


> Hi all,
> Is there a way to check an XML file for duplicate elements and eliminate
the
> second one?  i.e. If I have the following XML:
>
>
> <?xml version="1.0" standalone="yes">
> <Instruments>
>     <Equity>
>         <ISSUE_ID>108558</ISSUE_ID>
>         <RIC>IBM.N</RIC>
>         <CTRY_ID>648</CTRY_ID>
>         <EXCH_ID>224</EXCH_ID>
>         <NAME>IBM</NAME>
>         <EXCH_ID>224</EXCH_ID>
>         <ISSUE_ID>108558</ISSUE_ID>
>         <CTRY_ID>648</CTRY_ID>
>     </Equity>
> </Instruments>
>
>
> What would I do in XSL to create a new XML file that looks like the
> following:
>
> <?xml version="1.0" standalone="yes">
> <Instruments>
>     <Equity>
>         <ISSUE_ID>108558</ISSUE_ID>
>         <RIC>IBM.N</RIC>
>         <CTRY_ID>648</CTRY_ID>
>         <EXCH_ID>224</EXCH_ID>
>         <NAME>IBM</NAME>
>     </Equity>
> </Instruments>
>
> Thanks
> Pankaj
>
> -----
> Pankaj Jain
>
>
> ----------------------------------------------------
> This email with all information contained herein or attached hereto may
> contain confidential and/or privileged information intended for the
> addressee(s) only.  If you have received this email in error, please
contact
> the sender and immediately delete this email in its entirety and any
> attachments thereto..
>
>
>
>  XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
>



 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


----------------------------------------------------
This email with all information contained herein or attached hereto may
contain confidential and/or privileged information intended for the
addressee(s) only.  If you have received this email in error, please contact
the sender and immediately delete this email in its entirety and any
attachments thereto..



 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]