|
[XQuery Talk Mailing List Archive Home] [By Date] [By Thread] [By Subject] [By Author] [Recent Entries] [Reply To This Message] Better way to structure XQueryAdam Retter adam.retter at googlemail.comWed Jul 8 18:46:22 PDT 2009
2009/7/8 <http://x-query.com/mailman/listinfo/talk>:
> I have the following XQuery:
>
> xquery version="1.0";
>
> let $mydoc :=doc('http://localhost:8080/exist/rest/db/bio.xml')
> let $profileType := 'Standard'
> let $profileType := if
> ($mydoc/metadata/idinfo/spdom/bounding/boundalt/altmin or
> $mydoc/metadata/idinfo/spdom/bounding/boundalt/altmax) then 'Biological'
> else $profileType
>
> return
> <result>
> {$profileType>
> </result>
This could possibly be rewritten in a couple of different ways. These
30+ paths, is there some common element to them - are they all
children of another node? are there other children at the same level?
I am thinking that you may be able to express your query without
evaluating 30 paths!
> Can anyone let me know how to use two variables, one being the $mydoc
> and one being a string ($path :=
> '/metadata/idinfo/spdom/bounding/boundalt/altmin') and have it evaluate
> as XPath instead of as a string?
You need an evaluate function. Unfortunately there is no evaluation
function in the XQuery 1.0 specification. However, almost every XQuery
implementation I have seen provides its own proprietary evaluation
function. What XQuery implementation are you using?
--
Adam Retter
sip:http://x-query.com/mailman/listinfo/talk
http://www.adamretter.org.uk
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|






