xsl-list
[Top] [All Lists]

RE: Output based on the existence of a particular piece of data in a list

2003-04-07 10:32:48

A simple if/else will work for you.

  <xsl:template match="/AC:validateAcctngCodeResponse">
                <xsl:choose>
                        <xsl:when test="AcctngCodeOut/Status='Error'">
                                <accountcheckreply>
                      <success>false</success>
                      <message type="error">
                         <code>1</code>
                         <description>
                                <xsl:value-of
select="AcctngCodeOut[Status='Error']/StatusText" />
                         </description>
                      </message>
                                </accountcheckreply>
                        </xsl:when>
                        <xsl:otherwise>
                                <accountcheckreply>
                                      <success>true</success>
                                </accountcheckreply>
                        </xsl:otherwise>
                </xsl:choose>
  </xsl:template>


Goodluck.


-----Original Message-----
From: Martin, Tripp [mailto:tripp(_dot_)martin(_at_)commerceone(_dot_)com]
Sent: Monday, April 07, 2003 8:39 AM
To: 'XSL-List(_at_)lists(_dot_)mulberrytech(_dot_)com'
Subject: [xsl] Output based on the existence of a particular piece of
data in a list


I've got the following incoming XML:

<AC:validateAcctngCodeResponse xmlns:AC="AcctngActivityWS">
  <UserId>U712345</UserId>
  <AcctngCodeOut>
        <Type>CC</Type>
        <Identifier>1234</Identifier>
        <Status>OK</Status>
        <StatusText>Document has no errors.</StatusText>
  </AcctngCodeOut>
  <AcctngCodeOut>
        <Type>P</Type>
        <Identifier>54321</Identifier>
        <Status>OK</Status>
        <StatusText>Document has no errors.</StatusText>
  </AcctngCodeOut>
  <AcctngCodeOut>
        <Type>O</Type>
        <Identifier>78960</Identifier>
        <Status>Error</Status>
        <StatusText>Order 78960 does not exist</StatusText>
  </AcctngCodeOut>
</AC:validateAcctngCodeResponse>

I need to make my output based on the existence of a <Status> tag with
"Error".  So, in the case above I want to have:
<accountcheckreply>
      <success>false</success>
      <message type="error">
         <code>1</code>
         <description>Order 78960 does not exist</description>
      </message>
</accountcheckreply>

Whereas if there were no errors in the incoming document, I would have
simply:
<accountcheckreply>
      <success>true</success>
</accountcheckreply>

I haven't been able to figure out what I need to use to make this happen.
Can anyone offer a suggestion of where to start?

Thanks,
Tripp

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



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



<Prev in Thread] Current Thread [Next in Thread>
  • RE: Output based on the existence of a particular piece of data in a list, Avula, Raj <=