[xquery-talk] Hashes
Michael Kay
mhk at mhk.me.uk
Wed Sep 20 23:34:28 PDT 2006
XSLT has keys, which serve this purpose. The assumption is that your data is
in XML:
<animals>
<animal code="a" name="aardvark"/>
<animal code="b" name="bandicoot"/>
</animals>
and then you declare
<xsl:key match="animal" use="code"/>
What this does is to tell the system to build an index. However, some
systems (such as Saxon-SA) will index the data automatically, so you can
just write /animals/animal[@code="b"] and you'll get a hash lookup without
asking for it.
Michael Kay
http://www.saxonica.com/
> -----Original Message-----
> From: talk-bounces at x-query.com
> [mailto:talk-bounces at x-query.com] On Behalf Of Tim Finney
> Sent: 20 September 2006 21:10
> To: talk at x-query.com
> Subject: [xquery-talk] Hashes
>
> Sometimes I wish that XQuery had hashes:
>
> Clunky XQuery 1.0 way:
>
> if ($n = "a") then "aardvark"
> else if ($n = "b") then "bandicoot"
> ...
> else if ($n = "z") then "zebra"
> else ()
>
> Declunked way:
>
> define variable $animals as xqy:hash {
> "a" => "aardvark", "b" => "bandicoot", ... , "z" => "zebra"
> }
>
> $animals[$n]
>
>
>
> Best
>
> Tim Finney
>
>
> _______________________________________________
> talk at x-query.com
> http://x-query.com/mailman/listinfo/talk
More information about the talk
mailing list