|
[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 XQueryMichael Ludwig mlu at as-guides.comMon Aug 10 19:25:04 PDT 2009
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.
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
|
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
|






