sorting with exf:sort()

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

sorting with exf:sort()

Alexander Žaťko
I am trying to use the newly-introduced (in OF 3.5) exf:sort()  
function. According to the documentation it should be usable in two  
ways - as a function call in the repeat/@nodeset, for example:

<xforms:repeat nodeset="exf:sort(//row, 'opis/v', 'text',  
'ascending')" id="row">
...

...or as an element within the xforms:repeat:

<xforms:repeat nodeset="//row" id="row">
     <exf:sort select="opis/v" order="'ascending'"/>
......

When I use the 1st method, the sorting works as expected, but I can  
not make the second work.

Another issue I have is that I need to be able to change the sorting  
order and the node to sort by dynamically. In theory I should be able  
to use the saxon:evaluate() together with the concat() function, but  
my attempts to do this with method #1 so far failed (unescaped  
quotation marks, balancing parentheses,...). I was hoping that using  
the method #2 to implement sorting would make building the dynamic  
sorting conditions easier.

Has anybody implemented this function with ability to change the  
params dynamically?

A.




--
You receive this message as a subscriber of the [hidden email] mailing list.
To unsubscribe: mailto:[hidden email]
For general help: mailto:[hidden email]?subject=help
ObjectWeb mailing lists service home page: http://www.objectweb.org/wws
Reply | Threaded
Open this post in threaded view
|

Re: sorting with exf:sort()

Alexander Žaťko
Actually,

I just made the method 1 work without the need for the saxon:evaluate
() "footwork"   :-)

<xforms:repeat nodeset="exf:sort(//row, //app/sorting/@by, //app/
sorting/@data-type, //app/sorting/@order)" id="row">

A.

On Dec 11, 2006, at 10:22 AM, Alexander Zatko wrote:

> I am trying to use the newly-introduced (in OF 3.5) exf:sort()  
> function. According to the documentation it should be usable in two  
> ways - as a function call in the repeat/@nodeset, for example:
>
> <xforms:repeat nodeset="exf:sort(//row, 'opis/v', 'text',  
> 'ascending')" id="row">
> ...
>
> ...or as an element within the xforms:repeat:
>
> <xforms:repeat nodeset="//row" id="row">
>     <exf:sort select="opis/v" order="'ascending'"/>
> ......
>
> When I use the 1st method, the sorting works as expected, but I can  
> not make the second work.
>
> Another issue I have is that I need to be able to change the  
> sorting order and the node to sort by dynamically. In theory I  
> should be able to use the saxon:evaluate() together with the concat
> () function, but my attempts to do this with method #1 so far  
> failed (unescaped quotation marks, balancing parentheses,...). I  
> was hoping that using the method #2 to implement sorting would make  
> building the dynamic sorting conditions easier.
>
> Has anybody implemented this function with ability to change the  
> params dynamically?
>
> A.
>
>
>
> --
> You receive this message as a subscriber of the ops-
> [hidden email] mailing list.
> To unsubscribe: mailto:[hidden email]
> For general help: mailto:[hidden email]?subject=help
> ObjectWeb mailing lists service home page: http://www.objectweb.org/ 
> wws



--
You receive this message as a subscriber of the [hidden email] mailing list.
To unsubscribe: mailto:[hidden email]
For general help: mailto:[hidden email]?subject=help
ObjectWeb mailing lists service home page: http://www.objectweb.org/wws
Reply | Threaded
Open this post in threaded view
|

Re: sorting with exf:sort()

Erik Bruchez
Administrator
In reply to this post by Alexander Žaťko
Alexander Zatko wrote:

> I am trying to use the newly-introduced (in OF 3.5) exf:sort() function.
> According to the documentation it should be usable in two ways - as a
> function call in the repeat/@nodeset, for example:
>
> <xforms:repeat nodeset="exf:sort(//row, 'opis/v', 'text', 'ascending')"
> id="row">
> ...
>
> ...or as an element within the xforms:repeat:
>
> <xforms:repeat nodeset="//row" id="row">
>     <exf:sort select="opis/v" order="'ascending'"/>
> ......
>
> When I use the 1st method, the sorting works as expected, but I can not
> make the second work.
Probably because it is not implemented ;-) Only the *function* is
implemented at the moment.

-Erik

--
Orbeon Forms - Web Forms for the Enterprise Done the Right Way
http://www.orbeon.com/



--
You receive this message as a subscriber of the [hidden email] mailing list.
To unsubscribe: mailto:[hidden email]
For general help: mailto:[hidden email]?subject=help
ObjectWeb mailing lists service home page: http://www.objectweb.org/wws