simple-xspec-wrapper 0.1.0-java

Sign up to get free protection for your applications and to get access to all the features.
Files changed (242) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +11 -0
  3. data/.rspec +3 -0
  4. data/.ruby-version +1 -0
  5. data/.travis.yml +11 -0
  6. data/CODE_OF_CONDUCT.md +74 -0
  7. data/Gemfile +6 -0
  8. data/Gemfile.lock +37 -0
  9. data/LICENSE.txt +21 -0
  10. data/README.md +49 -0
  11. data/Rakefile +6 -0
  12. data/bin/console +14 -0
  13. data/bin/setup +8 -0
  14. data/exe/xspec +16 -0
  15. data/lib/xspec/version.rb +3 -0
  16. data/lib/xspec.rb +256 -0
  17. data/simple-xspec-wrapper.gemspec +28 -0
  18. data/spec-test.xml +1125 -0
  19. data/vendor/xspec-1.0.0/.gitignore +7 -0
  20. data/vendor/xspec-1.0.0/.travis.yml +57 -0
  21. data/vendor/xspec-1.0.0/LICENSE +21 -0
  22. data/vendor/xspec-1.0.0/README.md +26 -0
  23. data/vendor/xspec-1.0.0/appveyor.yml +77 -0
  24. data/vendor/xspec-1.0.0/bin/xspec.bat +620 -0
  25. data/vendor/xspec-1.0.0/bin/xspec.sh +403 -0
  26. data/vendor/xspec-1.0.0/build.xml +369 -0
  27. data/vendor/xspec-1.0.0/editors/emacs/README +31 -0
  28. data/vendor/xspec-1.0.0/editors/emacs/schemas.xml +6 -0
  29. data/vendor/xspec-1.0.0/editors/oxygen/.cvsignore +2 -0
  30. data/vendor/xspec-1.0.0/editors/oxygen/README +11 -0
  31. data/vendor/xspec-1.0.0/editors/oxygen/build.xml +38 -0
  32. data/vendor/xspec-1.0.0/editors/oxygen/templates/xspec.xml +17 -0
  33. data/vendor/xspec-1.0.0/editors/oxygen/xspec.framework +175 -0
  34. data/vendor/xspec-1.0.0/find-examples.xml +37 -0
  35. data/vendor/xspec-1.0.0/find-examples.xsl +615 -0
  36. data/vendor/xspec-1.0.0/graphics/3angle-down.gif +0 -0
  37. data/vendor/xspec-1.0.0/graphics/3angle-right.gif +0 -0
  38. data/vendor/xspec-1.0.0/java/com/jenitennison/xslt/tests/XSLTCoverageTraceListener.class +0 -0
  39. data/vendor/xspec-1.0.0/java/com/jenitennison/xslt/tests/XSLTCoverageTraceListener.java +209 -0
  40. data/vendor/xspec-1.0.0/src/ant/find-test-failure.xsl +17 -0
  41. data/vendor/xspec-1.0.0/src/ant/get-schematron-phase.xsl +17 -0
  42. data/vendor/xspec-1.0.0/src/ant/locate-schematron.xsl +28 -0
  43. data/vendor/xspec-1.0.0/src/ant/make-path.js +4 -0
  44. data/vendor/xspec-1.0.0/src/compiler/generate-common-tests.xsl +604 -0
  45. data/vendor/xspec-1.0.0/src/compiler/generate-query-helper.xsl +152 -0
  46. data/vendor/xspec-1.0.0/src/compiler/generate-query-tests.xsl +473 -0
  47. data/vendor/xspec-1.0.0/src/compiler/generate-query-utils.xql +263 -0
  48. data/vendor/xspec-1.0.0/src/compiler/generate-tests-helper.xsl +169 -0
  49. data/vendor/xspec-1.0.0/src/compiler/generate-tests-utils.xsl +479 -0
  50. data/vendor/xspec-1.0.0/src/compiler/generate-xspec-tests.xsl +503 -0
  51. data/vendor/xspec-1.0.0/src/harnesses/basex/basex-standalone-xquery-harness.xproc +135 -0
  52. data/vendor/xspec-1.0.0/src/harnesses/basex/basex-xquery-harness.xproc +133 -0
  53. data/vendor/xspec-1.0.0/src/harnesses/exist/exist-xquery-harness.xproc +161 -0
  54. data/vendor/xspec-1.0.0/src/harnesses/harness-lib.xpl +327 -0
  55. data/vendor/xspec-1.0.0/src/harnesses/marklogic/ml-xquery-harness.xproc +143 -0
  56. data/vendor/xspec-1.0.0/src/harnesses/saxon/saxon-xquery-harness.xproc +108 -0
  57. data/vendor/xspec-1.0.0/src/harnesses/saxon/saxon-xslt-harness.xproc +85 -0
  58. data/vendor/xspec-1.0.0/src/harnesses/zorba/zorba-xquery-harness.xproc +134 -0
  59. data/vendor/xspec-1.0.0/src/reporter/coverage-report.xsl +378 -0
  60. data/vendor/xspec-1.0.0/src/reporter/format-utils.xsl +220 -0
  61. data/vendor/xspec-1.0.0/src/reporter/format-xspec-report-folding.xsl +164 -0
  62. data/vendor/xspec-1.0.0/src/reporter/format-xspec-report.xsl +410 -0
  63. data/vendor/xspec-1.0.0/src/reporter/junit-report.xsl +93 -0
  64. data/vendor/xspec-1.0.0/src/reporter/test-report.css +469 -0
  65. data/vendor/xspec-1.0.0/src/schemas/find-examples.rnc +90 -0
  66. data/vendor/xspec-1.0.0/src/schemas/xspec.rnc +304 -0
  67. data/vendor/xspec-1.0.0/src/schematron/iso-schematron/iso_abstract_expand.xsl +313 -0
  68. data/vendor/xspec-1.0.0/src/schematron/iso-schematron/iso_dsdl_include.xsl +1519 -0
  69. data/vendor/xspec-1.0.0/src/schematron/iso-schematron/iso_schematron_message.xsl +64 -0
  70. data/vendor/xspec-1.0.0/src/schematron/iso-schematron/iso_schematron_message_xslt2.xsl +64 -0
  71. data/vendor/xspec-1.0.0/src/schematron/iso-schematron/iso_schematron_skeleton_for_saxon.xsl +2306 -0
  72. data/vendor/xspec-1.0.0/src/schematron/iso-schematron/iso_schematron_skeleton_for_xslt1.xsl +1851 -0
  73. data/vendor/xspec-1.0.0/src/schematron/iso-schematron/iso_svrl_for_xslt1.xsl +614 -0
  74. data/vendor/xspec-1.0.0/src/schematron/iso-schematron/iso_svrl_for_xslt2.xsl +692 -0
  75. data/vendor/xspec-1.0.0/src/schematron/iso-schematron/readme.txt +101 -0
  76. data/vendor/xspec-1.0.0/src/schematron/iso-schematron/sch-messages-cs.xhtml +56 -0
  77. data/vendor/xspec-1.0.0/src/schematron/iso-schematron/sch-messages-de.xhtml +55 -0
  78. data/vendor/xspec-1.0.0/src/schematron/iso-schematron/sch-messages-en.xhtml +57 -0
  79. data/vendor/xspec-1.0.0/src/schematron/iso-schematron/sch-messages-fr.xhtml +54 -0
  80. data/vendor/xspec-1.0.0/src/schematron/iso-schematron/sch-messages-ja.xhtml +53 -0
  81. data/vendor/xspec-1.0.0/src/schematron/iso-schematron/sch-messages-nl.xhtml +58 -0
  82. data/vendor/xspec-1.0.0/src/schematron/iso-schematron/schematron-skeleton-api.htm +723 -0
  83. data/vendor/xspec-1.0.0/src/schematron/sch-location-compare.xsl +139 -0
  84. data/vendor/xspec-1.0.0/src/schematron/schut-to-xspec.xsl +179 -0
  85. data/vendor/xspec-1.0.0/test/Makefile +117 -0
  86. data/vendor/xspec-1.0.0/test/README +5 -0
  87. data/vendor/xspec-1.0.0/test/catalog/xspec-160_catalog.xml +4 -0
  88. data/vendor/xspec-1.0.0/test/catalog/xspec-160_schematron.xspec +6 -0
  89. data/vendor/xspec-1.0.0/test/catalog/xspec-160_xslt.xspec +5 -0
  90. data/vendor/xspec-1.0.0/test/end-to-end/README.md +42 -0
  91. data/vendor/xspec-1.0.0/test/end-to-end/cases/.gitignore +1 -0
  92. data/vendor/xspec-1.0.0/test/end-to-end/cases/expected/.gitignore +3 -0
  93. data/vendor/xspec-1.0.0/test/end-to-end/cases/expected/xspec-50-result-norm.html +74 -0
  94. data/vendor/xspec-1.0.0/test/end-to-end/cases/expected/xspec-55-result-norm.html +112 -0
  95. data/vendor/xspec-1.0.0/test/end-to-end/cases/expected/xspec-focus-1-result-norm.html +109 -0
  96. data/vendor/xspec-1.0.0/test/end-to-end/cases/expected/xspec-function-result-norm.html +118 -0
  97. data/vendor/xspec-1.0.0/test/end-to-end/cases/expected/xspec-import-result-norm.html +163 -0
  98. data/vendor/xspec-1.0.0/test/end-to-end/cases/expected/xspec-imported-result-norm.html +95 -0
  99. data/vendor/xspec-1.0.0/test/end-to-end/cases/expected/xspec-pending-result-norm.html +123 -0
  100. data/vendor/xspec-1.0.0/test/end-to-end/cases/expected/xspec-rule-result-norm.html +109 -0
  101. data/vendor/xspec-1.0.0/test/end-to-end/cases/expected/xspec-three-dots-result-norm.html +1237 -0
  102. data/vendor/xspec-1.0.0/test/end-to-end/cases/xspec-50.xsl +7 -0
  103. data/vendor/xspec-1.0.0/test/end-to-end/cases/xspec-50.xspec +10 -0
  104. data/vendor/xspec-1.0.0/test/end-to-end/cases/xspec-55.xsl +2 -0
  105. data/vendor/xspec-1.0.0/test/end-to-end/cases/xspec-55.xspec +18 -0
  106. data/vendor/xspec-1.0.0/test/end-to-end/cases/xspec-focus-1.xspec +71 -0
  107. data/vendor/xspec-1.0.0/test/end-to-end/cases/xspec-function.xspec +50 -0
  108. data/vendor/xspec-1.0.0/test/end-to-end/cases/xspec-import.xspec +50 -0
  109. data/vendor/xspec-1.0.0/test/end-to-end/cases/xspec-imported.xspec +48 -0
  110. data/vendor/xspec-1.0.0/test/end-to-end/cases/xspec-pending.xspec +89 -0
  111. data/vendor/xspec-1.0.0/test/end-to-end/cases/xspec-rule.xspec +76 -0
  112. data/vendor/xspec-1.0.0/test/end-to-end/cases/xspec-three-dots.xsl +49 -0
  113. data/vendor/xspec-1.0.0/test/end-to-end/cases/xspec-three-dots.xspec +527 -0
  114. data/vendor/xspec-1.0.0/test/end-to-end/generate-expected.cmd +51 -0
  115. data/vendor/xspec-1.0.0/test/end-to-end/generate-expected.sh +25 -0
  116. data/vendor/xspec-1.0.0/test/end-to-end/processor/_deserializer.xsl +53 -0
  117. data/vendor/xspec-1.0.0/test/end-to-end/processor/_normalizer.xsl +192 -0
  118. data/vendor/xspec-1.0.0/test/end-to-end/processor/_serializer.xsl +15 -0
  119. data/vendor/xspec-1.0.0/test/end-to-end/processor/_util.xsl +35 -0
  120. data/vendor/xspec-1.0.0/test/end-to-end/processor/compare.xsl +88 -0
  121. data/vendor/xspec-1.0.0/test/end-to-end/processor/normalize.xsl +28 -0
  122. data/vendor/xspec-1.0.0/test/end-to-end/run-e2e-tests.cmd +61 -0
  123. data/vendor/xspec-1.0.0/test/end-to-end/run-e2e-tests.sh +28 -0
  124. data/vendor/xspec-1.0.0/test/generate-tests-utils.xspec +636 -0
  125. data/vendor/xspec-1.0.0/test/generate-x-utils.xspec +173 -0
  126. data/vendor/xspec-1.0.0/test/generate-xspec-tests.xspec +64 -0
  127. data/vendor/xspec-1.0.0/test/run-xspec-tests.cmd +83 -0
  128. data/vendor/xspec-1.0.0/test/run-xspec-tests.sh +42 -0
  129. data/vendor/xspec-1.0.0/test/sch-location-compare.xspec +179 -0
  130. data/vendor/xspec-1.0.0/test/schematron/data/standards.xml +7 -0
  131. data/vendor/xspec-1.0.0/test/schematron/schematron-017.sch +9 -0
  132. data/vendor/xspec-1.0.0/test/schematron/schematron-018.sch +17 -0
  133. data/vendor/xspec-1.0.0/test/schematron/schematron-019.sch +13 -0
  134. data/vendor/xspec-1.0.0/test/schematron/schematron-020-01.sch +35 -0
  135. data/vendor/xspec-1.0.0/test/schematron/schematron-020.sch +32 -0
  136. data/vendor/xspec-1.0.0/test/schematron/schematron-021.sch +28 -0
  137. data/vendor/xspec-1.0.0/test/schematron/schematron-022.sch +18 -0
  138. data/vendor/xspec-1.0.0/test/schematron/schematron-xslt-compile.xsl +8 -0
  139. data/vendor/xspec-1.0.0/test/schematron/schematron-xslt-expand.xsl +8 -0
  140. data/vendor/xspec-1.0.0/test/schematron/schematron-xslt-include.xsl +8 -0
  141. data/vendor/xspec-1.0.0/test/schematron/schut-to-xspec-001-in.xspec +5 -0
  142. data/vendor/xspec-1.0.0/test/schematron/schut-to-xspec-001-out.xspec +7 -0
  143. data/vendor/xspec-1.0.0/test/schematron/schut-to-xspec-002-in.xspec +5 -0
  144. data/vendor/xspec-1.0.0/test/schematron/schut-to-xspec-002-out.xspec +7 -0
  145. data/vendor/xspec-1.0.0/test/schematron/schut-to-xspec-002.sch +4 -0
  146. data/vendor/xspec-1.0.0/test/schematron/schut-to-xspec-003-in.xspec +7 -0
  147. data/vendor/xspec-1.0.0/test/schematron/schut-to-xspec-003-out.xspec +9 -0
  148. data/vendor/xspec-1.0.0/test/schematron/schut-to-xspec-004-in.xspec +20 -0
  149. data/vendor/xspec-1.0.0/test/schematron/schut-to-xspec-004-out.xspec +22 -0
  150. data/vendor/xspec-1.0.0/test/schematron/schut-to-xspec-005-in.xspec +6 -0
  151. data/vendor/xspec-1.0.0/test/schematron/schut-to-xspec-005-out.xspec +8 -0
  152. data/vendor/xspec-1.0.0/test/schematron/schut-to-xspec-006-in.xspec +11 -0
  153. data/vendor/xspec-1.0.0/test/schematron/schut-to-xspec-006-out.xspec +13 -0
  154. data/vendor/xspec-1.0.0/test/schematron/schut-to-xspec-007-in.xspec +7 -0
  155. data/vendor/xspec-1.0.0/test/schematron/schut-to-xspec-007-out.xspec +9 -0
  156. data/vendor/xspec-1.0.0/test/schematron/schut-to-xspec-007.xml +2 -0
  157. data/vendor/xspec-1.0.0/test/schematron/schut-to-xspec-008-in.xspec +9 -0
  158. data/vendor/xspec-1.0.0/test/schematron/schut-to-xspec-008-out.xspec +9 -0
  159. data/vendor/xspec-1.0.0/test/schematron/schut-to-xspec-009-import-in.xspec +5 -0
  160. data/vendor/xspec-1.0.0/test/schematron/schut-to-xspec-009-in.xspec +6 -0
  161. data/vendor/xspec-1.0.0/test/schematron/schut-to-xspec-009-out.xspec +10 -0
  162. data/vendor/xspec-1.0.0/test/schematron/schut-to-xspec-010-import.xspec +5 -0
  163. data/vendor/xspec-1.0.0/test/schematron/schut-to-xspec-010-in.xspec +6 -0
  164. data/vendor/xspec-1.0.0/test/schematron/schut-to-xspec-010-out.xspec +8 -0
  165. data/vendor/xspec-1.0.0/test/schematron/schut-to-xspec-011-in.xspec +6 -0
  166. data/vendor/xspec-1.0.0/test/schematron/schut-to-xspec-011-out.xspec +8 -0
  167. data/vendor/xspec-1.0.0/test/schematron/schut-to-xspec-012-01.xml +4 -0
  168. data/vendor/xspec-1.0.0/test/schematron/schut-to-xspec-012-02.xml +13 -0
  169. data/vendor/xspec-1.0.0/test/schematron/schut-to-xspec-012-out.xspec +81 -0
  170. data/vendor/xspec-1.0.0/test/schematron/schut-to-xspec-013-in.xspec +6 -0
  171. data/vendor/xspec-1.0.0/test/schematron/schut-to-xspec-013-out.xspec +8 -0
  172. data/vendor/xspec-1.0.0/test/schematron/schut-to-xspec-test.sch +4 -0
  173. data/vendor/xspec-1.0.0/test/schematron/schut-to-xspec-test.sch.xsl +4 -0
  174. data/vendor/xspec-1.0.0/test/schematron-01.sch +17 -0
  175. data/vendor/xspec-1.0.0/test/schematron-01.xml +14 -0
  176. data/vendor/xspec-1.0.0/test/schematron-01.xspec +14 -0
  177. data/vendor/xspec-1.0.0/test/schematron-012.xspec +83 -0
  178. data/vendor/xspec-1.0.0/test/schematron-014-01.xml +10 -0
  179. data/vendor/xspec-1.0.0/test/schematron-014.sch +16 -0
  180. data/vendor/xspec-1.0.0/test/schematron-014.xspec +11 -0
  181. data/vendor/xspec-1.0.0/test/schematron-015.sch +16 -0
  182. data/vendor/xspec-1.0.0/test/schematron-015.xspec +11 -0
  183. data/vendor/xspec-1.0.0/test/schematron-016.sch +19 -0
  184. data/vendor/xspec-1.0.0/test/schematron-016.xspec +171 -0
  185. data/vendor/xspec-1.0.0/test/schematron-017.xspec +26 -0
  186. data/vendor/xspec-1.0.0/test/schematron-018.xspec +120 -0
  187. data/vendor/xspec-1.0.0/test/schematron-019.xspec +16 -0
  188. data/vendor/xspec-1.0.0/test/schematron-020.xspec +53 -0
  189. data/vendor/xspec-1.0.0/test/schematron-021.xspec +27 -0
  190. data/vendor/xspec-1.0.0/test/schematron-022.xspec +15 -0
  191. data/vendor/xspec-1.0.0/test/schematron-param-001.xspec +50 -0
  192. data/vendor/xspec-1.0.0/test/schut-to-xspec-012.sch +27 -0
  193. data/vendor/xspec-1.0.0/test/schut-to-xspec.xspec +85 -0
  194. data/vendor/xspec-1.0.0/test/unit-expect-xsl.xspec +28 -0
  195. data/vendor/xspec-1.0.0/test/xspec-26.xsl +19 -0
  196. data/vendor/xspec-1.0.0/test/xspec-26.xspec +17 -0
  197. data/vendor/xspec-1.0.0/test/xspec-30.xml +2 -0
  198. data/vendor/xspec-1.0.0/test/xspec-30.xsl +6 -0
  199. data/vendor/xspec-1.0.0/test/xspec-30.xspec +8 -0
  200. data/vendor/xspec-1.0.0/test/xspec-33.xsl +7 -0
  201. data/vendor/xspec-1.0.0/test/xspec-33.xspec +15 -0
  202. data/vendor/xspec-1.0.0/test/xspec-46.xsl +7 -0
  203. data/vendor/xspec-1.0.0/test/xspec-46.xspec +9 -0
  204. data/vendor/xspec-1.0.0/test/xspec-72.xsl +13 -0
  205. data/vendor/xspec-1.0.0/test/xspec-72.xspec +19 -0
  206. data/vendor/xspec-1.0.0/test/xspec-bat.cmd +757 -0
  207. data/vendor/xspec-1.0.0/test/xspec-focus-2.xspec +91 -0
  208. data/vendor/xspec-1.0.0/test/xspec-junit.xspec +78 -0
  209. data/vendor/xspec-1.0.0/test/xspec-result-naming-collision.xml +1003 -0
  210. data/vendor/xspec-1.0.0/test/xspec-result-naming-collision.xslt +10 -0
  211. data/vendor/xspec-1.0.0/test/xspec-result-naming-collision.xspec +13 -0
  212. data/vendor/xspec-1.0.0/test/xspec-tested.xql +44 -0
  213. data/vendor/xspec-1.0.0/test/xspec-tested.xsl +64 -0
  214. data/vendor/xspec-1.0.0/test/xspec-variable.xml +3 -0
  215. data/vendor/xspec-1.0.0/test/xspec-variable.xspec +58 -0
  216. data/vendor/xspec-1.0.0/test/xspec-xslt3.xsl +13 -0
  217. data/vendor/xspec-1.0.0/test/xspec-xslt3.xspec +12 -0
  218. data/vendor/xspec-1.0.0/test/xspec.bats +420 -0
  219. data/vendor/xspec-1.0.0/tutorial/escape-for-regex.xslt +40 -0
  220. data/vendor/xspec-1.0.0/tutorial/escape-for-regex.xspec +75 -0
  221. data/vendor/xspec-1.0.0/tutorial/schematron/demo-01.sch +17 -0
  222. data/vendor/xspec-1.0.0/tutorial/schematron/demo-01.xml +11 -0
  223. data/vendor/xspec-1.0.0/tutorial/schematron/demo-01.xspec +14 -0
  224. data/vendor/xspec-1.0.0/tutorial/schematron/demo-02-PhaseA.xspec +11 -0
  225. data/vendor/xspec-1.0.0/tutorial/schematron/demo-02-PhaseB.xspec +12 -0
  226. data/vendor/xspec-1.0.0/tutorial/schematron/demo-02-import1.xspec +10 -0
  227. data/vendor/xspec-1.0.0/tutorial/schematron/demo-02-import2.xspec +8 -0
  228. data/vendor/xspec-1.0.0/tutorial/schematron/demo-02-import3.xspec +10 -0
  229. data/vendor/xspec-1.0.0/tutorial/schematron/demo-02.sch +58 -0
  230. data/vendor/xspec-1.0.0/tutorial/schematron/demo-02.xml +19 -0
  231. data/vendor/xspec-1.0.0/tutorial/schematron/demo-03-doc1.xml +6 -0
  232. data/vendor/xspec-1.0.0/tutorial/schematron/demo-03-doc2.xml +7 -0
  233. data/vendor/xspec-1.0.0/tutorial/schematron/demo-03.sch +29 -0
  234. data/vendor/xspec-1.0.0/tutorial/schematron/demo-03.xspec +63 -0
  235. data/vendor/xspec-1.0.0/tutorial/schematron/demo-04.sch +20 -0
  236. data/vendor/xspec-1.0.0/tutorial/schematron/demo-04.xspec +33 -0
  237. data/vendor/xspec-1.0.0/tutorial/schematron/quickfix.sch +81 -0
  238. data/vendor/xspec-1.0.0/tutorial/xquery-tutorial.xq +8 -0
  239. data/vendor/xspec-1.0.0/tutorial/xquery-tutorial.xspec +16 -0
  240. data/vendor/xspec-1.0.0/xproject/project.xml +8 -0
  241. data/vendor/xspec-1.0.0/xproject/release-project.xsl +41 -0
  242. metadata +341 -0
