xsl-list
[Top] [All Lists]

RE: [xsl] Re: Benefits of xsl.sequence

2008-09-30 06:39:06
I'am not sure that I don't understand, "returns references to 
existing nodes". Is it possible to give a more easy to 
understand example than "doing graph-manipulation operations 
like checking your data for cycles"?

I like to use functions for navigationr. For example, with genealogical
data, spouses(person) is a function that returns all the persons that the
given person has been married to. Then when I'm doing the processing, I can
do something like

<xsl:apply-templates select="g:spouses(.)"/>

or even

<xsl:value-of select="g:father(.)/g:spouses(.)/name/firstName"/>

without worrying about the detail of the XML structure. The actual function
might look something like

<xsl:function name="g:spouses" as="element(person)*">
  <xsl:param name="person" as="element(person)"/>
  <xsl:sequence
select="$person/(/)/*/marriage[(husband,wife)=$person/@id]/(husband,wife)
except $person"/>
</xsl:function>

You can't do that without xsl:sequence.

Michael Kay
http://www.saxonica.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>
--~--