xsl-list
[Top] [All Lists]

Re: [xsl] [XSLT 3.0]

2012-11-01 03:18:06
Option A is fine. (This is nothing really to do with function items, the answer would be the same if you were talking about a sequence containing elements and text nodes...)

"treat as" is never needed in systems that do dynamic type checking. It makes an assertion about the dynamic type which basically tells a static type system to defer type checking till run-time. But as far as I know all XSLT 2.0 processors do this anyway without being asked. There are a few XQuery processors that don't (e.g. the one from Microsoft), but they aren't widely used.

Michael Kay
Saxonica

On 01/11/2012 01:32, sean(_at_)seanbdurkin(_dot_)id(_dot_)au wrote:
Suppose that $state is a sequence which contains, among other things, at least one function item with signature...

   function(element(square)*) as element(square)*

Which is the correct and safe way to store a reference to this function in a variable?

Is it OPTION A?

    <xsl:variable name="compute-possible-moves"
         select="$state[. instance of function(*)][1]"
         as="function(element(square)*) as element(square)*">

... OR OPTION B?

    <xsl:variable name="compute-possible-moves"
         select="$state[. instance of function(*)][1]
treat as function(element(square)*) as element(square)*"">

... OR OPTION C?

    <xsl:variable name="compute-possible-moves"
         select="$state[. instance of function(*)][1]
                 treat as function(element(square)*) as element(square)*"
         as="function(element(square)*) as element(square)*">

My best estimate at the moment, would be option A, but I am not really sure about it.


Faithfully,
Sean B. Durkin





--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--




--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--

<Prev in Thread] Current Thread [Next in Thread>
  • Re: [xsl] [XSLT 3.0], Michael Kay <=