Subject: Re: [xsl] using the AND condition From: Joerg Heinicke <joerg.heinicke@xxxxxx> Date: Thu, 06 Jun 2002 00:03:22 +0200 |
<xsl:template match="ListOfInsClaimsContact"> <xsl:apply-templates select="InsClaimsContact"/> </xsl:template>
I need to search for elements that contain certain text and are part of a certain parent element. I need to search the whole document and find the specific parent element, that contains certain child elements with certain text. This information needs to be printed in order. For example: <ListOfInsClaimsContact> <InsClaimsContact Id="1-16HHT"> <BirthDate>04/08/2002 00:00:00</BirthDate> <CellularPhoneNumber>3418748901</CellularPhoneNumber> <ContactRole>Insured</ContactRole>> <PositionInVehicle>passnege of</PositionInVehicle> <RoleInAccident>Owner</RoleInAccident> </InsClaimsContact> <InsClaimsContact Id="2-16HHT"> <BirthDate>04/08/2002 00:00:00</BirthDate> <CellularPhoneNumber>3418748901</CellularPhoneNumber> <ContactRole>Witness</ContactRole>> <PositionInVehicle>passnege of</PositionInVehicle> <RoleInAccident>Driver</RoleInAccident> </InsClaimsContact> </ListOfInsClaimsContact>
Basically my logic needs to say, Find the <InsClaimsContact> element that contains a <RoleInAccident> element whose data is "Driver", AND a <ContactRole> element whose data is "Witness", then process this InsClaimsContact element. Next, find the <InsClaimsContact> element that contains a <RoleInAccident> element whose data is "Owner" AND a <ContactRole> element whose data is "Insured", then process this InsClaimsContact element. This continues for many possible combinations, and of course the xml content will not be in the order I need it to print in the report.
Also, this template below wont work....This will match on the first InsClaimsContact element and do the conditional logic, this wont "force" the printing of the order I specify.
<xsl:template match="//InsClaimsContact"> <xsl:if test="(RoleInAccident='Driver') and (ContactRole='Insured')"> this could be false for the first match of InsClaimsContact, and fall to next if. I need to force it to find these elements to print. FOUND FIRST MATCH; PRINT THIS InsClaimsContact elements information FIRST </xsl:if> <xsl:if test="(RoleInAccident='Owner') and (ContactRole='Witness')"> FOUND SECOND MATCH; PRINT THIS InsClaimsContact elements information SECOND </xsl:if> </xsl:template>
Mike
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] using the AND condition, CROFT, MICHAEL | Thread | RE: [xsl] using the AND condition, Avula, Raj |
Re: [xsl] Newbie Q: Style sheet for, Joerg Heinicke | Date | [xsl] xsltproc (was Re: XSL-List Di, Matt Gushee |
Month |