EXSLT evaluate function

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

EXSLT evaluate function

Florent Georges
  Hi

  I'm surprised to discover that Saxon have a 'saxon:evaluate' function
for evaluating strings as XPath expressions, while not supporting the
EXSLT 'dyn:evaluate' function.  Is it a bug or a feature?

  Thanks,

--drkm





















       

       
               
___________________________________________________________________________
Appel audio GRATUIT partout dans le monde avec le nouveau Yahoo! Messenger
Téléchargez cette version sur http://fr.messenger.yahoo.com


-------------------------------------------------------
This SF.Net email is sponsored by the JBoss Inc.
Get Certified Today * Register for a JBoss Training Course
Free Certification Exam for All Training Attendees Through End of 2005
Visit http://www.jboss.com/services/certification for more information
_______________________________________________
saxon-help mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/saxon-help
Reply | Threaded
Open this post in threaded view
|

RE: EXSLT evaluate function

Michael Kay
I think I did this because there are some significant differences in the
semantics of saxon:evaluate versus dyn:evaluate, in terms of how much of the
static and dynamic context is made available to the XPath expression that's
invoked. IIRC, implementing dyn:evaluate() would have meant keeping
information available at run-time just in case dyn:evaluate() needed it,
thus imposing a performance penalty on all Saxon users whether they used
dyn:evaluate() or not.

Michael Kay
http://www.saxonica.com/ 

> -----Original Message-----
> From: [hidden email]
> [mailto:[hidden email]] On Behalf Of drkm
> Sent: 26 October 2005 21:35
> To: Saxon Help SF list
> Subject: [saxon] EXSLT evaluate function
>
>   Hi
>
>   I'm surprised to discover that Saxon have a
> 'saxon:evaluate' function
> for evaluating strings as XPath expressions, while not supporting the
> EXSLT 'dyn:evaluate' function.  Is it a bug or a feature?
>
>   Thanks,
>
> --drkm
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> ______________________________________________________________
> _____________
> Appel audio GRATUIT partout dans le monde avec le nouveau
> Yahoo! Messenger
> Téléchargez cette version sur http://fr.messenger.yahoo.com
>
>
> -------------------------------------------------------
> This SF.Net email is sponsored by the JBoss Inc.
> Get Certified Today * Register for a JBoss Training Course
> Free Certification Exam for All Training Attendees Through End of 2005
> Visit http://www.jboss.com/services/certification for more information
> _______________________________________________
> saxon-help mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/saxon-help
>





-------------------------------------------------------
This SF.Net email is sponsored by the JBoss Inc.
Get Certified Today * Register for a JBoss Training Course
Free Certification Exam for All Training Attendees Through End of 2005
Visit http://www.jboss.com/services/certification for more information
_______________________________________________
saxon-help mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/saxon-help
Reply | Threaded
Open this post in threaded view
|

RE: EXSLT evaluate function

Florent Georges
Michael Kay wrote:

> I think I did this because there are some significant
> differences in the semantics of saxon:evaluate versus
> dyn:evaluate, in terms of how much of the static and
> dynamic context is made available to the XPath expression
> that's invoked.

  Ok, thanks.  If I understand well, while EXSLT provides the context
node, the context position, the context size, variable bindings,
function library, namespace declarations, the current node, key
definitions and decimal formats to the 'dyn:evaluate' function, Saxon
provides the context node, the context position, the context size,
namespace declarations, the curent node and types to the
'saxon:evaluate' function.

  So if you want to provide 'dyn:evaluate', you have to maintain some
information, like variable bindings at any time (at runtime).  Is it
right?  If it is, I think I understand.

  Thanks for the explanation,

--drkm




















       

       
               
___________________________________________________________________________
Appel audio GRATUIT partout dans le monde avec le nouveau Yahoo! Messenger
Téléchargez cette version sur http://fr.messenger.yahoo.com


-------------------------------------------------------
This SF.Net email is sponsored by the JBoss Inc.
Get Certified Today * Register for a JBoss Training Course
Free Certification Exam for All Training Attendees Through End of 2005
Visit http://www.jboss.com/services/certification for more information
_______________________________________________
saxon-help mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/saxon-help
Reply | Threaded
Open this post in threaded view
|

RE: EXSLT evaluate function

Michael Kay
Yes, variable bindings were the main issue. Variables in the stylesheet that
aren't referenced are discarded at compile time, and I don't want to keep
them just incase a reference to them is constructed dynamically in
saxon:evaluate().

Michael Kay
http://www.saxonica.com/
 

> -----Original Message-----
> From: [hidden email]
> [mailto:[hidden email]] On Behalf Of drkm
> Sent: 28 October 2005 12:24
> To: [hidden email]
> Subject: RE: [saxon] EXSLT evaluate function
>
> Michael Kay wrote:
>
> > I think I did this because there are some significant
> > differences in the semantics of saxon:evaluate versus
> > dyn:evaluate, in terms of how much of the static and
> > dynamic context is made available to the XPath expression
> > that's invoked.
>
>   Ok, thanks.  If I understand well, while EXSLT provides the context
> node, the context position, the context size, variable bindings,
> function library, namespace declarations, the current node, key
> definitions and decimal formats to the 'dyn:evaluate' function, Saxon
> provides the context node, the context position, the context size,
> namespace declarations, the curent node and types to the
> 'saxon:evaluate' function.
>
>   So if you want to provide 'dyn:evaluate', you have to maintain some
> information, like variable bindings at any time (at runtime).  Is it
> right?  If it is, I think I understand.
>
>   Thanks for the explanation,
>
> --drkm
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> ______________________________________________________________
> _____________
> Appel audio GRATUIT partout dans le monde avec le nouveau
> Yahoo! Messenger
> Téléchargez cette version sur http://fr.messenger.yahoo.com
>
>
> -------------------------------------------------------
> This SF.Net email is sponsored by the JBoss Inc.
> Get Certified Today * Register for a JBoss Training Course
> Free Certification Exam for All Training Attendees Through End of 2005
> Visit http://www.jboss.com/services/certification for more information
> _______________________________________________
> saxon-help mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/saxon-help
>




-------------------------------------------------------
This SF.Net email is sponsored by the JBoss Inc.
Get Certified Today * Register for a JBoss Training Course
Free Certification Exam for All Training Attendees Through End of 2005
Visit http://www.jboss.com/services/certification for more information
_______________________________________________
saxon-help mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/saxon-help