XML Editor
Sign up for a WebBoard account Sign Up Keyword Search Search More Options... Options
Chat Rooms Chat Help Help News News Log in to WebBoard Log in Not Logged in
Show tree view Topic
Topic Page 1 2 3 4 5 6 7 8 9 Go to previous topicPrev TopicGo to next topicNext Topic
Postnext
Alicia RobertsSubject: If field in DTD is blank
Author: Alicia Roberts
Date: 26 Apr 2004 03:26 PM
Originally Posted: 26 Apr 2004 03:11 PM
Hello, I'm working on a XML to XML Map. I'm having a problem checking to see if a field is blank. How do you check for blanks? For example, If VMSTA equals spaces, I want to hard code "01" to <SalesStatus>, else move VMSTA: <SalesStatus> <xsl:if test="VMSTA=/"> <xsl:value-of select="('01')"/> </xsl:if> <xsl:value-of select="."/> </SalesStatus> Alberto, told me to use : <xsl:if test="string-length(VMSTA)>0 and string-length(normalize-space(VMSTA))=0"> The map is still not putting out <SalesStatus>01</SalesStatus>. Can you help me?<br> Alicia_PLC

Postnext
Ivan PedruzziSubject: Re: If field in DTD is blank
Author: Ivan Pedruzzi
Date: 26 Apr 2004 03:50 PM
Alicia,
Trying someing like that

xsl:choose
xsl:when test="VMSTA and string-length(normalize-space(VMSTA))=0"
xsl:value-of select="('01')"/
/xsl:when
xsl:otherwise
xsl:value-of select="(VMSTA)"/
/ xsl:otherwise
/xsl:choose

If you are still in trouble send us the xslt + xml.

Ivan


"Alicia Roberts" wrote in message
news:7384.2645@...
> I'm working on a XML to XML Map.
> I'm having a problem checking to see if a
> field is blank. How do you check for blanks?
> For example, If VMSTA equals spaces, I want
> to hard code "01" to , else
> move VMSTA:
>
>
>
>
>

>
>

>
>
> Alberto, told me to use :
>
>
> The map is still not putting out
> 01.
>
> Can you help me?

>
> Alicia_PLC
>

Postnext
Ivan PedruzziSubject: RE: If field in DTD is blank
Author: Ivan Pedruzzi
Date: 27 Apr 2004 11:21 PM

Alicia,

What do you mean by blank?

1) The tag value is empty

<VMSTA></VMSTA>

Then the solution I gave you works as expected.

2) the tag is not present, then you need to change

<xsl:for-each select="VMSTA">
<SalesStatus>
<xsl:choose>
<xsl:when test=". and string-length(normalize-space(.))=0">
<xsl:value-of select="'01'"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="."/>
</xsl:otherwise>
</xsl:choose>
</SalesStatus>
</xsl:for-each>
<xsl:for-each select="LVORM">

To
<SalesStatus>
<xsl:choose>
<xsl:when test="VMSTA">
<xsl:value-of select="."/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="'01'"/>
</xsl:otherwise>
</xsl:choose>
</SalesStatus>


As I already told, you need to make some efforts to learn XSLT (not the
tool, the language)
If you have more question on Stylus Studio post them on the forum
http://www.stylusstudio.com/SSDN/default.asp

Good Luck
Ivan



