XML.orgXML.org
FOCUS AREAS |XML-DEV |XML.org DAILY NEWSLINK |REGISTRY |RESOURCES |ABOUT
OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]
RE: [xml-dev] xpath expression with fallback if no match is found

Hi Kay,

thank you for the quick help! I came up with:
<xsl:variable name="date" select="abc:def/date" />
<xsl:value-of select="if (boolean($date)) then $date else '0000-00-00'" />
the boolean() is not neccessary.

Im not sure which xpath version my saxon test program supports, since the transformation of your first suggestion failed with "expected ")".

I am heading now over to the mulberrytech list :-), thnks for the hint.

Sebastian





On Fri, 8 May 2009 08:22:13 +0100, "Michael Kay" <mike@saxonica.com> wrote:
> 
> In XSLT 2.0, use
> 
> <xsl:value-of select="(abc:def/date, '0000-00-00')[1]"/>
> 
> In 1.0, put the expression in a variable to avoid it being evaluated
> twice.
> 
> Note, XSLT questions are best asked on the xsl-list at mulberrytech.com
> 
> Michael Kay
> http://www.saxonica.com/
> 
>> -----Original Message-----
>> From: Sebastian Prehn [mailto:sebastian.prehn@planetswebdesign.de]
>> Sent: 08 May 2009 07:43
>> To: xml-dev@lists.xml.org
>> Subject: [xml-dev] xpath expression with fallback if no match is found
>>
>> Hi!
>>
>> I have this statement which selects a element in the input xml.
>> <xsl:value-of select="abc:def/optionalelement"/>
>>
>> The element is optional. So I am looking for a conditional
>> statement which selects the element if it exists and returns
>> the a default string otherwise.
>>
>> This snippet should work, but abc:def/optionalelement must be
>> evaluated twice. :-( (the actual xpath expression is more complicated)
>>
>> <xsl:choose>
>> 	<xsl:when test="abc:def/date">
>> 		<xsl:value-of select="abc:def/date"/>
>> 	</xsl:when>
>> 	<xsl:other>0000-00-00</xsl:other>
>> </xsl:choose>
>>
>> Any ideas?
>>
>> Regards,
>> Sebastian
>>
>>
>>
>> --
>> PLANETS-Webdesign - Web Applications
>> Sebastian Prehn
>> Adlerstr. 56, 70199 Stuttgart
>> www.planetswebdesign.de
>> PGP keyID: 0x3507AF63
>>
>>
>> ______________________________________________________________
>> _________
>>
>> XML-DEV is a publicly archived, unmoderated list hosted by
>> OASIS to support XML implementation and development. To
>> minimize spam in the archives, you must subscribe before posting.
>>
>> [Un]Subscribe/change address: http://www.oasis-open.org/mlmanage/
>> Or unsubscribe: xml-dev-unsubscribe@lists.xml.org
>> subscribe: xml-dev-subscribe@lists.xml.org List archive:
>> http://lists.xml.org/archives/xml-dev/
>> List Guidelines: http://www.oasis-open.org/maillists/guidelines.php
>>
--
PLANETS-Webdesign - Web Applications
Sebastian Prehn
Adlerstr. 56, 70199 Stuttgart
www.planetswebdesign.de
PGP keyID: 0x3507AF63



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]


News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 1993-2007 XML.org. This site is hosted by OASIS