[xquery-talk] What does [.] do.
David Lee
dlee at calldei.com
Mon Jan 27 07:14:39 PST 2014
I wouldnt do
(readingMaterial|publication)/string()
or
(xs:string(readingMaterial),xs:string(publication))[.]
unless you absolutely knew for sure that only 1 existed.
If both exist you will get 2 strings.
In the first place you get them in document order,
in the second case in the order specified.
I would do
(xs:string(readingMaterial),xs:string(publication))[1]
or just
(readingMaterial,publication)[1]/string()
which gives me readingMaterial if it exists, and if it doesnt exist then publication.
but never both and always in the order of precidence I asked
.
On 27/01/2014 14:55, Ihe Onwuka wrote:
> I am using one transformation for two different data sources with two
> different schemas.
>
> One site may call a resoure readingMaterial another site may call the
> same concept a publication, but they are otherwise similar and you may
> want to treat them as such.
>
> (xs:string(readingMaterial),xs:string(publication))[.]
>
I'd probably write that as
(readingMaterial|publication)/string()
or if you know that exactly one of them is always there
string(readingMaterial|publication)
David
________________________________________________________________________
The Numerical Algorithms Group Ltd is a company registered in England and Wales with company number 1249803. The registered office is:
Wilkinson House, Jordan Hill Road, Oxford OX2 8DR, United Kingdom.
This e-mail has been scanned for all viruses by Star. The service is powered by MessageLabs.
________________________________________________________________________
_______________________________________________
talk at x-query.com
http://x-query.com/mailman/listinfo/talk
More information about the talk
mailing list