> -----Original Message-----
> From: alicia.roberts@philips.com [mailto:alicia.roberts@philips.com]
> Sent: Tuesday, April 27, 2004 10:43 AM
> To: Ivan Pedruzzi
> Subject: RE: If field in DTD is blank
>
>
> Hi Ivan,
>
> Thanks for the information. Yes, it is my first time using this tool.
>
> I see how you structured the logic. However, I'm not getting "01"
when VMSTA is blank. It works
> when data is in VMSTA, but I also need "01" moved into SalesStatus
when VMSTA is blank.
>
> Do you think there is a problem with the software?
>
>
>
>
>
>
>
>
>
>
>
> "Ivan Pedruzzi" <ipedruzz@progress.com>
>
> 04/26/2004 04:42 PM
>
> To: Alicia Roberts/SOJ/LIGHTING/PHILIPS@PHILIPS
> cc:
> Subject: RE: If field in DTD is blank
>
> Classification:
>
>
>
>
>
> Alicia
>
> The XSLT was not well formed; I also made some changes to behave as
you
> expect.
> As you seem pretty new to XSLT it could be a good idea to do some
> practice before write a real transformation.
>
>
http://www.google.com/search?sourceid=navclient&ie=UTF-8&oe=UTF-8&q
=xslt
> +tutorial
>
> If you prefer paper book try
>
> XSLT: Programmer's Reference by Michael Kay
>
>
http://www.amazon.com/exec/obidos/tg/detail/-/0764543814/qid=1083011948
/
>
sr=8-1/ref=sr_8_xs_ap_i1_xgl14/104-0521378-1182323?v=glance&s=boo
ks&n=50
> 7846
>
>
> Ivan
>
>
> > -----Original Message-----
> > From: alicia.roberts@philips.com [mailto:alicia.roberts@philips.com]
> > Sent: Monday, April 26, 2004 4:14 PM
> > To: Ivan Pedruzzi
> > Subject: Re: If field in DTD is blank
> >
> >
> > Hi Ivan,
> >
> > I tried you logic. I'm getting expected end of tag on xsl.choose.
> >
> > Attached is the xsl and xml.
> >
> > Thanks.
> >
> >
> >
> >
> > Alicia Roberts
> > EDI Mapping Analyst
> > Philips Lighting Company
> > Tel: (732) 563-3689
> > e-mail: alicia.roberts@philips.com
> >
> >
> >
> >
> >
> >
> >
> >
> > "Ivan Pedruzzi" <ipedruzz@progress.com>
> >
> > 04/26/2004 03:50 PM
> >
> > To: Alicia Roberts/SOJ/LIGHTING/PHILIPS@PHILIPS
> > cc:
> > Subject: Re: If field in DTD is blank
> >
> > Classification:
> >
> >
> >
> >
> >
> > Alicia,
> > Trying someing like that
> >
> > xsl:choose
> > xsl:when test="VMSTA and
string-length(normalize-space(VMSTA))=0"
> > xsl:value-of select="('01')"/
> > /xsl:when
> > xsl:otherwise
> > xsl:value-of select="(VMSTA)"/
> > / xsl:otherwise
> > /xsl:choose
> >
> > If you are still in trouble send us the xslt + xml.
> >
> > Ivan
> >
> > "Alicia Roberts" <alicia.roberts@philips.com> wrote in message
> > news:7384.2645@ <news:7384.2645@> ...
> > > I'm working on a XML to XML Map.
> > > I'm having a problem checking to see if a
> > > field is blank. How do you check for blanks?
> > > For example, If VMSTA equals spaces, I want
> > > to hard code "01" to <SalesStatus>, else
> > > move VMSTA:
> > >
> > > <SalesStatus>
> > > <xsl:if test="VMSTA=/">
> > > <xsl:value-of select="('01')"/>
> > > </xsl:if>
> > > <xsl:value-of select="."/>
> > > </SalesStatus>
> > >
> > >
> > > Alberto, told me to use :
> > > <xsl:if test="string-length(VMSTA)>0 and
> > > string-length(normalize-space(VMSTA))=0">
> > >
> > > The map is still not putting out
> > > <SalesStatus>01</SalesStatus>.
> > >
> > > Can you help me?<br>
> > >
> > > Alicia_PLC
> > >
>
>
>

Posttop
Alicia RobertsSubject: RE: If field in DTD is blank
Author: Alicia Roberts
Date: 28 Apr 2004 10:02 AM
Thanks, Ivan!

It works.

 
Topic Page 1 2 3 4 5 6 7 8 9 Go to previous topicPrev TopicGo to next topicNext Topic
Download A Free Trial of Stylus Studio 6 XML Professional Edition Today! Powered by Stylus Studio, the world's leading XML IDE for XML, XSLT, XQuery, XML Schema, DTD, XPath, WSDL, XHTML, SQL/XML, and XML Mapping!  
go

Log In Options

Site Map | Privacy Policy | Terms of Use | Trademarks
Stylus Scoop XML Newsletter:
W3C Member
Stylus Studio® and DataDirect XQuery ™are from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2016 All Rights Reserved.