This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re: pls help me on XML-XSLt Tag Display
- To: <xsl-list at lists dot mulberrytech dot com>
- Subject: Re: [xsl] pls help me on XML-XSLt Tag Display
- From: "Rafael R. Sevilla" <sevillar at team dot ph dot inter dot net>
- Date: Wed, 27 Jun 2001 17:47:31 +0800 (PHT)
- Reply-To: xsl-list at lists dot mulberrytech dot com
On Wed, 27 Jun 2001, Maricar Gold wrote:
> Hi,
>
> I am currently coding an XSLt to transform an XML
> document to another XML with different formatting.
>
> I cannot seem to know how to remove certain tags from
> displaying when there is no value. For example, if a
> values exist for ListofDescription from the source
> document, the output should display as:
>
So let me get this straight. You want to remove the empty tags, right?
>
> <ExampleTag>Example</ExampleTag>
> <ListofDescription>
> <DescInfo>
> <DescriptionID>Color</DescriptionID>
> <Description>Red</Description>
> </DescInfo>
> <DescInfo>
> <DescriptionID>Height</DescriptionID>
> <Description>57</Description>
> </DescInfo>
> </ListofDescription>
> <FinalTag>Final</FinalTag>
>
>
> (Element DescInfo can have 0 to n occurrences. These
> are retrieved by xsl:for-each loop or apply-template
> statement.
> Element ListofDescription can have 0 or 1 occurence,
> depending on the existence of DescInfo.)
>
>
> However, if no value exists for DescInfo from the
> source, then the <ListofDescription> tag should not
> appear at all:
>
>
> <ExampleTag>Example</ExampleTag>
> <FinalTag>Final</FinalTag>
>
>
>
> Is this possible? What syntax / logic should I use?
>
You could say something like this
<xsl:template match="ListofDescription">
<xsl:if test="child::DescInfo">
<ListOfDescription>
<xsl:apply-templates/>
</listOfDescription>
</xsl:if>
</xsl:template>
The test sees whether the <ListofDescription/> happens to have one of the
two valid children. Or else it does nothing at all.
--
Rafael R. Sevilla <sevillar@team.ph.inter.net> +63(2) 8177746 ext. 8311
Programmer, InterdotNet Philippines +63(917) 4458925
http://dido.engr.internet.org.ph/
-----BEGIN GEEK CODE BLOCK-----
Version: 3.12
GAT d- s:- a- C++++ UL+++ P+++ L+++ E++ W++ N+ o K- w---
O- M-- V- PS+ PE Y+ PGP++ t+ 5 X+ R tv+ b+++ DI++ D+
G e++ h! r++ y+
------END GEEK CODE BLOCK------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list