@@ -0,0 +1,636 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <t:description xmlns:t="http://www.jenitennison.com/xslt/xspec" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:test="http://www.jenitennison.com/xslt/unit-test" stylesheet="../src/compiler/generate-tests-utils.xsl">
3
+ <!--
4
+ Test the source file generate-tests-utils.xsl.
5
+ -->
6
+ <!--
7
+ Function test:node-deep-equal($seq1, $seq2).
8
+ -->
9
+ <t:scenario label="test:node-deep-equal($seq1, $seq2)">
10
+ <t:scenario label="Identical Attribute Sequences">
11
+ <!-- TODO: This scenario does not run on XQuery: xspec/xspec#82 -->
12
+ <t:call function="test:node-deep-equal">
13
+ <t:param name="node1" select="/node/@attribute" as="node()">
14
+ <node attribute="foobar"/>
15
+ </t:param>
16
+ <t:param name="node2" select="/node/@attribute" as="node()">
17
+ <node attribute="foobar"/>
18
+ </t:param>
19
+ </t:call>
20
+ <t:expect label="the result" test="$x:result eq true()"/>
21
+ </t:scenario>
22
+
23
+ <t:scenario label="Copy of https://github.com/xspec/xspec/blob/120b3316aef2c1106287dc7c5270f3ed49062c68/src/compiler/generate-tests-utils.xsl#L246-L372">
24
+ <!-- TODO: Most of these scenarios do not run on XQuery (error XPDY0002 and XPDY0050) -->
25
+
26
+ <t:scenario label="Identical Elements">
27
+ <t:call function="test:node-deep-equal">
28
+ <t:param name="node1" select="/*">
29
+ <result/>
30
+ </t:param>
31
+ <t:param name="node2" select="/*">
32
+ <result/>
33
+ </t:param>
34
+ </t:call>
35
+ <t:expect label="True" select="true()" />
36
+ </t:scenario>
37
+
38
+ <t:scenario label="Elements with Identical Attributes in Different Orders">
39
+ <t:call function="test:node-deep-equal">
40
+ <t:param name="node1" select="/*">
41
+ <result a="1" b="2" />
42
+ </t:param>
43
+ <t:param name="node2" select="/*">
44
+ <result b="2" a="1" />
45
+ </t:param>
46
+ </t:call>
47
+ <t:expect label="True" select="true()" />
48
+ </t:scenario>
49
+
50
+ <t:scenario label="Elements with Identical Children">
51
+ <t:call function="test:node-deep-equal">
52
+ <t:param name="node1" select="/*">
53
+ <result><child1/><child2/></result>
54
+ </t:param>
55
+ <t:param name="node2" select="/*">
56
+ <result><child1/><child2/></result>
57
+ </t:param>
58
+ </t:call>
59
+ <t:expect label="True" select="true()" />
60
+ </t:scenario>
61
+
62
+ <t:scenario label="Identical Attributes">
63
+ <t:call function="test:node-deep-equal">
64
+ <t:param name="node1" select="/*/@a">
65
+ <result a="1" />
66
+ </t:param>
67
+ <t:param name="node2" select="/*/@a">
68
+ <result a="1" />
69
+ </t:param>
70
+ </t:call>
71
+ <t:expect label="True" select="true()" />
72
+ </t:scenario>
73
+
74
+ <t:scenario label="Identical Document Nodes">
75
+ <t:call function="test:node-deep-equal">
76
+ <t:param name="node1" select="/">
77
+ <result />
78
+ </t:param>
79
+ <t:param name="node2" select="/">
80
+ <result />
81
+ </t:param>
82
+ </t:call>
83
+ <t:expect label="True" select="true()" />
84
+ </t:scenario>
85
+
86
+ <t:scenario label="Identical Text Nodes">
87
+ <t:call function="test:node-deep-equal">
88
+ <t:param name="node1" select="/*/text()">
89
+ <result>Test</result>
90
+ </t:param>
91
+ <t:param name="node2" select="/*/text()">
92
+ <result>Test</result>
93
+ </t:param>
94
+ </t:call>
95
+ <t:expect label="True" select="true()" />
96
+ </t:scenario>
97
+
98
+ <t:scenario label="Identical Comments">
99
+ <t:call function="test:node-deep-equal">
100
+ <t:param name="node1" select="/comment()">
101
+ <!-- Comment -->
102
+ <doc />
103
+ </t:param>
104
+ <t:param name="node2" select="/comment()">
105
+ <!-- Comment -->
106
+ <doc />
107
+ </t:param>
108
+ </t:call>
109
+ <t:expect label="True" select="true()" />
110
+ </t:scenario>
111
+
112
+ <t:scenario label="Identical Processing Instructions">
113
+ <t:call function="test:node-deep-equal">
114
+ <t:param name="node1" select="/processing-instruction()">
115
+ <?pi data?>
116
+ <doc />
117
+ </t:param>
118
+ <t:param name="node2" select="/processing-instruction()">
119
+ <?pi data?>
120
+ <doc />
121
+ </t:param>
122
+ </t:call>
123
+ <t:expect label="True" select="true()" />
124
+ </t:scenario>
125
+
126
+ <t:scenario>
127
+ <t:label>Using "..." to indicate missing text</t:label>
128
+ <t:call function="test:node-deep-equal">
129
+ <t:param name="node1">
130
+ <foo>...</foo>
131
+ </t:param>
132
+ <t:param name="node2">
133
+ <foo>foo</foo>
134
+ </t:param>
135
+ </t:call>
136
+ <t:expect label="True" select="true()" />
137
+ </t:scenario>
138
+
139
+ <t:scenario>
140
+ <t:label>Using "..." to indicate missing mixed content</t:label>
141
+ <t:call function="test:node-deep-equal">
142
+ <t:param name="node1">
143
+ <foo>...</foo>
144
+ </t:param>
145
+ <t:param name="node2">
146
+ <foo>foo<bar />foo</foo>
147
+ </t:param>
148
+ </t:call>
149
+ <t:expect label="True" select="true()" />
150
+ </t:scenario>
151
+
152
+ <t:scenario>
153
+ <t:label>Using "..." to indicate missing attribute values</t:label>
154
+ <t:call function="test:node-deep-equal">
155
+ <t:param name="node1" select="/foo/@bar">
156
+ <foo bar="..." />
157
+ </t:param>
158
+ <t:param name="node2" select="/foo/@bar">
159
+ <foo bar="bar" />
160
+ </t:param>
161
+ </t:call>
162
+ <t:expect label="True" select="true()" />
163
+ </t:scenario>
164
+
165
+ <t:scenario>
166
+ <t:label>Using "..." to indicate missing empty content</t:label>
167
+ <t:call function="test:node-deep-equal">
168
+ <t:param name="node1" select="/foo">
169
+ <foo>...</foo>
170
+ </t:param>
171
+ <t:param name="node2" select="/foo">
172
+ <foo />
173
+ </t:param>
174
+ </t:call>
175
+ <t:expect label="True" select="true()" />
176
+ </t:scenario>
177
+
178
+ </t:scenario>
179
+
180
+ </t:scenario>
181
+
182
+ <!--
183
+ Function test:sorted-children
184
+ -->
185
+ <t:scenario label="test:sorted-children">
186
+
187
+ <t:scenario label="Copy of https://github.com/xspec/xspec/blob/120b3316aef2c1106287dc7c5270f3ed49062c68/src/compiler/generate-tests-utils.xsl#L466-L477">
188
+
189
+ <t:scenario label="Original order preserved">
190
+ <!-- TODO: This scenario does not run on XQuery (error XPST0003) -->
191
+ <t:call function="test:sorted-children">
192
+ <t:param name="node">
193
+ <foo><bar /><baz /></foo>
194
+ </t:param>
195
+ </t:call>
196
+ <t:expect label="bar baz">
197
+ <bar /><baz />
198
+ </t:expect>
199
+ </t:scenario>
200
+
201
+ </t:scenario>
202
+
203
+ </t:scenario>
204
+
205
+ <!--
206
+ Template test:report-value
207
+ -->
208
+ <t:scenario label="test:report-value">
209
+
210
+ <t:scenario label="Copy of https://github.com/xspec/xspec/blob/120b3316aef2c1106287dc7c5270f3ed49062c68/src/compiler/generate-tests-utils.xsl#L486-L550">
211
+ <!-- TODO: These scenarios do not run on XQuery (x:call/@template not supported for XQuery) -->
212
+
213
+ <t:scenario label="Integer">
214
+ <t:call template="test:report-value">
215
+ <t:param name="value" select="1" />
216
+ <t:param name="wrapper-ns" select="'http://www.jenitennison.com/xslt/xspec'" />
217
+ </t:call>
218
+ <t:expect label="t:result with @select of integer">
219
+ <t:result select="1" />
220
+ </t:expect>
221
+ </t:scenario>
222
+
223
+ <t:scenario label="Empty Sequence">
224
+ <t:call template="test:report-value">
225
+ <t:param name="value" select="()" />
226
+ <t:param name="wrapper-ns" select="'http://www.jenitennison.com/xslt/xspec'" />
227
+ </t:call>
228
+ <t:expect label="t:result with @select of empty sequence">
229
+ <t:result select="()" />
230
+ </t:expect>
231
+ </t:scenario>
232
+
233
+ <t:scenario label="String">
234
+ <t:call template="test:report-value">
235
+ <t:param name="value" select="'test'" />
236
+ <t:param name="wrapper-ns" select="'http://www.jenitennison.com/xslt/xspec'" />
237
+ </t:call>
238
+ <t:expect label="t:result with @select of string">
239
+ <t:result select="'test'" />
240
+ </t:expect>
241
+ </t:scenario>
242
+
243
+ <t:scenario label="URI">
244
+ <t:call template="test:report-value">
245
+ <t:param name="value" select="xs:anyURI('test.xml')" />
246
+ <t:param name="wrapper-ns" select="'http://www.jenitennison.com/xslt/xspec'" />
247
+ </t:call>
248
+ <t:expect label="t:result with @select of xs:anyURI">
249
+ <t:result select="xs:anyURI('test.xml')" />
250
+ </t:expect>
251
+ </t:scenario>
252
+
253
+ <t:scenario label="QName">
254
+ <t:call template="test:report-value">
255
+ <t:param name="value" select="QName('http://www.jenitennison.com/xslt/unit-test', 'tests')" />
256
+ <t:param name="wrapper-ns" select="'http://www.jenitennison.com/xslt/xspec'" />
257
+ </t:call>
258
+ <t:expect label="t:result with @select of QName">
259
+ <t:result select="QName('http://www.jenitennison.com/xslt/unit-test', 'tests')" />
260
+ </t:expect>
261
+ </t:scenario>
262
+
263
+ <t:scenario label="Attributes">
264
+ <t:call template="test:report-value">
265
+ <t:param name="value" select="/*/@*" >
266
+ <doc a="1" b="2" />
267
+ </t:param>
268
+ <t:param name="wrapper-ns" select="'http://www.jenitennison.com/xslt/xspec'" />
269
+ </t:call>
270
+ <t:expect label="t:result containing attributes">
271
+ <t:result select="/*/(@* | node())">
272
+ <t:temp a="1" b="2" />
273
+ </t:result>
274
+ </t:expect>
275
+ </t:scenario>
276
+
277
+ <t:scenario label="Attributes and content">
278
+ <t:call template="test:report-value">
279
+ <t:param name="value" select="/*/@*, /*/foo" >
280
+ <doc a="1" b="2">
281
+ <foo />
282
+ </doc>
283
+ </t:param>
284
+ <t:param name="wrapper-ns" select="'http://www.jenitennison.com/xslt/xspec'" />
285
+ </t:call>
286
+ <t:expect label="t:result containing attributes and content">
287
+ <t:result select="/*/(@* | node())">
288
+ <t:temp a="1" b="2">
289
+ <foo />
290
+ </t:temp>
291
+ </t:result>
292
+ </t:expect>
293
+ </t:scenario>
294
+
295
+ </t:scenario>
296
+
297
+ </t:scenario>
298
+
299
+ <!--
300
+ Function test:report-atomic-value
301
+ -->
302
+ <t:scenario label="test:report-atomic-value">
303
+
304
+ <!-- TODO: Many of these scenarios fail on XQuery
305
+ xspec/xspec#58 has not been implemented for XQuery -->
306
+
307
+ <t:scenario label="xs:integer">
308
+ <t:scenario label="Max of xs:unsignedLong (a subtype of xs:integer)">
309
+ <t:call function="test:report-atomic-value">
310
+ <t:param select="xs:integer(18446744073709551615)" />
311
+ </t:call>
312
+ <t:expect label="Numeric literal" select="'18446744073709551615'" />
313
+ </t:scenario>
314
+
315
+ <t:scenario label="0">
316
+ <t:call function="test:report-atomic-value">
317
+ <t:param select="xs:integer(0)" />
318
+ </t:call>
319
+ <t:expect label="Numeric literal" select="'0'" />
320
+ </t:scenario>
321
+
322
+ <t:scenario label="-1">
323
+ <t:call function="test:report-atomic-value">
324
+ <t:param select="xs:integer(-1)" />
325
+ </t:call>
326
+ <t:expect label="Numeric literal" select="'-1'" />
327
+ </t:scenario>
328
+ </t:scenario>
329
+
330
+ <t:scenario label="xs:decimal">
331
+ <t:scenario label="1.2">
332
+ <t:call function="test:report-atomic-value">
333
+ <t:param select="xs:decimal(1.2)" />
334
+ </t:call>
335
+ <t:expect label="Numeric literal" select="'1.2'" />
336
+ </t:scenario>
337
+
338
+ <t:scenario label="1">
339
+ <t:call function="test:report-atomic-value">
340
+ <t:param select="xs:decimal(1)" />
341
+ </t:call>
342
+ <t:expect label="Numeric literal" select="'1.0'" />
343
+ </t:scenario>
344
+
345
+ <t:scenario label="0.1">
346
+ <t:call function="test:report-atomic-value">
347
+ <t:param select="xs:decimal(0.1)" />
348
+ </t:call>
349
+ <t:expect label="Numeric literal" select="'0.1'" />
350
+ </t:scenario>
351
+
352
+ <t:scenario label="0">
353
+ <t:call function="test:report-atomic-value">
354
+ <t:param select="xs:decimal(0)" />
355
+ </t:call>
356
+ <t:expect label="Numeric literal" select="'0.0'" />
357
+ </t:scenario>
358
+
359
+ <t:scenario label="-0.1">
360
+ <t:call function="test:report-atomic-value">
361
+ <t:param select="xs:decimal(-0.1)" />
362
+ </t:call>
363
+ <t:expect label="Numeric literal" select="'-0.1'" />
364
+ </t:scenario>
365
+
366
+ <t:scenario label="-1">
367
+ <t:call function="test:report-atomic-value">
368
+ <t:param select="xs:decimal(-1)" />
369
+ </t:call>
370
+ <t:expect label="Numeric literal" select="'-1.0'" />
371
+ </t:scenario>
372
+
373
+ <t:scenario label="-1.2">
374
+ <t:call function="test:report-atomic-value">
375
+ <t:param select="xs:decimal(-1.2)" />
376
+ </t:call>
377
+ <t:expect label="Numeric literal" select="'-1.2'" />
378
+ </t:scenario>
379
+
380
+ </t:scenario>
381
+
382
+ <t:scenario label="xs:double">
383
+ <t:scenario label="1.234e56">
384
+ <t:call function="test:report-atomic-value">
385
+ <t:param select="xs:double(1.234e56)" />
386
+ </t:call>
387
+ <t:expect label="Constructor" test="matches($x:result, 'xs:double\(''.+E.+''\)')" />
388
+ </t:scenario>
389
+
390
+ <t:scenario label="1">
391
+ <t:call function="test:report-atomic-value">
392
+ <t:param select="xs:double(1)" />
393
+ </t:call>
394
+ <t:expect label="Constructor" select="'xs:double(''1'')'" />
395
+ </t:scenario>
396
+
397
+ <t:scenario label="NaN">
398
+ <t:call function="test:report-atomic-value">
399
+ <t:param select="xs:double('NaN')" />
400
+ </t:call>
401
+ <t:expect label="Constructor" select="'xs:double(''NaN'')'" />
402
+ </t:scenario>
403
+
404
+ <t:scenario label="INF">
405
+ <t:call function="test:report-atomic-value">
406
+ <t:param select="xs:double('INF')" />
407
+ </t:call>
408
+ <t:expect label="Constructor" select="'xs:double(''INF'')'" />
409
+ </t:scenario>
410
+
411
+ <t:scenario label="-INF">
412
+ <t:call function="test:report-atomic-value">
413
+ <t:param select="xs:double('-INF')" />
414
+ </t:call>
415
+ <t:expect label="Constructor" select="'xs:double(''-INF'')'" />
416
+ </t:scenario>
417
+
418
+ </t:scenario>
419
+
420
+ <t:scenario label="xs:QName">
421
+ <t:scenario label="No namespace">
422
+ <t:call function="test:report-atomic-value">
423
+ <t:param select="xs:QName('foo')" />
424
+ </t:call>
425
+ <t:expect label="Function" select="'QName('''', ''foo'')'" />
426
+ </t:scenario>
427
+
428
+ <t:scenario label="In namespace, with prefix">
429
+ <t:call function="test:report-atomic-value">
430
+ <t:param select="xs:QName('x:foo')" />
431
+ </t:call>
432
+ <t:expect label="Function" select="'QName(''http://www.jenitennison.com/xslt/xspec'', ''x:foo'')'" />
433
+ </t:scenario>
434
+
435
+ <t:scenario label="In namespace, without prefix">
436
+ <t:call function="test:report-atomic-value">
437
+ <t:param select="QName('x-urn:test:report-atomic-value', 'foo')" />
438
+ </t:call>
439
+ <t:expect label="Function" select="'QName(''x-urn:test:report-atomic-value'', ''foo'')'" />
440
+ </t:scenario>
441
+ </t:scenario>
442
+
443
+ <t:scenario label="Other types that enters xsl:otherwise branch of the function">
444
+ <t:scenario label="xs:untypedAtomic">
445
+ <t:call function="test:report-atomic-value">
446
+ <t:param select="xs:untypedAtomic('foo')" />
447
+ </t:call>
448
+ <t:expect label="Constructor" select="'xs:untypedAtomic(''foo'')'" />
449
+ </t:scenario>
450
+ </t:scenario>
451
+
452
+ </t:scenario>
453
+
454
+ <!--
455
+ Function test:atom-type
456
+ http://www.w3.org/TR/xslt20/#built-in-types
457
+ -->
458
+ <t:scenario label="test:atom-type">
459
+
460
+ <!-- TODO: Most of these scenarios fail on XQuery
461
+ xspec/xspec#58 has not been implemented for XQuery -->
462
+
463
+ <t:scenario label="All the primitive atomic types defined in [XML Schema Part 2], with the exception of xs:NOTATION">
464
+
465
+ <t:scenario label="xs:string">
466
+ <t:call function="test:atom-type">
467
+ <t:param select="xs:string('foo')" />
468
+ </t:call>
469
+ <t:expect label="xs:string" select="'xs:string'"/>
470
+ </t:scenario>
471
+
472
+ <t:scenario label="xs:boolean">
473
+ <t:call function="test:atom-type">
474
+ <t:param select="xs:boolean('true')" />
475
+ </t:call>
476
+ <t:expect label="xs:boolean" select="'xs:boolean'"/>
477
+ </t:scenario>
478
+
479
+ <t:scenario label="xs:decimal">
480
+ <t:call function="test:atom-type">
481
+ <t:param select="xs:decimal(1)" />
482
+ </t:call>
483
+ <t:expect label="xs:decimal" select="'xs:decimal'"/>
484
+ </t:scenario>
485
+
486
+ <t:scenario label="xs:double">
487
+ <t:call function="test:atom-type">
488
+ <t:param select="xs:double(1)" />
489
+ </t:call>
490
+ <t:expect label="xs:double" select="'xs:double'"/>
491
+ </t:scenario>
492
+
493
+ <t:scenario label="xs:float">
494
+ <t:call function="test:atom-type">
495
+ <t:param select="xs:float(1)" />
496
+ </t:call>
497
+ <t:expect label="xs:float" select="'xs:float'"/>
498
+ </t:scenario>
499
+
500
+ <t:scenario label="xs:date">
501
+ <t:call function="test:atom-type">
502
+ <t:param select="xs:date('1111-11-11')" />
503
+ </t:call>
504
+ <t:expect label="xs:date" select="'xs:date'"/>
505
+ </t:scenario>
506
+
507
+ <t:scenario label="xs:time">
508
+ <t:call function="test:atom-type">
509
+ <t:param select="xs:time('11:11:11')" />
510
+ </t:call>
511
+ <t:expect label="xs:time" select="'xs:time'"/>
512
+ </t:scenario>
513
+
514
+ <t:scenario label="xs:dateTime">
515
+ <t:call function="test:atom-type">
516
+ <t:param select="xs:dateTime('1111-11-11T11:11:11')" />
517
+ </t:call>
518
+ <t:expect label="xs:dateTime" select="'xs:dateTime'"/>
519
+ </t:scenario>
520
+
521
+ <t:scenario label="xs:duration">
522
+ <t:call function="test:atom-type">
523
+ <t:param select="xs:duration('PT1S')" />
524
+ </t:call>
525
+ <t:expect label="xs:duration" select="'xs:duration'"/>
526
+ </t:scenario>
527
+
528
+ <t:scenario label="xs:QName">
529
+ <t:call function="test:atom-type">
530
+ <t:param select="xs:QName('foo')" />
531
+ </t:call>
532
+ <t:expect label="xs:QName" select="'xs:QName'"/>
533
+ </t:scenario>
534
+
535
+ <t:scenario label="xs:anyURI">
536
+ <t:call function="test:atom-type">
537
+ <t:param select="xs:anyURI('foo')" />
538
+ </t:call>
539
+ <t:expect label="xs:anyURI" select="'xs:anyURI'"/>
540
+ </t:scenario>
541
+
542
+ <t:scenario label="xs:gDay">
543
+ <t:call function="test:atom-type">
544
+ <t:param select="xs:gDay('---11')" />
545
+ </t:call>
546
+ <t:expect label="xs:gDay" select="'xs:gDay'"/>
547
+ </t:scenario>
548
+
549
+ <t:scenario label="xs:gMonthDay">
550
+ <t:call function="test:atom-type">
551
+ <t:param select="xs:gMonthDay('--11-11')" />
552
+ </t:call>
553
+ <t:expect label="xs:gMonthDay" select="'xs:gMonthDay'"/>
554
+ </t:scenario>
555
+
556
+ <t:scenario label="xs:gMonth">
557
+ <t:call function="test:atom-type">
558
+ <t:param select="xs:gMonth('--11')" />
559
+ </t:call>
560
+ <t:expect label="xs:gMonth" select="'xs:gMonth'"/>
561
+ </t:scenario>
562
+
563
+ <t:scenario label="xs:gYearMonth">
564
+ <t:call function="test:atom-type">
565
+ <t:param select="xs:gYearMonth('1111-11')" />
566
+ </t:call>
567
+ <t:expect label="xs:gYearMonth" select="'xs:gYearMonth'"/>
568
+ </t:scenario>
569
+
570
+ <t:scenario label="xs:gYear">
571
+ <t:call function="test:atom-type">
572
+ <t:param select="xs:gYear('1111')" />
573
+ </t:call>
574
+ <t:expect label="xs:gYear" select="'xs:gYear'"/>
575
+ </t:scenario>
576
+
577
+ <t:scenario label="xs:base64Binary">
578
+ <t:call function="test:atom-type">
579
+ <t:param select="xs:base64Binary(xs:hexBinary('11'))" />
580
+ </t:call>
581
+ <t:expect label="xs:base64Binary" select="'xs:base64Binary'"/>
582
+ </t:scenario>
583
+
584
+ <t:scenario label="xs:hexBinary">
585
+ <t:call function="test:atom-type">
586
+ <t:param select="xs:hexBinary('11')" />
587
+ </t:call>
588
+ <t:expect label="xs:hexBinary" select="'xs:hexBinary'"/>
589
+ </t:scenario>
590
+
591
+ </t:scenario>
592
+
593
+ <t:scenario label="The derived atomic type xs:integer defined in [XML Schema Part 2]">
594
+
595
+ <t:scenario label="xs:integer">
596
+ <t:call function="test:atom-type">
597
+ <t:param select="xs:integer(1)" />
598
+ </t:call>
599
+ <t:expect label="xs:integer" select="'xs:integer'"/>
600
+ </t:scenario>
601
+
602
+ </t:scenario>
603
+
604
+ <!-- The types xs:anyType and xs:anySimpleType: Not atomic -->
605
+
606
+ <t:scenario label="The following types defined in [XPath 2.0]">
607
+
608
+ <t:scenario label="xs:yearMonthDuration">
609
+ <t:call function="test:atom-type">
610
+ <t:param select="xs:yearMonthDuration('P1M')" />
611
+ </t:call>
612
+ <t:expect label="xs:yearMonthDuration" select="'xs:yearMonthDuration'"/>
613
+ </t:scenario>
614
+
615
+ <t:scenario label="xs:dayTimeDuration">
616
+ <t:call function="test:atom-type">
617
+ <t:param select="xs:dayTimeDuration('PT1S')" />
618
+ </t:call>
619
+ <t:expect label="xs:dayTimeDuration" select="'xs:dayTimeDuration'"/>
620
+ </t:scenario>
621
+
622
+ <!-- xs:anyAtomicType: Abstract -->
623
+
624
+ <!-- xs:untyped: Not atomic -->
625
+
626
+ <t:scenario label="xs:untypedAtomic">
627
+ <t:call function="test:atom-type">
628
+ <t:param select="xs:untypedAtomic('foo')" />
629
+ </t:call>
630
+ <t:expect label="xs:untypedAtomic" select="'xs:untypedAtomic'"/>
631
+ </t:scenario>
632
+
633
+ </t:scenario>
634
+
635
+ </t:scenario>
636
+ </t:description>