This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

RE: Supress


> A really newbie question but I want to supress a section only
> if all the
> elements are empty.
>
> For example if the xml looks like below :-
> <Contents>
> <FirstSection>
>   <Content1>Data<Content1>
>   <Content2>Data<Content2>
>   <Content3>Data<Content3>
> </FirstSection>
>
> <SecondSection>
>   <Content1>  <Content1>
>   <Content2>  <Content2>
>   <Content3>  <Content3>
> </SecondSection>
> </Contents>
> Since all the elements in <SecondSection> is empty I want to
> supress this
> from the display page but if the <Contenti> elements are not
> empty then it
> needs to be displayed.  Any elegant way of doing this in XSL?

Firstly, your Content1 elements are not empty, they contain whitespace text
nodes. If you want to treat them as empty, the simplest way is to strip the
whitespace by writing

<xsl:strip-space elements="*"/>

After that, you can simply test <xsl:if test="SectionSection=''"> which will
be true only if the element contains no (unstripped) text nodes, at any
depth.

Mike Kay
Software AG


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]