|
[XQuery Talk Mailing List Archive Home] [By Date] [By Thread] [By Subject] [By Author] [Recent Entries] [Reply To This Message] Programmatically constructing sequences ("a", "b", "c") for XQueryGeorge Feinberg gmf at maine.rr.comMon Aug 10 13:44:32 PDT 2009
On Aug 10, 2009, at 12:25 PM, Michael Ludwig wrote:
> Adam Retter schrieb:
>> I think the problem is that we are missing the bigger picture of the
>> XQuery.
>>
>> You have some XQuery and you want to construct a sequence of strings,
>> how in the XQuery do you get access to the data that you want to form
>> a sequence of strings from?
>
> Hi Adam,
>
> you're absolutely right - I forgot to include the context; sorry for
> that. The parameter is supplied programmatically in the query context,
> which holds prefix-namespace-mappings, variables, etc. (For more
> detail,
> see XmlQueryContext in the DBXML documentation.)
>
> Using a literal:
>
> xqc.setVariableValue("files", new XmlValue("eins"));
>
> Using a StringBuilder:
>
> xqc.setVariableValue("files", new XmlValue(sb.toString()));
>
> Does that make it clear enough?
>
> I think I know what the problem is. The XmlValue constructor does not
> seem designed to accept sequences. What I mean to be a sequence -
> ('eins','zwei','drei') - is interpreted as a literal string.
You can set variable values that are sequences. That is actually
the default. The XmlValue-based version is just a short-cut
for the XmlResults-based variant.
Use:
XmlResults res = mgr.createResults();
res.addValue(new XmlValue(...));
res.addValue(new XmlValue(...));
res.addValue(new XmlValue(...));
xqc.setVariableValue("files", res);
George
>
> So I think a (somewhat kludgy) solution would be to construct a mini
> document from the input parameters, store it in the database and then
> join against that:
>
> <Params>
> <F>eins</F>
> <F>zwei</F>
> <F>drei</F>
> </Params>
>
> Or, preferably, use an XmlResolver. Much better than storing
> parameters
> in the database, if only temporarily.
>
> --
> Michael Ludwig
> _______________________________________________
> http://x-query.com/mailman/listinfo/talk
> http://x-query.com/mailman/listinfo/talk
|
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
|






