File: validateexpr-31.xq

package info (click to toggle)
qtxmlpatterns-opensource-src 5.15.15-2
  • links: PTS, VCS
  • area: main
  • in suites: trixie
  • size: 308,860 kB
  • sloc: xml: 360,343; cpp: 91,994; ansic: 388; sh: 53; sed: 31; makefile: 23
file content (19 lines) | stat: -rw-r--r-- 736 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
(: Name : validateexpr-31 :)
(: Description: Test that validating a union of element nodes does not raise a type error. :)
(: Author: Oliver Hallam :)
(: Date: 2010-03-15 :)

(: insert-start :)
import schema default element namespace "http://www.w3.org/XQueryTestOrderBy";
(: insert-end :)

declare function local:numbers($positive)
{
  if ($positive)
  then <PositiveNumbers><orderData>1</orderData></PositiveNumbers>
  else <NegativeNumbers><orderData>-1</orderData></NegativeNumbers>
};

let $positive as element(orderData, xs:decimal) := (validate { local:numbers(true()) })/orderData
let $negative as element(orderData, xs:decimal) := (validate { local:numbers(false()) })/orderData
return $positive + $negative