[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

AW: [xsl] Is conditional group-by possible?


Subject: AW: [xsl] Is conditional group-by possible?
From: "Huditsch Roman" <Roman.Huditsch@xxxxxxxxxxxxx>
Date: Tue, 25 Jan 2005 17:03:01 +0100

As far as I can tell, you don't have any FED_ID_FLAG, FED_ID or SOC_SEC_ID
elements in your input document.
You missed the "PROV_" and "PROS_" part your element names....

HTH

wbr,
Roman

_______________________________________

Roman Huditsch
IT and Electronic Publishing
LexisNexis ARD Orac
Marxergasse 25
1030 Vienna
Austria
ph: +43-1-534 52-1514
f: +43-1-534 52-140
e-mail roman.huditsch@xxxxxxxxxxxxx
www.lexisnexis.at


> -----Urspr|ngliche Nachricht-----
> Von: Jim Neff [mailto:jneff@xxxxxxxxxxxxxxx]
> Gesendet: Dienstag, 25. Januar 2005 16:52
> An: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Betreff: [xsl] Is conditional group-by possible?
>
> Greetings,
>
> Is a conditional group-by possible?
>
> Here is what I tried:
>
> <xsl:for-each-group
>      select="Table"
>      group-by="(if ((FED_ID_FLAG = 'F')
>      and (not(FED_ID = '')))
>      then FED_ID
>      else SOC_SEC_ID)">
>
> And I get nothing in my output.
>
> My input looks like simliar to this :
>
> <NewDataSet>
>   <Table>
>     <PROV_SOC_SEC_ID>111104550</PROV_SOC_SEC_ID>
>     <PLOS_FED_ID_FLAG>S</PLOS_FED_ID_FLAG>
>     <PLOS_FED_ID>190404550</PLOS_FED_ID>
>     <PATIENT_LAST_NAME>Doe</PATIENT_LAST_NAME>
>     <PATIENT_FIRST_NAME>John</PATIENT_FIRST_NAME>
>   </Table>
>   <Table>
>     <PROV_SOC_SEC_ID>111104550</PROV_SOC_SEC_ID>
>     <PLOS_FED_ID_FLAG>S</PLOS_FED_ID_FLAG>
>     <PLOS_FED_ID>190404550</PLOS_FED_ID>
>     <PATIENT_LAST_NAME>Doe</PATIENT_LAST_NAME>
>     <PATIENT_FIRST_NAME>Jane</PATIENT_FIRST_NAME>
>   </Table>
>   <Table>
>     <PROV_SOC_SEC_ID>777104550</PROV_SOC_SEC_ID>
>     <PLOS_FED_ID_FLAG>F</PLOS_FED_ID_FLAG>
>     <PLOS_FED_ID>880121550</PLOS_FED_ID>
>     <PATIENT_LAST_NAME>Smith</PATIENT_LAST_NAME>
>     <PATIENT_FIRST_NAME>Mary</PATIENT_FIRST_NAME>
>   </Table>
> </NewDataSet>
>
> This should result in two groups, one 111104550, the other 880121550.
>
> What I want is to use the FED_ID element to group by if the
> FED_ID_FLAG = 'F' and FED_ID is an empty string.  Otherwise I
> want to use the SOC_SEC_ID element to group.
>
> Thanks in advance,
> Jim Neff


Current Thread