[xquery-talk] flowrrr - how to structure a function?
Robert Koberg
rob at koberg.com
Tue Oct 17 09:17:07 PDT 2006
Michael Kay wrote:
> It looks reasonable to me. I'm not quite sure why you want the variable
> $is-valid, since it's only used once, but if you do want it then this is the
> way to write it.
I have rewritten to take into account David's suggestion and changed the
way the code works, so it looks like:
declare function ep:enter-project($user as xs:string,
$group-name as xs:string,
$home-db-ref as xs:string?)
as element()? {
if (ep:is-valid-user-for-group($user, $group-name)) then
doc("databases.xml")/*/instance[@id=(
if (not($home-db-ref=())) then $home-db-ref else
request:get-parameter("db-ref", "")
)]/
(
session:set-attribute("db-port", string(@port)),
response:redirect-to(xs:anyURI("./project/"))
)
else
<p class="warn">Could not find credentials to let you enter the
project.</p>
};
>
> Odd to see that this habit of sticking "fn:" in front of function names is
> catching on even with XSLTers. I never use it myself, it seems to achieve
> nothing but ugliness and redundancy. And inconsistency - you use doc() but
> fn:string(). But tastes vary...
I have removed all 'fn:'s and will never use it again :)
thanks,
-Rob
More information about the talk
mailing list