RE: [xsl] adding unique values to a drop-down list

Subject: RE: [xsl] adding unique values to a drop-down list
From: "Katie McNally" <kmcnally9@xxxxxxxxxxx>
Date: Tue, 04 Dec 2001 14:50:35 -0600
I have not been able to correctly fill the drop-down with brokers. The drop-down must contain the broker name/id combinations listed alphabetically with no duplicates.

The first time I followed your suggestion but the drop down did not contain any brokers. My for-each statement:

<xsl:for-each select="Loan[not(.=preceding-sibling::*) and string(BrokerSet/Broker/Name) and string(BrokerSet/Broker/Id)]">
<option value="{BrokerSet/Broker/Id}"><xsl:value-of select="BrokerSet/Broker/Name"/> - <xsl:value-of select="BrokerSet/Broker/Id"/></option>
</xsl:for-each>


I modified the for-each. The drop-down contained brokers, but they were not listed alphabetically, and duplicates were present. My for-each:

<xsl:for-each select="Loan/BrokerSet/Broker[not(.=preceding-sibling::*) and string(Name) and string(Id)]">
<option value="{Id}"><xsl:value-of select="Name"/> - <xsl:value-of select="Id"/></option>
</xsl:for-each>


I added sort statements. The drop-down contained brokers, listed alphabetically, but duplicates were present. My for-each:

<xsl:for-each select="Loan/BrokerSet/Broker[not(.=preceding-sibling::*) and string(Name) and string(Id)]">
<xsl:sort select="Name"/>
<xsl:sort select="Id"/>
<option value="{Id}"><xsl:value-of select="Name"/> - <xsl:value-of select="Id"/></option>
</xsl:for-each>


I cannot figure out how NOT to display duplicates. Any suggestions?

From: "kfricovsky" <kfricovsky@xxxxxxxxxxx>
Reply-To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
To: <xsl-list@xxxxxxxxxxxxxxxxxxxxxx>
Subject: RE: [xsl] adding unique values to a drop-down list
Date: Tue, 4 Dec 2001 12:18:19 -0500

This will work for you. I used <funds> as my root element.

<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform";>
	<xsl:output method="html"/>
	<xsl:template match="fund">
	<form action="">
		<select name="FOO">
		<xsl:for-each select="Loan[not(.=preceding-sibling::*)
and string(BrokerSet/Broker/Name) and string(BrokerSet/Broker/Name)]">
			<option
value="{BrokerSet/Broker/Id}"><xsl:value-of
select="BrokerSet/Broker/Name" /> - <xsl:value-of
select="BrokerSet/Broker/Id" /></option>
		</xsl:for-each>
		</select>
	</form>
	</xsl:template>
</xsl:stylesheet>

-Kevin Fricovsky


-----Original Message----- From: owner-xsl-list@xxxxxxxxxxxxxxxxxxxxxx [mailto:owner-xsl-list@xxxxxxxxxxxxxxxxxxxxxx] On Behalf Of Katie McNally Sent: Tuesday, December 04, 2001 11:45 AM To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx Subject: [xsl] adding unique values to a drop-down list


I have xml that contains loans and their data (which includes broker name and id).

I need to add a drop-down of brokers to my page.  Each selection in the
list
box needs to display "Broker Name - Broker Id" and the value of each
selection must be set to the Broker Id.  These selections must be listed

alphabetically, with only unique values displayed (no duplicates).

For example:

Example XML:

<Loan>
  <BrokerSet>
    <Broker>
      <Name>ABC Broker</Name>
      <Id>123456</Id>
    </Broker>
  </BrokerSet>
</Loan>
<Loan>
  <BrokerSet>
    <Broker>
      <Name>LMN Broker</Name>
      <Id>345678</Id>
    </Broker>
  </BrokerSet>
</Loan>
<Loan>
  <BrokerSet>
    <Broker>
      <Name/>
      <Id/>
    </Broker>
  </BrokerSet>
</Loan>
<Loan>
  <BrokerSet>
    <Broker>
      <Name>LMN Broker</Name>
      <Id>345678</Id>
    </Broker>
  </BrokerSet>
</Loan>
<Loan>
  <BrokerSet>
    <Broker>
      <Name>ABC Broker</Name>
      <Id>999999</Id>
    </Broker>
  </BrokerSet>
</Loan>

For the xml listed above, the list box should contain the following
values: All Brokers ABC Broker - 123456 ABC Broker - 999999 LMN Broker -
345678

How do I fill the list box with only unique selections which consist of
broker name/broker id combinations?
How do I handle loans that do not have broker name or id data?

Thanks,
Katie



_________________________________________________________________
Get your FREE download of MSN Explorer at
http://explorer.msn.com/intl.asp


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



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




_________________________________________________________________
Get your FREE download of MSN Explorer at http://explorer.msn.com/intl.asp


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



Current Thread