Subject: [xsl] Algorithm akin to namespace fixup for xslt? From: "Alan Painter alan.painter@xxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> Date: Fri, 6 Feb 2015 08:43:37 -0000 |
Dear xslt community members, I'm wondering if there isn't a known, public algorithm ), ideally in XSLT itself, for doing something akin to "namespace fixup". Given a deep tree of nodes, each element node within a namespace. A child node inherits its parent namespace unless it specifically overrides it. Is there an algorithm for choosing the "best" or perhaps "sparsest" set of overriding namespace declarations, hence taking the most advantage of inheritance. My application of this algorithm isn't for namespaces but seems very similar in requirement. Thanks for any pointers or suggestions On Feb 5, 2015 8:31 PM, "Mailing Lists Mail daktapaal@xxxxxxxxx" < xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: <xsl:variable name="foo" select = "xxx"/> <xsl:variable name="bar" select= "yyy"/> <xsl:variable name="foo1"/> <xsl:variable name="bar1" select= "'world'"/> <xsl:value-of select="($foo,$bar)[1]"/> <!--first--> <xsl:value-of select="(string($foo1),$bar1)[1]"/><!--Second--> First worked but second did not work I was expecting "World" to be output to the result .. On Thu, Feb 5, 2015 at 1:36 PM, Michael Kay mike@xxxxxxxxxxxx <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: > If $a and $b have cardinality zero-or-one then ($a, $b)[1] does what you want (and is a common programming idiom). > > But be careful, it doesn't work if either $a or $b can contain more than one item. > > Also, it tests whether $a exists, which isn't the same as your example of testing the effective boolean value of string(@a). > > Michael Kay > Saxonica > mike@xxxxxxxxxxxx > +44 (0) 118 946 5893 > > > > > On 5 Feb 2015, at 18:32, Mailing Lists Mail daktapaal@xxxxxxxxx < xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: > >> Hey All, >> I have a logic that says : >> >> if $a found , then use it, else use $b. >> I can do this like >> >> <xsl:value-of select = "if(string($a)) then $a else $b"/> >> >> Can I do something like >> <xsl:value-of select = "($a,$b)[1]"/> >> >> Not sure , when this will work and when it wont. Or will it work at all..
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Selecting from a sequence, Michael Müller-Hille | Thread | Re: [xsl] Algorithm akin to namespa, Wolfgang Laun wolfga |
Re: [xsl] Selecting from a sequence, Michael Müller-Hille | Date | Re: [xsl] Algorithm akin to namespa, Wolfgang Laun wolfga |
Month |