Subject: Re: [xsl] How to loop over duplicate nodes to output it only once From: Joerg Heinicke <joerg.heinicke@xxxxxx> Date: Thu, 23 May 2002 22:26:38 +0200 |
Hi, I have the following code and XML fragment. How can I achieve to output only once of duplicate nodes? Thanks.
Cihan
XSL code --------- <xsl:key name="course" match="course" use="LOCAL_CRSE_CD"/>
<xsl:template match="courses"> <courses> <xsl:for-each select="course[generate-id()= generate-id(key('course',LOCAL_CRSE_CD)[1])]"> <xsl:element name="course" use-attribute-sets="course1"> <coursetypes> <xsl:for-each select="key('course',LOCAL_CRSE_CD)"> <xsl:for-each select="CRSE_SITE_CD"> <xsl:if test="(self::CRSE_SITE_CD)"> <coursetypeid> <xsl:value-of select="."/> </coursetypeid> </xsl:for-each> </xsl:for-each> </coursetypes> </xsl:element> </xsl:for-each> </courses> </xsl:template
current output: -------------------- <courses> <course> <LOCAL_CRSE_CD>CTD-ECPM</LOCAL_CRSE_CD> <coursetypes> <coursetypeid>U</coursetypeid> <coursetypeid>U</coursetypeid> </coursetypes> <course>
desired output: -------------------- <courses> <course> <LOCAL_CRSE_CD>CTD-ECPM</LOCAL_CRSE_CD> <coursetypes> <coursetypeid>U</coursetypeid> </coursetypes> <course> ... ...
</courses>
XML --------------------- <courses> <course num="806"> <LOCAL_CRSE_CD>CTD-ECPM</LOCAL_CRSE_CD> <CRSE_SITE_CD>U</CRSE_SITE_CD> </course> <course num="2499"> <LOCAL_CRSE_CD>CTD-ECPM</LOCAL_CRSE_CD> <CRSE_SITE_CD>U</CRSE_SITE_CD> </course> <course num="1145"> <LOCAL_CRSE_CD>CTD-EQD</LOCAL_CRSE_CD> <CRSE_SITE_CD>U</CRSE_SITE_CD> </course> <course num="1146"> <LOCAL_CRSE_CD>CTD-EQD</LOCAL_CRSE_CD> <CRSE_SITE_CD>U</CRSE_SITE_CD> </course> <course num="2405"> <LOCAL_CRSE_CD>DFSSMS100</LOCAL_CRSE_CD> <CRSE_SITE_CD>U</CRSE_SITE_CD> </course> <course num="2406"> <LOCAL_CRSE_CD>DFSSMS100</LOCAL_CRSE_CD> <CRSE_SITE_CD>U</CRSE_SITE_CD> </course> .... </courses>
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] How to loop over duplicate no, Uslu, Cihan Y (MED) | Thread | [xsl] [ANN] MarrowSoft Xselerator 2, Trace Wilson |
Re: [xsl] How to remove double elem, Joerg Heinicke | Date | Re: [xsl] xsl and <Div> tags - urge, Aparna Konduri |
Month |