xq-lsp 1.0.0 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +54 -0
- package/README.md +119 -12
- package/builtins/builtins-array.xq +34 -9
- package/builtins/builtins-fn.xq +492 -101
- package/builtins/builtins-map.xq +6 -2
- package/builtins/builtins-math.xq +1 -1
- package/builtins/builtins-xs.xq +63 -0
- package/demo/index.html +151 -0
- package/demo/main.ts +307 -0
- package/demo/package-lock.json +1301 -0
- package/demo/package.json +20 -0
- package/demo/vite.config.ts +15 -0
- package/dist/analyzer.d.ts +28 -0
- package/dist/analyzer.js +128 -40
- package/dist/ast-nodes.d.ts +90 -0
- package/dist/ast-nodes.js +305 -0
- package/dist/builtins.js +3 -0
- package/dist/completion-core.d.ts +17 -0
- package/dist/completion-core.js +113 -0
- package/dist/completion.d.ts +3 -8
- package/dist/completion.js +10 -150
- package/dist/config.d.ts +13 -0
- package/dist/config.js +81 -0
- package/dist/context-item-diagnostics.d.ts +19 -0
- package/dist/context-item-diagnostics.js +133 -0
- package/dist/definition.d.ts +4 -0
- package/dist/definition.js +67 -0
- package/dist/features.d.ts +1 -2
- package/dist/features.js +81 -112
- package/dist/functioncall-diagnostics.d.ts +12 -0
- package/dist/functioncall-diagnostics.js +87 -0
- package/dist/hover-core.d.ts +39 -0
- package/dist/hover-core.js +87 -0
- package/dist/namespace-diagnostics.d.ts +33 -0
- package/dist/namespace-diagnostics.js +108 -0
- package/dist/qt4-worker.d.ts +18 -0
- package/dist/qt4-worker.js +46 -0
- package/dist/runtimes.d.ts +2 -0
- package/dist/runtimes.js +67 -0
- package/dist/server.js +254 -50
- package/dist/test-utils.d.ts +3 -0
- package/dist/test-utils.js +16 -0
- package/dist/typechecker.d.ts +7 -0
- package/dist/typechecker.js +388 -0
- package/dist/types.d.ts +30 -6
- package/dist/types.js +6 -0
- package/dist/unused-diagnostics.d.ts +19 -0
- package/dist/unused-diagnostics.js +202 -0
- package/firebase.json +12 -0
- package/package.json +31 -27
- package/release-please-config.json +16 -0
- package/scripts/generate-existdb.ts +890 -0
- package/src/analyzer.test.ts +163 -0
- package/src/analyzer.ts +139 -41
- package/src/ast-nodes.ts +348 -0
- package/src/builtins.test.ts +32 -0
- package/src/builtins.ts +3 -0
- package/src/completion-core.ts +139 -0
- package/src/completion.test.ts +152 -0
- package/src/completion.ts +11 -173
- package/src/config.ts +90 -0
- package/src/context-item-diagnostics.test.ts +182 -0
- package/src/context-item-diagnostics.ts +143 -0
- package/src/definition.ts +82 -0
- package/src/features.test.ts +110 -0
- package/src/features.ts +87 -128
- package/src/functioncall-diagnostics.test.ts +169 -0
- package/src/functioncall-diagnostics.ts +110 -0
- package/src/hover-core.ts +114 -0
- package/src/lsp-config.test.ts +183 -0
- package/src/namespace-diagnostics.test.ts +162 -0
- package/src/namespace-diagnostics.ts +133 -0
- package/src/qt4-diagnostic.test.ts +271 -0
- package/src/qt4-snaps/app-CatalogCheck.snap +1 -0
- package/src/qt4-snaps/app-Demos.snap +18 -0
- package/src/qt4-snaps/app-Duplicates.snap +1 -0
- package/src/qt4-snaps/app-FunctxFn.snap +162 -0
- package/src/qt4-snaps/app-FunctxFunctx.snap +714 -0
- package/src/qt4-snaps/app-UseCaseCompoundValues.snap +1 -0
- package/src/qt4-snaps/app-UseCaseJSON.snap +1 -0
- package/src/qt4-snaps/app-UseCaseNLP.snap +1 -0
- package/src/qt4-snaps/app-UseCaseNS.snap +1 -0
- package/src/qt4-snaps/app-UseCaseR.snap +1 -0
- package/src/qt4-snaps/app-UseCaseR31.snap +1 -0
- package/src/qt4-snaps/app-UseCaseSEQ.snap +1 -0
- package/src/qt4-snaps/app-UseCaseSGML.snap +1 -0
- package/src/qt4-snaps/app-UseCaseSTRING.snap +1 -0
- package/src/qt4-snaps/app-UseCaseTREE.snap +1 -0
- package/src/qt4-snaps/app-UseCaseXMP.snap +1 -0
- package/src/qt4-snaps/app-Walmsley.snap +1 -0
- package/src/qt4-snaps/app-XMark.snap +10 -0
- package/src/qt4-snaps/array-append.snap +1 -0
- package/src/qt4-snaps/array-filter.snap +10 -0
- package/src/qt4-snaps/array-flatten.snap +1 -0
- package/src/qt4-snaps/array-fold-left.snap +1 -0
- package/src/qt4-snaps/array-fold-right.snap +1 -0
- package/src/qt4-snaps/array-for-each-pair.snap +1 -0
- package/src/qt4-snaps/array-for-each.snap +1 -0
- package/src/qt4-snaps/array-get.snap +1 -0
- package/src/qt4-snaps/array-head.snap +1 -0
- package/src/qt4-snaps/array-insert-before.snap +1 -0
- package/src/qt4-snaps/array-join.snap +1 -0
- package/src/qt4-snaps/array-put.snap +1 -0
- package/src/qt4-snaps/array-remove.snap +1 -0
- package/src/qt4-snaps/array-reverse.snap +1 -0
- package/src/qt4-snaps/array-size.snap +1 -0
- package/src/qt4-snaps/array-sort.snap +1 -0
- package/src/qt4-snaps/array-subarray.snap +1 -0
- package/src/qt4-snaps/array-tail.snap +1 -0
- package/src/qt4-snaps/bin-and.snap +1 -0
- package/src/qt4-snaps/bin-bin.snap +1 -0
- package/src/qt4-snaps/bin-decode-string.snap +1 -0
- package/src/qt4-snaps/bin-encode-string.snap +1 -0
- package/src/qt4-snaps/bin-find.snap +1 -0
- package/src/qt4-snaps/bin-from-octets.snap +1 -0
- package/src/qt4-snaps/bin-hex.snap +1 -0
- package/src/qt4-snaps/bin-insert-before.snap +1 -0
- package/src/qt4-snaps/bin-join.snap +1 -0
- package/src/qt4-snaps/bin-length.snap +1 -0
- package/src/qt4-snaps/bin-not.snap +1 -0
- package/src/qt4-snaps/bin-octal.snap +1 -0
- package/src/qt4-snaps/bin-or.snap +1 -0
- package/src/qt4-snaps/bin-pack-double.snap +1 -0
- package/src/qt4-snaps/bin-pack-float.snap +1 -0
- package/src/qt4-snaps/bin-pack-integer.snap +1 -0
- package/src/qt4-snaps/bin-pad-left.snap +1 -0
- package/src/qt4-snaps/bin-pad-right.snap +1 -0
- package/src/qt4-snaps/bin-part.snap +1 -0
- package/src/qt4-snaps/bin-shift.snap +1 -0
- package/src/qt4-snaps/bin-to-octets.snap +1 -0
- package/src/qt4-snaps/bin-unpack-double.snap +1 -0
- package/src/qt4-snaps/bin-unpack-float.snap +1 -0
- package/src/qt4-snaps/bin-unpack-integer.snap +1 -0
- package/src/qt4-snaps/bin-unpack-unsigned-integer.snap +1 -0
- package/src/qt4-snaps/bin-xor.snap +1 -0
- package/src/qt4-snaps/file-file.snap +1 -0
- package/src/qt4-snaps/fn-QName.snap +1 -0
- package/src/qt4-snaps/fn-abs.snap +1 -0
- package/src/qt4-snaps/fn-adjust-date-to-timezone.snap +1 -0
- package/src/qt4-snaps/fn-adjust-dateTime-to-timezone.snap +1 -0
- package/src/qt4-snaps/fn-adjust-time-to-timezone.snap +1 -0
- package/src/qt4-snaps/fn-analyze-string.snap +1 -0
- package/src/qt4-snaps/fn-apply.snap +1 -0
- package/src/qt4-snaps/fn-available-environment-variables.snap +1 -0
- package/src/qt4-snaps/fn-avg.snap +1 -0
- package/src/qt4-snaps/fn-base-uri.snap +1 -0
- package/src/qt4-snaps/fn-boolean.snap +1 -0
- package/src/qt4-snaps/fn-ceiling.snap +1 -0
- package/src/qt4-snaps/fn-codepoint-equal.snap +1 -0
- package/src/qt4-snaps/fn-codepoints-to-string.snap +1 -0
- package/src/qt4-snaps/fn-collation-key.snap +1 -0
- package/src/qt4-snaps/fn-collection.snap +1 -0
- package/src/qt4-snaps/fn-compare.snap +1 -0
- package/src/qt4-snaps/fn-concat.snap +1 -0
- package/src/qt4-snaps/fn-contains-token.snap +1 -0
- package/src/qt4-snaps/fn-contains.snap +1 -0
- package/src/qt4-snaps/fn-count.snap +1 -0
- package/src/qt4-snaps/fn-current-date.snap +1 -0
- package/src/qt4-snaps/fn-current-dateTime.snap +1 -0
- package/src/qt4-snaps/fn-current-time.snap +1 -0
- package/src/qt4-snaps/fn-data.snap +8 -0
- package/src/qt4-snaps/fn-dateTime.snap +1 -0
- package/src/qt4-snaps/fn-day-from-date.snap +1 -0
- package/src/qt4-snaps/fn-day-from-dateTime.snap +1 -0
- package/src/qt4-snaps/fn-days-from-duration.snap +1 -0
- package/src/qt4-snaps/fn-deep-equal.snap +1 -0
- package/src/qt4-snaps/fn-default-collation.snap +1 -0
- package/src/qt4-snaps/fn-default-language.snap +1 -0
- package/src/qt4-snaps/fn-distinct-values.snap +1 -0
- package/src/qt4-snaps/fn-doc-available.snap +1 -0
- package/src/qt4-snaps/fn-doc.snap +1 -0
- package/src/qt4-snaps/fn-document-uri.snap +8 -0
- package/src/qt4-snaps/fn-element-with-id.snap +1 -0
- package/src/qt4-snaps/fn-empty.snap +1 -0
- package/src/qt4-snaps/fn-encode-for-uri.snap +1 -0
- package/src/qt4-snaps/fn-ends-with.snap +1 -0
- package/src/qt4-snaps/fn-environment-variable.snap +1 -0
- package/src/qt4-snaps/fn-error.snap +128 -0
- package/src/qt4-snaps/fn-escape-html-uri.snap +1 -0
- package/src/qt4-snaps/fn-exactly-one.snap +1 -0
- package/src/qt4-snaps/fn-exists.snap +1 -0
- package/src/qt4-snaps/fn-false.snap +1 -0
- package/src/qt4-snaps/fn-filter.snap +10 -0
- package/src/qt4-snaps/fn-floor.snap +1 -0
- package/src/qt4-snaps/fn-fold-left.snap +1 -0
- package/src/qt4-snaps/fn-fold-right.snap +1 -0
- package/src/qt4-snaps/fn-for-each-pair.snap +10 -0
- package/src/qt4-snaps/fn-for-each.snap +10 -0
- package/src/qt4-snaps/fn-format-date.snap +26 -0
- package/src/qt4-snaps/fn-format-dateTime.snap +1 -0
- package/src/qt4-snaps/fn-format-integer.snap +1 -0
- package/src/qt4-snaps/fn-format-number.snap +38 -0
- package/src/qt4-snaps/fn-format-time.snap +1 -0
- package/src/qt4-snaps/fn-function-arity.snap +1 -0
- package/src/qt4-snaps/fn-function-lookup.snap +1 -0
- package/src/qt4-snaps/fn-function-name.snap +1 -0
- package/src/qt4-snaps/fn-generate-id.snap +18 -0
- package/src/qt4-snaps/fn-has-children.snap +26 -0
- package/src/qt4-snaps/fn-head.snap +1 -0
- package/src/qt4-snaps/fn-hours-from-dateTime.snap +1 -0
- package/src/qt4-snaps/fn-hours-from-duration.snap +1 -0
- package/src/qt4-snaps/fn-hours-from-time.snap +1 -0
- package/src/qt4-snaps/fn-id.snap +10 -0
- package/src/qt4-snaps/fn-idref.snap +10 -0
- package/src/qt4-snaps/fn-implicit-timezone.snap +1 -0
- package/src/qt4-snaps/fn-in-scope-prefixes.snap +26 -0
- package/src/qt4-snaps/fn-index-of.snap +1 -0
- package/src/qt4-snaps/fn-innermost.snap +58 -0
- package/src/qt4-snaps/fn-insert-before.snap +1 -0
- package/src/qt4-snaps/fn-iri-to-uri.snap +1 -0
- package/src/qt4-snaps/fn-json-doc.snap +1 -0
- package/src/qt4-snaps/fn-json-to-xml.snap +1 -0
- package/src/qt4-snaps/fn-lang.snap +10 -0
- package/src/qt4-snaps/fn-last.snap +1 -0
- package/src/qt4-snaps/fn-load-xquery-module.snap +1 -0
- package/src/qt4-snaps/fn-local-name-from-QName.snap +1 -0
- package/src/qt4-snaps/fn-local-name.snap +10 -0
- package/src/qt4-snaps/fn-lower-case.snap +1 -0
- package/src/qt4-snaps/fn-matches.re.snap +1 -0
- package/src/qt4-snaps/fn-matches.snap +1 -0
- package/src/qt4-snaps/fn-max.snap +1 -0
- package/src/qt4-snaps/fn-min.snap +1 -0
- package/src/qt4-snaps/fn-minutes-from-dateTime.snap +1 -0
- package/src/qt4-snaps/fn-minutes-from-duration.snap +1 -0
- package/src/qt4-snaps/fn-minutes-from-time.snap +1 -0
- package/src/qt4-snaps/fn-month-from-date.snap +1 -0
- package/src/qt4-snaps/fn-month-from-dateTime.snap +1 -0
- package/src/qt4-snaps/fn-months-from-duration.snap +1 -0
- package/src/qt4-snaps/fn-name.snap +10 -0
- package/src/qt4-snaps/fn-namespace-uri-for-prefix.snap +1 -0
- package/src/qt4-snaps/fn-namespace-uri-from-QName.snap +1 -0
- package/src/qt4-snaps/fn-namespace-uri.snap +1 -0
- package/src/qt4-snaps/fn-nilled.snap +16 -0
- package/src/qt4-snaps/fn-node-name.snap +32 -0
- package/src/qt4-snaps/fn-normalize-space.snap +1 -0
- package/src/qt4-snaps/fn-normalize-unicode.snap +26 -0
- package/src/qt4-snaps/fn-not.snap +1 -0
- package/src/qt4-snaps/fn-number.snap +1 -0
- package/src/qt4-snaps/fn-one-or-more.snap +1 -0
- package/src/qt4-snaps/fn-outermost.snap +58 -0
- package/src/qt4-snaps/fn-parse-ietf-date.snap +1 -0
- package/src/qt4-snaps/fn-parse-json.snap +1 -0
- package/src/qt4-snaps/fn-parse-xml-fragment.snap +1 -0
- package/src/qt4-snaps/fn-parse-xml.snap +1 -0
- package/src/qt4-snaps/fn-path.snap +26 -0
- package/src/qt4-snaps/fn-position.snap +1 -0
- package/src/qt4-snaps/fn-prefix-from-QName.snap +1 -0
- package/src/qt4-snaps/fn-random-number-generator.snap +1 -0
- package/src/qt4-snaps/fn-remove.snap +1 -0
- package/src/qt4-snaps/fn-replace.snap +330 -0
- package/src/qt4-snaps/fn-resolve-QName.snap +1 -0
- package/src/qt4-snaps/fn-resolve-uri.snap +1 -0
- package/src/qt4-snaps/fn-reverse.snap +1 -0
- package/src/qt4-snaps/fn-root.snap +10 -0
- package/src/qt4-snaps/fn-round-half-to-even.snap +1 -0
- package/src/qt4-snaps/fn-round.snap +8 -0
- package/src/qt4-snaps/fn-seconds-from-dateTime.snap +1 -0
- package/src/qt4-snaps/fn-seconds-from-duration.snap +1 -0
- package/src/qt4-snaps/fn-seconds-from-time.snap +1 -0
- package/src/qt4-snaps/fn-serialize.snap +50 -0
- package/src/qt4-snaps/fn-sort.snap +1 -0
- package/src/qt4-snaps/fn-starts-with.snap +1 -0
- package/src/qt4-snaps/fn-static-base-uri.snap +1 -0
- package/src/qt4-snaps/fn-string-join.snap +8 -0
- package/src/qt4-snaps/fn-string-length.snap +1 -0
- package/src/qt4-snaps/fn-string-to-codepoints.snap +1 -0
- package/src/qt4-snaps/fn-string.snap +10 -0
- package/src/qt4-snaps/fn-subsequence.snap +1 -0
- package/src/qt4-snaps/fn-substring-after.snap +1 -0
- package/src/qt4-snaps/fn-substring-before.snap +1 -0
- package/src/qt4-snaps/fn-substring.snap +1 -0
- package/src/qt4-snaps/fn-sum.snap +1 -0
- package/src/qt4-snaps/fn-tail.snap +1 -0
- package/src/qt4-snaps/fn-timezone-from-date.snap +1 -0
- package/src/qt4-snaps/fn-timezone-from-dateTime.snap +1 -0
- package/src/qt4-snaps/fn-timezone-from-time.snap +1 -0
- package/src/qt4-snaps/fn-tokenize.snap +16 -0
- package/src/qt4-snaps/fn-trace.snap +8 -0
- package/src/qt4-snaps/fn-transform.snap +1 -0
- package/src/qt4-snaps/fn-translate.snap +1 -0
- package/src/qt4-snaps/fn-true.snap +1 -0
- package/src/qt4-snaps/fn-unordered.snap +1 -0
- package/src/qt4-snaps/fn-unparsed-text-available.snap +1 -0
- package/src/qt4-snaps/fn-unparsed-text-lines.snap +1 -0
- package/src/qt4-snaps/fn-unparsed-text.snap +1 -0
- package/src/qt4-snaps/fn-upper-case.snap +1 -0
- package/src/qt4-snaps/fn-uri-collection.snap +1 -0
- package/src/qt4-snaps/fn-xml-to-json.snap +1 -0
- package/src/qt4-snaps/fn-year-from-date.snap +1 -0
- package/src/qt4-snaps/fn-year-from-dateTime.snap +1 -0
- package/src/qt4-snaps/fn-years-from-duration.snap +1 -0
- package/src/qt4-snaps/fn-zero-or-one.snap +1 -0
- package/src/qt4-snaps/map-contains.snap +1 -0
- package/src/qt4-snaps/map-entry.snap +1 -0
- package/src/qt4-snaps/map-find.snap +1 -0
- package/src/qt4-snaps/map-for-each.snap +1 -0
- package/src/qt4-snaps/map-get.snap +1 -0
- package/src/qt4-snaps/map-keys.snap +1 -0
- package/src/qt4-snaps/map-merge.snap +1 -0
- package/src/qt4-snaps/map-put.snap +1 -0
- package/src/qt4-snaps/map-remove.snap +1 -0
- package/src/qt4-snaps/map-size.snap +1 -0
- package/src/qt4-snaps/math-math-acos.snap +1 -0
- package/src/qt4-snaps/math-math-asin.snap +1 -0
- package/src/qt4-snaps/math-math-atan.snap +1 -0
- package/src/qt4-snaps/math-math-atan2.snap +1 -0
- package/src/qt4-snaps/math-math-cos.snap +1 -0
- package/src/qt4-snaps/math-math-exp.snap +1 -0
- package/src/qt4-snaps/math-math-exp10.snap +1 -0
- package/src/qt4-snaps/math-math-log.snap +1 -0
- package/src/qt4-snaps/math-math-log10.snap +1 -0
- package/src/qt4-snaps/math-math-pi.snap +1 -0
- package/src/qt4-snaps/math-math-pow.snap +1 -0
- package/src/qt4-snaps/math-math-sin.snap +1 -0
- package/src/qt4-snaps/math-math-sqrt.snap +1 -0
- package/src/qt4-snaps/math-math-tan.snap +1 -0
- package/src/qt4-snaps/misc-AnnexE.snap +1 -0
- package/src/qt4-snaps/misc-AppendixA4.snap +1 -0
- package/src/qt4-snaps/misc-CombinedErrorCodes.snap +350 -0
- package/src/qt4-snaps/misc-ErrorsAndOptimization.snap +1 -0
- package/src/qt4-snaps/misc-HigherOrderFunctions.snap +32 -0
- package/src/qt4-snaps/misc-JsonTestSuite.snap +1 -0
- package/src/qt4-snaps/misc-StaticContext.snap +8 -0
- package/src/qt4-snaps/misc-Surrogates.snap +34 -0
- package/src/qt4-snaps/misc-UCACollation.snap +1 -0
- package/src/qt4-snaps/misc-XMLEdition.snap +22 -0
- package/src/qt4-snaps/op-QName-equal.snap +1 -0
- package/src/qt4-snaps/op-add-dayTimeDuration-to-date.snap +1 -0
- package/src/qt4-snaps/op-add-dayTimeDuration-to-dateTime.snap +1 -0
- package/src/qt4-snaps/op-add-dayTimeDuration-to-time.snap +1 -0
- package/src/qt4-snaps/op-add-dayTimeDurations.snap +1 -0
- package/src/qt4-snaps/op-add-yearMonthDuration-to-date.snap +1 -0
- package/src/qt4-snaps/op-add-yearMonthDuration-to-dateTime.snap +1 -0
- package/src/qt4-snaps/op-add-yearMonthDurations.snap +1 -0
- package/src/qt4-snaps/op-anyURI-equal.snap +1 -0
- package/src/qt4-snaps/op-anyURI-greater-than.snap +1 -0
- package/src/qt4-snaps/op-anyURI-less-than.snap +1 -0
- package/src/qt4-snaps/op-bang.snap +1 -0
- package/src/qt4-snaps/op-base64Binary-equal.snap +1 -0
- package/src/qt4-snaps/op-base64Binary-greater-than.snap +1 -0
- package/src/qt4-snaps/op-base64Binary-less-than.snap +1 -0
- package/src/qt4-snaps/op-boolean-equal.snap +1 -0
- package/src/qt4-snaps/op-boolean-greater-than.snap +1 -0
- package/src/qt4-snaps/op-boolean-less-than.snap +1 -0
- package/src/qt4-snaps/op-concat.snap +1 -0
- package/src/qt4-snaps/op-concatenate.snap +1 -0
- package/src/qt4-snaps/op-date-equal.snap +1 -0
- package/src/qt4-snaps/op-date-greater-than.snap +1 -0
- package/src/qt4-snaps/op-date-less-than.snap +1 -0
- package/src/qt4-snaps/op-dateTime-equal.snap +1 -0
- package/src/qt4-snaps/op-dateTime-greater-than.snap +1 -0
- package/src/qt4-snaps/op-dateTime-less-than.snap +1 -0
- package/src/qt4-snaps/op-dayTimeDuration-greater-than.snap +1 -0
- package/src/qt4-snaps/op-dayTimeDuration-less-than.snap +1 -0
- package/src/qt4-snaps/op-divide-dayTimeDuration-by-dayTimeDuration.snap +1 -0
- package/src/qt4-snaps/op-divide-dayTimeDuration.snap +1 -0
- package/src/qt4-snaps/op-divide-yearMonthDuration-by-yearMonthDuration.snap +1 -0
- package/src/qt4-snaps/op-divide-yearMonthDuration.snap +1 -0
- package/src/qt4-snaps/op-duration-equal.snap +1 -0
- package/src/qt4-snaps/op-except.snap +1 -0
- package/src/qt4-snaps/op-gDay-equal.snap +1 -0
- package/src/qt4-snaps/op-gMonth-equal.snap +1 -0
- package/src/qt4-snaps/op-gMonthDay-equal.snap +1 -0
- package/src/qt4-snaps/op-gYear-equal.snap +1 -0
- package/src/qt4-snaps/op-gYearMonth-equal.snap +1 -0
- package/src/qt4-snaps/op-hexBinary-equal.snap +1 -0
- package/src/qt4-snaps/op-hexBinary-greater-than.snap +1 -0
- package/src/qt4-snaps/op-hexBinary-less-than.snap +1 -0
- package/src/qt4-snaps/op-intersect.snap +1 -0
- package/src/qt4-snaps/op-is-same-node.snap +1 -0
- package/src/qt4-snaps/op-multiply-dayTimeDuration.snap +1 -0
- package/src/qt4-snaps/op-multiply-yearMonthDuration.snap +1 -0
- package/src/qt4-snaps/op-node-after.snap +1 -0
- package/src/qt4-snaps/op-node-before.snap +1 -0
- package/src/qt4-snaps/op-numeric-add.snap +1 -0
- package/src/qt4-snaps/op-numeric-divide.snap +1 -0
- package/src/qt4-snaps/op-numeric-equal.snap +1 -0
- package/src/qt4-snaps/op-numeric-greater-than.snap +1 -0
- package/src/qt4-snaps/op-numeric-integer-divide.snap +1 -0
- package/src/qt4-snaps/op-numeric-less-than.snap +1 -0
- package/src/qt4-snaps/op-numeric-mod.snap +1 -0
- package/src/qt4-snaps/op-numeric-multiply.snap +1 -0
- package/src/qt4-snaps/op-numeric-subtract.snap +1 -0
- package/src/qt4-snaps/op-numeric-unary-minus.snap +1 -0
- package/src/qt4-snaps/op-numeric-unary-plus.snap +1 -0
- package/src/qt4-snaps/op-same-key.snap +1 -0
- package/src/qt4-snaps/op-string-equal.snap +1 -0
- package/src/qt4-snaps/op-string-greater-than.snap +1 -0
- package/src/qt4-snaps/op-string-less-than.snap +1 -0
- package/src/qt4-snaps/op-subtract-dateTimes.snap +1 -0
- package/src/qt4-snaps/op-subtract-dates.snap +1 -0
- package/src/qt4-snaps/op-subtract-dayTimeDuration-from-date.snap +1 -0
- package/src/qt4-snaps/op-subtract-dayTimeDuration-from-dateTime.snap +1 -0
- package/src/qt4-snaps/op-subtract-dayTimeDuration-from-time.snap +1 -0
- package/src/qt4-snaps/op-subtract-dayTimeDurations.snap +1 -0
- package/src/qt4-snaps/op-subtract-times.snap +1 -0
- package/src/qt4-snaps/op-subtract-yearMonthDuration-from-date.snap +1 -0
- package/src/qt4-snaps/op-subtract-yearMonthDuration-from-dateTime.snap +1 -0
- package/src/qt4-snaps/op-subtract-yearMonthDurations.snap +1 -0
- package/src/qt4-snaps/op-time-equal.snap +1 -0
- package/src/qt4-snaps/op-time-greater-than.snap +1 -0
- package/src/qt4-snaps/op-time-less-than.snap +1 -0
- package/src/qt4-snaps/op-to.snap +1 -0
- package/src/qt4-snaps/op-union.snap +1 -0
- package/src/qt4-snaps/op-yearMonthDuration-greater-than.snap +1 -0
- package/src/qt4-snaps/op-yearMonthDuration-less-than.snap +1 -0
- package/src/qt4-snaps/prod-AllowingEmpty.snap +1 -0
- package/src/qt4-snaps/prod-Annotation.snap +146 -0
- package/src/qt4-snaps/prod-ArrayType.snap +1 -0
- package/src/qt4-snaps/prod-ArrowExpr.snap +1 -0
- package/src/qt4-snaps/prod-AxisStep.abbr.snap +1 -0
- package/src/qt4-snaps/prod-AxisStep.ancestor-or-self.snap +1 -0
- package/src/qt4-snaps/prod-AxisStep.ancestor.snap +1 -0
- package/src/qt4-snaps/prod-AxisStep.following-sibling.snap +1 -0
- package/src/qt4-snaps/prod-AxisStep.following.snap +1 -0
- package/src/qt4-snaps/prod-AxisStep.preceding-sibling.snap +1 -0
- package/src/qt4-snaps/prod-AxisStep.preceding.snap +1 -0
- package/src/qt4-snaps/prod-AxisStep.snap +114 -0
- package/src/qt4-snaps/prod-AxisStep.unabbr.snap +1 -0
- package/src/qt4-snaps/prod-BaseURIDecl.snap +20 -0
- package/src/qt4-snaps/prod-BoundarySpaceDecl.snap +14 -0
- package/src/qt4-snaps/prod-CastExpr.derived.snap +1 -0
- package/src/qt4-snaps/prod-CastExpr.snap +218 -0
- package/src/qt4-snaps/prod-CastableExpr.snap +56 -0
- package/src/qt4-snaps/prod-Comment.snap +1 -0
- package/src/qt4-snaps/prod-CompAttrConstructor.snap +14 -0
- package/src/qt4-snaps/prod-CompCommentConstructor.snap +8 -0
- package/src/qt4-snaps/prod-CompDocConstructor.snap +1 -0
- package/src/qt4-snaps/prod-CompElemConstructor.snap +1 -0
- package/src/qt4-snaps/prod-CompNamespaceConstructor.snap +1 -0
- package/src/qt4-snaps/prod-CompPIConstructor.snap +1 -0
- package/src/qt4-snaps/prod-CompTextConstructor.snap +8 -0
- package/src/qt4-snaps/prod-ConstructionDecl.snap +14 -0
- package/src/qt4-snaps/prod-ContextItemDecl.snap +20 -0
- package/src/qt4-snaps/prod-ContextItemExpr.snap +1 -0
- package/src/qt4-snaps/prod-CopyNamespacesDecl.snap +14 -0
- package/src/qt4-snaps/prod-CountClause.snap +1 -0
- package/src/qt4-snaps/prod-CurlyArrayConstructor.snap +1 -0
- package/src/qt4-snaps/prod-DecimalFormatDecl.snap +92 -0
- package/src/qt4-snaps/prod-DefaultCollationDecl.snap +32 -0
- package/src/qt4-snaps/prod-DefaultNamespaceDecl.snap +92 -0
- package/src/qt4-snaps/prod-DirAttributeList.snap +58 -0
- package/src/qt4-snaps/prod-DirElemConstructor.snap +62 -0
- package/src/qt4-snaps/prod-DirElemContent.namespace.snap +176 -0
- package/src/qt4-snaps/prod-DirElemContent.snap +14 -0
- package/src/qt4-snaps/prod-DirElemContent.whitespace.snap +178 -0
- package/src/qt4-snaps/prod-DirectConstructor.snap +56 -0
- package/src/qt4-snaps/prod-EQName.snap +48 -0
- package/src/qt4-snaps/prod-EmptyOrderDecl.snap +14 -0
- package/src/qt4-snaps/prod-ExtensionExpr.snap +50 -0
- package/src/qt4-snaps/prod-ForClause.snap +158 -0
- package/src/qt4-snaps/prod-FunctionCall.snap +102 -0
- package/src/qt4-snaps/prod-FunctionDecl.snap +256 -0
- package/src/qt4-snaps/prod-GeneralComp.eq.snap +1 -0
- package/src/qt4-snaps/prod-GeneralComp.ge.snap +1 -0
- package/src/qt4-snaps/prod-GeneralComp.gt.snap +1 -0
- package/src/qt4-snaps/prod-GeneralComp.le.snap +1 -0
- package/src/qt4-snaps/prod-GeneralComp.lt.snap +1 -0
- package/src/qt4-snaps/prod-GeneralComp.ne.snap +1 -0
- package/src/qt4-snaps/prod-GroupByClause.snap +8 -0
- package/src/qt4-snaps/prod-IfExpr.snap +1 -0
- package/src/qt4-snaps/prod-InlineFunctionExpr.snap +14 -0
- package/src/qt4-snaps/prod-InstanceofExpr.snap +38 -0
- package/src/qt4-snaps/prod-LetClause.snap +40 -0
- package/src/qt4-snaps/prod-Literal.snap +68 -0
- package/src/qt4-snaps/prod-Lookup.snap +1 -0
- package/src/qt4-snaps/prod-MapConstructor.snap +1 -0
- package/src/qt4-snaps/prod-MapType.snap +8 -0
- package/src/qt4-snaps/prod-ModuleImport.snap +224 -0
- package/src/qt4-snaps/prod-NameTest.snap +164 -0
- package/src/qt4-snaps/prod-NamedFunctionRef.snap +1 -0
- package/src/qt4-snaps/prod-NamespaceDecl.snap +80 -0
- package/src/qt4-snaps/prod-NodeTest.snap +50 -0
- package/src/qt4-snaps/prod-OptionDecl.serialization.snap +14 -0
- package/src/qt4-snaps/prod-OptionDecl.snap +20 -0
- package/src/qt4-snaps/prod-OrExpr.snap +1 -0
- package/src/qt4-snaps/prod-OrderByClause.snap +20 -0
- package/src/qt4-snaps/prod-OrderingModeDecl.snap +14 -0
- package/src/qt4-snaps/prod-ParenthesizedExpr.snap +1 -0
- package/src/qt4-snaps/prod-PathExpr.snap +34 -0
- package/src/qt4-snaps/prod-PositionalVar.snap +26 -0
- package/src/qt4-snaps/prod-Predicate.snap +14 -0
- package/src/qt4-snaps/prod-QuantifiedExpr.snap +164 -0
- package/src/qt4-snaps/prod-ReturnClause.snap +8 -0
- package/src/qt4-snaps/prod-SequenceType.snap +1 -0
- package/src/qt4-snaps/prod-SquareArrayConstructor.snap +1 -0
- package/src/qt4-snaps/prod-StepExpr.snap +1 -0
- package/src/qt4-snaps/prod-StringConstructor.snap +26 -0
- package/src/qt4-snaps/prod-SwitchExpr.snap +1 -0
- package/src/qt4-snaps/prod-TreatExpr.snap +14 -0
- package/src/qt4-snaps/prod-TryCatchExpr.snap +38 -0
- package/src/qt4-snaps/prod-TypeswitchExpr.snap +50 -0
- package/src/qt4-snaps/prod-UnaryLookup.snap +1 -0
- package/src/qt4-snaps/prod-UnorderedExpr.snap +14 -0
- package/src/qt4-snaps/prod-ValueComp.snap +1 -0
- package/src/qt4-snaps/prod-VarDecl.external.snap +82 -0
- package/src/qt4-snaps/prod-VarDecl.snap +146 -0
- package/src/qt4-snaps/prod-VarDefaultValue.snap +8 -0
- package/src/qt4-snaps/prod-VersionDecl.snap +68 -0
- package/src/qt4-snaps/prod-WhereClause.snap +26 -0
- package/src/qt4-snaps/prod-WindowClause.snap +98 -0
- package/src/qt4-snaps/ser-method-adaptive.snap +1 -0
- package/src/qt4-snaps/ser-method-html.snap +1 -0
- package/src/qt4-snaps/ser-method-xml.snap +1 -0
- package/src/qt4-snaps/upd-AdditionalTyping.snap +1 -0
- package/src/qt4-snaps/upd-AddressBookUpdates.snap +1 -0
- package/src/qt4-snaps/upd-AttrDataModelErrs.snap +1 -0
- package/src/qt4-snaps/upd-CommaExpression.snap +1 -0
- package/src/qt4-snaps/upd-Compatibility.snap +1 -0
- package/src/qt4-snaps/upd-ConditionalExpression.snap +1 -0
- package/src/qt4-snaps/upd-DeleteExpressions.snap +1 -0
- package/src/qt4-snaps/upd-FLWORExpression.snap +1 -0
- package/src/qt4-snaps/upd-FullAxis.snap +1 -0
- package/src/qt4-snaps/upd-FunctionCall.snap +1 -0
- package/src/qt4-snaps/upd-FunctionDeclaration.snap +114 -0
- package/src/qt4-snaps/upd-InsertExpressions.snap +1 -0
- package/src/qt4-snaps/upd-MinOther.snap +1 -0
- package/src/qt4-snaps/upd-NSBindingConflictErrs.snap +1 -0
- package/src/qt4-snaps/upd-NamespacesUpdates.snap +1 -0
- package/src/qt4-snaps/upd-NilUpdates.snap +10 -0
- package/src/qt4-snaps/upd-OtherExpressions.snap +1 -0
- package/src/qt4-snaps/upd-ParenthesizedExpressions.snap +1 -0
- package/src/qt4-snaps/upd-PartsUpdates.snap +1 -0
- package/src/qt4-snaps/upd-RelationalDataUpdates.snap +1 -0
- package/src/qt4-snaps/upd-RenameExpressions.snap +1 -0
- package/src/qt4-snaps/upd-ReplaceNode.snap +1 -0
- package/src/qt4-snaps/upd-ReplaceValue.snap +1 -0
- package/src/qt4-snaps/upd-RevalidationDeclarationLax.snap +1 -0
- package/src/qt4-snaps/upd-RevalidationDeclarationLaxUnsupported.snap +1 -0
- package/src/qt4-snaps/upd-RevalidationDeclarationSkip.snap +10 -0
- package/src/qt4-snaps/upd-RevalidationDeclarationSkipUnsupported.snap +1 -0
- package/src/qt4-snaps/upd-RevalidationDeclarationStrict.snap +1 -0
- package/src/qt4-snaps/upd-RevalidationDeclarationStrictUnsupported.snap +1 -0
- package/src/qt4-snaps/upd-RevalidationDeclarationStrictandSkip.snap +1 -0
- package/src/qt4-snaps/upd-SoapUpdates.snap +1 -0
- package/src/qt4-snaps/upd-TransformExpressions.snap +1 -0
- package/src/qt4-snaps/upd-TypeswitchExpression.snap +1 -0
- package/src/qt4-snaps/upd-VariableDeclaration.snap +1 -0
- package/src/qt4-snaps/upd-applyUpdates.snap +1 -0
- package/src/qt4-snaps/upd-fnput-document.snap +1 -0
- package/src/qt4-snaps/upd-mergeUpdates.snap +1 -0
- package/src/qt4-snaps/upd-propagateNamespace.snap +1 -0
- package/src/qt4-snaps/upd-setToUntyped.snap +1 -0
- package/src/qt4-snaps/xs-anyAtomicType.snap +1 -0
- package/src/qt4-snaps/xs-anySimpleType.snap +8 -0
- package/src/qt4-snaps/xs-anyURI.snap +34 -0
- package/src/qt4-snaps/xs-base64Binary.snap +1 -0
- package/src/qt4-snaps/xs-dateTimeStamp.snap +1 -0
- package/src/qt4-snaps/xs-double.snap +1 -0
- package/src/qt4-snaps/xs-error.snap +10 -0
- package/src/qt4-snaps/xs-float.snap +1 -0
- package/src/qt4-snaps/xs-hexBinary.snap +1 -0
- package/src/qt4-snaps/xs-normalizedString.snap +1 -0
- package/src/qt4-snaps/xs-notation.snap +1 -0
- package/src/qt4-snaps/xs-numeric.snap +1 -0
- package/src/qt4-snaps/xs-token.snap +1 -0
- package/src/qt4-worker.ts +63 -0
- package/src/runtimes/existdb/cache.xq +83 -0
- package/src/runtimes/existdb/compression.xq +198 -0
- package/src/runtimes/existdb/console.xq +24 -0
- package/src/runtimes/existdb/contentextraction.xq +31 -0
- package/src/runtimes/existdb/counter.xq +30 -0
- package/src/runtimes/existdb/crypto.xq +97 -0
- package/src/runtimes/existdb/datetime.xq +91 -0
- package/src/runtimes/existdb/file.xq +129 -0
- package/src/runtimes/existdb/ft.xq +325 -0
- package/src/runtimes/existdb/httpclient.xq +118 -0
- package/src/runtimes/existdb/image.xq +65 -0
- package/src/runtimes/existdb/inspect.xq +49 -0
- package/src/runtimes/existdb/kwic.xq +24 -0
- package/src/runtimes/existdb/mail.xq +124 -0
- package/src/runtimes/existdb/ngram.xq +57 -0
- package/src/runtimes/existdb/process.xq +8 -0
- package/src/runtimes/existdb/range.xq +171 -0
- package/src/runtimes/existdb/repo.xq +125 -0
- package/src/runtimes/existdb/request.xq +242 -0
- package/src/runtimes/existdb/response.xq +50 -0
- package/src/runtimes/existdb/scheduler.xq +35 -0
- package/src/runtimes/existdb/session.xq +111 -0
- package/src/runtimes/existdb/sm.xq +497 -0
- package/src/runtimes/existdb/sort.xq +59 -0
- package/src/runtimes/existdb/system.xq +267 -0
- package/src/runtimes/existdb/transform.xq +88 -0
- package/src/runtimes/existdb/util.xq +860 -0
- package/src/runtimes/existdb/validation.xq +83 -0
- package/src/runtimes/existdb/xmldb.xq +482 -0
- package/src/runtimes/existdb/xmldiff.xq +22 -0
- package/src/runtimes/fonto/fonto.xq +164 -0
- package/src/runtimes.test.ts +152 -0
- package/src/runtimes.ts +70 -0
- package/src/server.ts +352 -122
- package/src/test-utils.ts +17 -0
- package/src/typechecker.test.ts +548 -0
- package/src/typechecker.ts +416 -0
- package/src/types.ts +41 -7
- package/src/unused-diagnostics.test.ts +174 -0
- package/src/unused-diagnostics.ts +232 -0
- package/tsconfig.json +3 -3
package/builtins/builtins-fn.xq
CHANGED
|
@@ -1,19 +1,32 @@
|
|
|
1
|
-
module namespace fn="http://www.w3.org/2005/xpath-functions";
|
|
1
|
+
module namespace fn = "http://www.w3.org/2005/xpath-functions";
|
|
2
2
|
|
|
3
3
|
(: ── Accessors ──────────────────────────────────────────────────────────────── :)
|
|
4
4
|
|
|
5
|
-
(:~
|
|
5
|
+
(:~
|
|
6
|
+
: Returns the name of a node as a QName.
|
|
7
|
+
:)
|
|
6
8
|
declare function fn:node-name() as xs:QName? external;
|
|
7
|
-
|
|
9
|
+
|
|
10
|
+
(:~
|
|
11
|
+
: @param $arg The node whose name to return
|
|
12
|
+
:)
|
|
8
13
|
declare function fn:node-name($arg as node()?) as xs:QName? external;
|
|
9
14
|
|
|
10
|
-
(:~
|
|
15
|
+
(:~
|
|
16
|
+
: Returns true if the element has been nilled.
|
|
17
|
+
:)
|
|
11
18
|
declare function fn:nilled() as xs:boolean? external;
|
|
12
|
-
|
|
19
|
+
|
|
20
|
+
(:~
|
|
21
|
+
: @param $arg The node to test
|
|
22
|
+
:)
|
|
13
23
|
declare function fn:nilled($arg as node()?) as xs:boolean? external;
|
|
14
24
|
|
|
15
|
-
(:~
|
|
25
|
+
(:~
|
|
26
|
+
: Returns the string value of the context item.
|
|
27
|
+
:)
|
|
16
28
|
declare function fn:string() as xs:string external;
|
|
29
|
+
|
|
17
30
|
(:~
|
|
18
31
|
: Returns the string value of an item.
|
|
19
32
|
: @param $arg The item to convert to string
|
|
@@ -21,8 +34,11 @@ declare function fn:string() as xs:string external;
|
|
|
21
34
|
:)
|
|
22
35
|
declare function fn:string($arg as item()?) as xs:string external;
|
|
23
36
|
|
|
24
|
-
(:~
|
|
37
|
+
(:~
|
|
38
|
+
: Atomizes the context item.
|
|
39
|
+
:)
|
|
25
40
|
declare function fn:data() as xs:anyAtomicType* external;
|
|
41
|
+
|
|
26
42
|
(:~
|
|
27
43
|
: Atomizes a sequence, extracting typed values from nodes.
|
|
28
44
|
: @param $arg The sequence to atomize
|
|
@@ -30,8 +46,11 @@ declare function fn:data() as xs:anyAtomicType* external;
|
|
|
30
46
|
:)
|
|
31
47
|
declare function fn:data($arg as item()*) as xs:anyAtomicType* external;
|
|
32
48
|
|
|
33
|
-
(:~
|
|
49
|
+
(:~
|
|
50
|
+
: Returns the base URI of the context node.
|
|
51
|
+
:)
|
|
34
52
|
declare function fn:base-uri() as xs:anyURI? external;
|
|
53
|
+
|
|
35
54
|
(:~
|
|
36
55
|
: Returns the base URI of a node.
|
|
37
56
|
: @param $arg The node
|
|
@@ -39,8 +58,11 @@ declare function fn:base-uri() as xs:anyURI? external;
|
|
|
39
58
|
:)
|
|
40
59
|
declare function fn:base-uri($arg as node()?) as xs:anyURI? external;
|
|
41
60
|
|
|
42
|
-
(:~
|
|
61
|
+
(:~
|
|
62
|
+
: Returns the document URI of the context node.
|
|
63
|
+
:)
|
|
43
64
|
declare function fn:document-uri() as xs:anyURI? external;
|
|
65
|
+
|
|
44
66
|
(:~
|
|
45
67
|
: Returns the document URI of a document node.
|
|
46
68
|
: @param $arg The document node
|
|
@@ -50,14 +72,37 @@ declare function fn:document-uri($arg as node()?) as xs:anyURI? external;
|
|
|
50
72
|
|
|
51
73
|
(: ── Error and diagnostics ─────────────────────────────────────────────────── :)
|
|
52
74
|
|
|
53
|
-
(:~
|
|
75
|
+
(:~
|
|
76
|
+
: Raises a dynamic error.
|
|
77
|
+
:)
|
|
54
78
|
declare function fn:error() as empty-sequence() external;
|
|
55
|
-
|
|
79
|
+
|
|
80
|
+
(:~
|
|
81
|
+
: @param $code Error code
|
|
82
|
+
:)
|
|
56
83
|
declare function fn:error($code as xs:QName?) as empty-sequence() external;
|
|
57
|
-
|
|
84
|
+
|
|
85
|
+
(:~
|
|
86
|
+
: @param $code Error code @param $description Error message
|
|
87
|
+
:)
|
|
58
88
|
declare function fn:error($code as xs:QName?, $description as xs:string) as empty-sequence() external;
|
|
59
|
-
|
|
60
|
-
|
|
89
|
+
|
|
90
|
+
(:~
|
|
91
|
+
: @param $code Error code @param $description Error message @param $error-object Additional error data
|
|
92
|
+
:)
|
|
93
|
+
declare function fn:error(
|
|
94
|
+
$code as xs:QName?,
|
|
95
|
+
$description as xs:string,
|
|
96
|
+
$error-object as item()*
|
|
97
|
+
) as empty-sequence() external;
|
|
98
|
+
|
|
99
|
+
(:~
|
|
100
|
+
: Returns the value of the first argument unchanged and emits a diagnostic trace message.
|
|
101
|
+
: @param $value The value to return unchanged
|
|
102
|
+
: @param $label A label for the trace output
|
|
103
|
+
: @return The input value
|
|
104
|
+
:)
|
|
105
|
+
declare function fn:trace($value as item()*) as item()* external;
|
|
61
106
|
|
|
62
107
|
(:~
|
|
63
108
|
: Returns the value of the first argument unchanged and emits a diagnostic trace message.
|
|
@@ -96,6 +141,7 @@ declare function fn:floor($arg as xs:numeric?) as xs:numeric? external;
|
|
|
96
141
|
: @return The nearest integer
|
|
97
142
|
:)
|
|
98
143
|
declare function fn:round($arg as xs:numeric?) as xs:numeric? external;
|
|
144
|
+
|
|
99
145
|
(:~
|
|
100
146
|
: Rounds a number to a specified precision.
|
|
101
147
|
: @param $arg The number to round
|
|
@@ -110,6 +156,7 @@ declare function fn:round($arg as xs:numeric?, $precision as xs:integer) as xs:n
|
|
|
110
156
|
: @return The rounded number
|
|
111
157
|
:)
|
|
112
158
|
declare function fn:round-half-to-even($arg as xs:numeric?) as xs:numeric? external;
|
|
159
|
+
|
|
113
160
|
(:~
|
|
114
161
|
: @param $arg The number to round
|
|
115
162
|
: @param $precision Number of decimal places
|
|
@@ -123,7 +170,10 @@ declare function fn:round-half-to-even($arg as xs:numeric?, $precision as xs:int
|
|
|
123
170
|
: @return The value as xs:double, or NaN if not convertible
|
|
124
171
|
:)
|
|
125
172
|
declare function fn:number($arg as xs:anyAtomicType?) as xs:double external;
|
|
126
|
-
|
|
173
|
+
|
|
174
|
+
(:~
|
|
175
|
+
: Returns the numeric value of the context item.
|
|
176
|
+
:)
|
|
127
177
|
declare function fn:number() as xs:double external;
|
|
128
178
|
|
|
129
179
|
(:~
|
|
@@ -133,13 +183,18 @@ declare function fn:number() as xs:double external;
|
|
|
133
183
|
: @return The formatted string
|
|
134
184
|
:)
|
|
135
185
|
declare function fn:format-number($value as xs:numeric?, $picture as xs:string) as xs:string external;
|
|
186
|
+
|
|
136
187
|
(:~
|
|
137
188
|
: @param $value The number to format
|
|
138
189
|
: @param $picture The picture string
|
|
139
190
|
: @param $decimal-format-name Named decimal format to use
|
|
140
191
|
: @return The formatted string
|
|
141
192
|
:)
|
|
142
|
-
declare function fn:format-number(
|
|
193
|
+
declare function fn:format-number(
|
|
194
|
+
$value as xs:numeric?,
|
|
195
|
+
$picture as xs:string,
|
|
196
|
+
$decimal-format-name as xs:string
|
|
197
|
+
) as xs:string external;
|
|
143
198
|
|
|
144
199
|
(: ── String functions ───────────────────────────────────────────────────────── :)
|
|
145
200
|
|
|
@@ -164,13 +219,18 @@ declare function fn:string-to-codepoints($arg as xs:string?) as xs:integer* exte
|
|
|
164
219
|
: @return -1, 0, or 1
|
|
165
220
|
:)
|
|
166
221
|
declare function fn:compare($comparand1 as xs:string?, $comparand2 as xs:string?) as xs:integer? external;
|
|
222
|
+
|
|
167
223
|
(:~
|
|
168
224
|
: @param $comparand1 First string
|
|
169
225
|
: @param $comparand2 Second string
|
|
170
226
|
: @param $collation Collation URI
|
|
171
227
|
: @return -1, 0, or 1
|
|
172
228
|
:)
|
|
173
|
-
declare function fn:compare(
|
|
229
|
+
declare function fn:compare(
|
|
230
|
+
$comparand1 as xs:string?,
|
|
231
|
+
$comparand2 as xs:string?,
|
|
232
|
+
$collation as xs:string
|
|
233
|
+
) as xs:integer? external;
|
|
174
234
|
|
|
175
235
|
(:~
|
|
176
236
|
: Tests equality of two strings using Unicode codepoint comparison.
|
|
@@ -185,6 +245,7 @@ declare function fn:codepoint-equal($comparand1 as xs:string?, $comparand2 as xs
|
|
|
185
245
|
: @param $arg1 First string
|
|
186
246
|
: @param $arg2 Second string
|
|
187
247
|
: @return Concatenated string
|
|
248
|
+
: @variadic
|
|
188
249
|
:)
|
|
189
250
|
declare function fn:concat($arg1 as xs:anyAtomicType?, $arg2 as xs:anyAtomicType?) as xs:string external;
|
|
190
251
|
|
|
@@ -194,6 +255,7 @@ declare function fn:concat($arg1 as xs:anyAtomicType?, $arg2 as xs:anyAtomicType
|
|
|
194
255
|
: @return The joined string
|
|
195
256
|
:)
|
|
196
257
|
declare function fn:string-join($arg1 as xs:anyAtomicType*) as xs:string external;
|
|
258
|
+
|
|
197
259
|
(:~
|
|
198
260
|
: Joins a sequence of strings using a separator.
|
|
199
261
|
: @param $arg1 The strings to join
|
|
@@ -209,6 +271,7 @@ declare function fn:string-join($arg1 as xs:anyAtomicType*, $arg2 as xs:string)
|
|
|
209
271
|
: @return The substring
|
|
210
272
|
:)
|
|
211
273
|
declare function fn:substring($sourceString as xs:string?, $start as xs:double) as xs:string external;
|
|
274
|
+
|
|
212
275
|
(:~
|
|
213
276
|
: Returns a substring of specified length starting at a position.
|
|
214
277
|
: @param $sourceString The source string
|
|
@@ -216,10 +279,17 @@ declare function fn:substring($sourceString as xs:string?, $start as xs:double)
|
|
|
216
279
|
: @param $length Number of characters
|
|
217
280
|
: @return The substring
|
|
218
281
|
:)
|
|
219
|
-
declare function fn:substring(
|
|
282
|
+
declare function fn:substring(
|
|
283
|
+
$sourceString as xs:string?,
|
|
284
|
+
$start as xs:double,
|
|
285
|
+
$length as xs:double
|
|
286
|
+
) as xs:string external;
|
|
220
287
|
|
|
221
|
-
(:~
|
|
288
|
+
(:~
|
|
289
|
+
: Returns the length of the context item string value.
|
|
290
|
+
:)
|
|
222
291
|
declare function fn:string-length() as xs:integer external;
|
|
292
|
+
|
|
223
293
|
(:~
|
|
224
294
|
: Returns the number of characters in a string.
|
|
225
295
|
: @param $arg The input string
|
|
@@ -227,8 +297,11 @@ declare function fn:string-length() as xs:integer external;
|
|
|
227
297
|
:)
|
|
228
298
|
declare function fn:string-length($arg as xs:string?) as xs:integer external;
|
|
229
299
|
|
|
230
|
-
(:~
|
|
300
|
+
(:~
|
|
301
|
+
: Strips leading and trailing whitespace from the context item.
|
|
302
|
+
:)
|
|
231
303
|
declare function fn:normalize-space() as xs:string external;
|
|
304
|
+
|
|
232
305
|
(:~
|
|
233
306
|
: Strips leading and trailing whitespace and collapses internal whitespace.
|
|
234
307
|
: @param $arg The input string
|
|
@@ -242,6 +315,7 @@ declare function fn:normalize-space($arg as xs:string?) as xs:string external;
|
|
|
242
315
|
: @return The normalized string (NFC form)
|
|
243
316
|
:)
|
|
244
317
|
declare function fn:normalize-unicode($arg as xs:string?) as xs:string external;
|
|
318
|
+
|
|
245
319
|
(:~
|
|
246
320
|
: @param $arg The input string
|
|
247
321
|
: @param $normalizationForm Normalization form: NFC, NFD, NFKC, NFKD, FULLY-NORMALIZED
|
|
@@ -270,7 +344,11 @@ declare function fn:lower-case($arg as xs:string?) as xs:string external;
|
|
|
270
344
|
: @param $transString Replacement characters
|
|
271
345
|
: @return The translated string
|
|
272
346
|
:)
|
|
273
|
-
declare function fn:translate(
|
|
347
|
+
declare function fn:translate(
|
|
348
|
+
$arg as xs:string?,
|
|
349
|
+
$mapString as xs:string,
|
|
350
|
+
$transString as xs:string
|
|
351
|
+
) as xs:string external;
|
|
274
352
|
|
|
275
353
|
(:~
|
|
276
354
|
: Encodes a string for use in a URI component.
|
|
@@ -300,7 +378,10 @@ declare function fn:escape-html-uri($uri as xs:string?) as xs:string external;
|
|
|
300
378
|
: @return true if $arg1 contains $arg2
|
|
301
379
|
:)
|
|
302
380
|
declare function fn:contains($arg1 as xs:string?, $arg2 as xs:string?) as xs:boolean external;
|
|
303
|
-
|
|
381
|
+
|
|
382
|
+
(:~
|
|
383
|
+
: @param $arg1 The string to search @param $arg2 The substring @param $collation Collation URI
|
|
384
|
+
:)
|
|
304
385
|
declare function fn:contains($arg1 as xs:string?, $arg2 as xs:string?, $collation as xs:string) as xs:boolean external;
|
|
305
386
|
|
|
306
387
|
(:~
|
|
@@ -310,8 +391,15 @@ declare function fn:contains($arg1 as xs:string?, $arg2 as xs:string?, $collatio
|
|
|
310
391
|
: @return true if $arg1 starts with $arg2
|
|
311
392
|
:)
|
|
312
393
|
declare function fn:starts-with($arg1 as xs:string?, $arg2 as xs:string?) as xs:boolean external;
|
|
313
|
-
|
|
314
|
-
|
|
394
|
+
|
|
395
|
+
(:~
|
|
396
|
+
: @param $arg1 The string @param $arg2 The prefix @param $collation Collation URI
|
|
397
|
+
:)
|
|
398
|
+
declare function fn:starts-with(
|
|
399
|
+
$arg1 as xs:string?,
|
|
400
|
+
$arg2 as xs:string?,
|
|
401
|
+
$collation as xs:string
|
|
402
|
+
) as xs:boolean external;
|
|
315
403
|
|
|
316
404
|
(:~
|
|
317
405
|
: Tests whether a string ends with a given suffix.
|
|
@@ -320,7 +408,10 @@ declare function fn:starts-with($arg1 as xs:string?, $arg2 as xs:string?, $colla
|
|
|
320
408
|
: @return true if $arg1 ends with $arg2
|
|
321
409
|
:)
|
|
322
410
|
declare function fn:ends-with($arg1 as xs:string?, $arg2 as xs:string?) as xs:boolean external;
|
|
323
|
-
|
|
411
|
+
|
|
412
|
+
(:~
|
|
413
|
+
: @param $arg1 The string @param $arg2 The suffix @param $collation Collation URI
|
|
414
|
+
:)
|
|
324
415
|
declare function fn:ends-with($arg1 as xs:string?, $arg2 as xs:string?, $collation as xs:string) as xs:boolean external;
|
|
325
416
|
|
|
326
417
|
(:~
|
|
@@ -330,8 +421,15 @@ declare function fn:ends-with($arg1 as xs:string?, $arg2 as xs:string?, $collati
|
|
|
330
421
|
: @return The substring before the pattern
|
|
331
422
|
:)
|
|
332
423
|
declare function fn:substring-before($arg1 as xs:string?, $arg2 as xs:string?) as xs:string external;
|
|
333
|
-
|
|
334
|
-
|
|
424
|
+
|
|
425
|
+
(:~
|
|
426
|
+
: @param $arg1 Input @param $arg2 Pattern @param $collation Collation URI
|
|
427
|
+
:)
|
|
428
|
+
declare function fn:substring-before(
|
|
429
|
+
$arg1 as xs:string?,
|
|
430
|
+
$arg2 as xs:string?,
|
|
431
|
+
$collation as xs:string
|
|
432
|
+
) as xs:string external;
|
|
335
433
|
|
|
336
434
|
(:~
|
|
337
435
|
: Returns the part of a string that follows the first occurrence of a pattern.
|
|
@@ -340,8 +438,15 @@ declare function fn:substring-before($arg1 as xs:string?, $arg2 as xs:string?, $
|
|
|
340
438
|
: @return The substring after the pattern
|
|
341
439
|
:)
|
|
342
440
|
declare function fn:substring-after($arg1 as xs:string?, $arg2 as xs:string?) as xs:string external;
|
|
343
|
-
|
|
344
|
-
|
|
441
|
+
|
|
442
|
+
(:~
|
|
443
|
+
: @param $arg1 Input @param $arg2 Pattern @param $collation Collation URI
|
|
444
|
+
:)
|
|
445
|
+
declare function fn:substring-after(
|
|
446
|
+
$arg1 as xs:string?,
|
|
447
|
+
$arg2 as xs:string?,
|
|
448
|
+
$collation as xs:string
|
|
449
|
+
) as xs:string external;
|
|
345
450
|
|
|
346
451
|
(:~
|
|
347
452
|
: Tests whether a string matches a regular expression.
|
|
@@ -350,7 +455,10 @@ declare function fn:substring-after($arg1 as xs:string?, $arg2 as xs:string?, $c
|
|
|
350
455
|
: @return true if the string matches
|
|
351
456
|
:)
|
|
352
457
|
declare function fn:matches($input as xs:string?, $pattern as xs:string) as xs:boolean external;
|
|
353
|
-
|
|
458
|
+
|
|
459
|
+
(:~
|
|
460
|
+
: @param $input The string @param $pattern The regex @param $flags Flags (i, m, s, x)
|
|
461
|
+
:)
|
|
354
462
|
declare function fn:matches($input as xs:string?, $pattern as xs:string, $flags as xs:string) as xs:boolean external;
|
|
355
463
|
|
|
356
464
|
(:~
|
|
@@ -360,9 +468,21 @@ declare function fn:matches($input as xs:string?, $pattern as xs:string, $flags
|
|
|
360
468
|
: @param $replacement The replacement string (may use $0, $1 … back-references)
|
|
361
469
|
: @return The modified string
|
|
362
470
|
:)
|
|
363
|
-
declare function fn:replace(
|
|
364
|
-
|
|
365
|
-
|
|
471
|
+
declare function fn:replace(
|
|
472
|
+
$input as xs:string?,
|
|
473
|
+
$pattern as xs:string,
|
|
474
|
+
$replacement as xs:string
|
|
475
|
+
) as xs:string external;
|
|
476
|
+
|
|
477
|
+
(:~
|
|
478
|
+
: @param $input Input @param $pattern Regex @param $replacement Replacement @param $flags Flags
|
|
479
|
+
:)
|
|
480
|
+
declare function fn:replace(
|
|
481
|
+
$input as xs:string?,
|
|
482
|
+
$pattern as xs:string,
|
|
483
|
+
$replacement as xs:string,
|
|
484
|
+
$flags as xs:string
|
|
485
|
+
) as xs:string external;
|
|
366
486
|
|
|
367
487
|
(:~
|
|
368
488
|
: Splits a string on whitespace, returning a sequence of tokens.
|
|
@@ -370,6 +490,7 @@ declare function fn:replace($input as xs:string?, $pattern as xs:string, $replac
|
|
|
370
490
|
: @return Sequence of token strings
|
|
371
491
|
:)
|
|
372
492
|
declare function fn:tokenize($input as xs:string?) as xs:string* external;
|
|
493
|
+
|
|
373
494
|
(:~
|
|
374
495
|
: Splits a string on a regex delimiter.
|
|
375
496
|
: @param $input The input string
|
|
@@ -377,7 +498,10 @@ declare function fn:tokenize($input as xs:string?) as xs:string* external;
|
|
|
377
498
|
: @return Sequence of token strings
|
|
378
499
|
:)
|
|
379
500
|
declare function fn:tokenize($input as xs:string?, $pattern as xs:string) as xs:string* external;
|
|
380
|
-
|
|
501
|
+
|
|
502
|
+
(:~
|
|
503
|
+
: @param $input Input @param $pattern Delimiter @param $flags Flags
|
|
504
|
+
:)
|
|
381
505
|
declare function fn:tokenize($input as xs:string?, $pattern as xs:string, $flags as xs:string) as xs:string* external;
|
|
382
506
|
|
|
383
507
|
(:~
|
|
@@ -387,8 +511,15 @@ declare function fn:tokenize($input as xs:string?, $pattern as xs:string, $flags
|
|
|
387
511
|
: @return An fn:analyze-string-result element
|
|
388
512
|
:)
|
|
389
513
|
declare function fn:analyze-string($input as xs:string?, $pattern as xs:string) as element() external;
|
|
390
|
-
|
|
391
|
-
|
|
514
|
+
|
|
515
|
+
(:~
|
|
516
|
+
: @param $input Input @param $pattern Regex @param $flags Flags
|
|
517
|
+
:)
|
|
518
|
+
declare function fn:analyze-string(
|
|
519
|
+
$input as xs:string?,
|
|
520
|
+
$pattern as xs:string,
|
|
521
|
+
$flags as xs:string
|
|
522
|
+
) as element() external;
|
|
392
523
|
|
|
393
524
|
(: ── URI functions ──────────────────────────────────────────────────────────── :)
|
|
394
525
|
|
|
@@ -398,6 +529,7 @@ declare function fn:analyze-string($input as xs:string?, $pattern as xs:string,
|
|
|
398
529
|
: @return The resolved absolute URI
|
|
399
530
|
:)
|
|
400
531
|
declare function fn:resolve-uri($relative as xs:string?) as xs:anyURI? external;
|
|
532
|
+
|
|
401
533
|
(:~
|
|
402
534
|
: Resolves a relative URI against a given base URI.
|
|
403
535
|
: @param $relative The relative URI reference
|
|
@@ -495,13 +627,18 @@ declare function fn:reverse($arg as item()*) as item()* external;
|
|
|
495
627
|
: @return Items from $startingLoc to the end
|
|
496
628
|
:)
|
|
497
629
|
declare function fn:subsequence($sourceSeq as item()*, $startingLoc as xs:double) as item()* external;
|
|
630
|
+
|
|
498
631
|
(:~
|
|
499
632
|
: @param $sourceSeq The source sequence
|
|
500
633
|
: @param $startingLoc 1-based start position
|
|
501
634
|
: @param $length Number of items to return
|
|
502
635
|
: @return The subsequence
|
|
503
636
|
:)
|
|
504
|
-
declare function fn:subsequence(
|
|
637
|
+
declare function fn:subsequence(
|
|
638
|
+
$sourceSeq as item()*,
|
|
639
|
+
$startingLoc as xs:double,
|
|
640
|
+
$length as xs:double
|
|
641
|
+
) as item()* external;
|
|
505
642
|
|
|
506
643
|
(:~
|
|
507
644
|
: Returns the items in an implementation-defined order.
|
|
@@ -537,7 +674,10 @@ declare function fn:exactly-one($arg as item()*) as item() external;
|
|
|
537
674
|
: @return Sequence with duplicates removed
|
|
538
675
|
:)
|
|
539
676
|
declare function fn:distinct-values($arg as xs:anyAtomicType*) as xs:anyAtomicType* external;
|
|
540
|
-
|
|
677
|
+
|
|
678
|
+
(:~
|
|
679
|
+
: @param $arg The sequence @param $collation Collation URI
|
|
680
|
+
:)
|
|
541
681
|
declare function fn:distinct-values($arg as xs:anyAtomicType*, $collation as xs:string) as xs:anyAtomicType* external;
|
|
542
682
|
|
|
543
683
|
(:~
|
|
@@ -547,8 +687,15 @@ declare function fn:distinct-values($arg as xs:anyAtomicType*, $collation as xs:
|
|
|
547
687
|
: @return Sequence of 1-based positions
|
|
548
688
|
:)
|
|
549
689
|
declare function fn:index-of($seq as xs:anyAtomicType*, $search as xs:anyAtomicType) as xs:integer* external;
|
|
550
|
-
|
|
551
|
-
|
|
690
|
+
|
|
691
|
+
(:~
|
|
692
|
+
: @param $seq Sequence @param $search Value @param $collation Collation URI
|
|
693
|
+
:)
|
|
694
|
+
declare function fn:index-of(
|
|
695
|
+
$seq as xs:anyAtomicType*,
|
|
696
|
+
$search as xs:anyAtomicType,
|
|
697
|
+
$collation as xs:string
|
|
698
|
+
) as xs:integer* external;
|
|
552
699
|
|
|
553
700
|
(:~
|
|
554
701
|
: Tests whether two sequences are deeply equal.
|
|
@@ -557,8 +704,15 @@ declare function fn:index-of($seq as xs:anyAtomicType*, $search as xs:anyAtomicT
|
|
|
557
704
|
: @return true if the sequences are deeply equal
|
|
558
705
|
:)
|
|
559
706
|
declare function fn:deep-equal($parameter1 as item()*, $parameter2 as item()*) as xs:boolean external;
|
|
560
|
-
|
|
561
|
-
|
|
707
|
+
|
|
708
|
+
(:~
|
|
709
|
+
: @param $parameter1 First @param $parameter2 Second @param $collation Collation URI
|
|
710
|
+
:)
|
|
711
|
+
declare function fn:deep-equal(
|
|
712
|
+
$parameter1 as item()*,
|
|
713
|
+
$parameter2 as item()*,
|
|
714
|
+
$collation as xs:string
|
|
715
|
+
) as xs:boolean external;
|
|
562
716
|
|
|
563
717
|
(:~
|
|
564
718
|
: Returns the number of items in a sequence.
|
|
@@ -580,7 +734,10 @@ declare function fn:avg($arg as xs:anyAtomicType*) as xs:anyAtomicType? external
|
|
|
580
734
|
: @return The maximum value
|
|
581
735
|
:)
|
|
582
736
|
declare function fn:max($arg as xs:anyAtomicType*) as xs:anyAtomicType? external;
|
|
583
|
-
|
|
737
|
+
|
|
738
|
+
(:~
|
|
739
|
+
: @param $arg Sequence @param $collation Collation URI
|
|
740
|
+
:)
|
|
584
741
|
declare function fn:max($arg as xs:anyAtomicType*, $collation as xs:string) as xs:anyAtomicType? external;
|
|
585
742
|
|
|
586
743
|
(:~
|
|
@@ -589,7 +746,10 @@ declare function fn:max($arg as xs:anyAtomicType*, $collation as xs:string) as x
|
|
|
589
746
|
: @return The minimum value
|
|
590
747
|
:)
|
|
591
748
|
declare function fn:min($arg as xs:anyAtomicType*) as xs:anyAtomicType? external;
|
|
592
|
-
|
|
749
|
+
|
|
750
|
+
(:~
|
|
751
|
+
: @param $arg Sequence @param $collation Collation URI
|
|
752
|
+
:)
|
|
593
753
|
declare function fn:min($arg as xs:anyAtomicType*, $collation as xs:string) as xs:anyAtomicType? external;
|
|
594
754
|
|
|
595
755
|
(:~
|
|
@@ -598,6 +758,7 @@ declare function fn:min($arg as xs:anyAtomicType*, $collation as xs:string) as x
|
|
|
598
758
|
: @return The sum, or 0 if empty
|
|
599
759
|
:)
|
|
600
760
|
declare function fn:sum($arg as xs:anyAtomicType*) as xs:anyAtomicType external;
|
|
761
|
+
|
|
601
762
|
(:~
|
|
602
763
|
: @param $arg The sequence
|
|
603
764
|
: @param $zero Value to return for an empty sequence
|
|
@@ -613,7 +774,7 @@ declare function fn:sum($arg as xs:anyAtomicType*, $zero as xs:anyAtomicType?) a
|
|
|
613
774
|
: @param $action Function to apply to each item
|
|
614
775
|
: @return Concatenated results
|
|
615
776
|
:)
|
|
616
|
-
declare function fn:for-each($seq as item()*, $action as function(item()) as item()*) as item()* external;
|
|
777
|
+
declare function fn:for-each($seq as item()*, $action as function (item()) as item()*) as item()* external;
|
|
617
778
|
|
|
618
779
|
(:~
|
|
619
780
|
: Returns items from a sequence for which a predicate is true.
|
|
@@ -621,7 +782,7 @@ declare function fn:for-each($seq as item()*, $action as function(item()) as ite
|
|
|
621
782
|
: @param $f Predicate function
|
|
622
783
|
: @return Items where $f returns true
|
|
623
784
|
:)
|
|
624
|
-
declare function fn:filter($seq as item()*, $f as function(item()) as xs:boolean) as item()* external;
|
|
785
|
+
declare function fn:filter($seq as item()*, $f as function (item()) as xs:boolean) as item()* external;
|
|
625
786
|
|
|
626
787
|
(:~
|
|
627
788
|
: Reduces a sequence to a single value by applying a function from the left.
|
|
@@ -630,7 +791,11 @@ declare function fn:filter($seq as item()*, $f as function(item()) as xs:boolean
|
|
|
630
791
|
: @param $f Combining function
|
|
631
792
|
: @return The accumulated result
|
|
632
793
|
:)
|
|
633
|
-
declare function fn:fold-left(
|
|
794
|
+
declare function fn:fold-left(
|
|
795
|
+
$seq as item()*,
|
|
796
|
+
$zero as item()*,
|
|
797
|
+
$f as function (item()*, item()) as item()*
|
|
798
|
+
) as item()* external;
|
|
634
799
|
|
|
635
800
|
(:~
|
|
636
801
|
: Reduces a sequence to a single value by applying a function from the right.
|
|
@@ -639,7 +804,11 @@ declare function fn:fold-left($seq as item()*, $zero as item()*, $f as function(
|
|
|
639
804
|
: @param $f Combining function
|
|
640
805
|
: @return The accumulated result
|
|
641
806
|
:)
|
|
642
|
-
declare function fn:fold-right(
|
|
807
|
+
declare function fn:fold-right(
|
|
808
|
+
$seq as item()*,
|
|
809
|
+
$zero as item()*,
|
|
810
|
+
$f as function (item(), item()*) as item()*
|
|
811
|
+
) as item()* external;
|
|
643
812
|
|
|
644
813
|
(:~
|
|
645
814
|
: Applies a function pairwise to two sequences.
|
|
@@ -648,7 +817,11 @@ declare function fn:fold-right($seq as item()*, $zero as item()*, $f as function
|
|
|
648
817
|
: @param $action Function to apply to each pair
|
|
649
818
|
: @return Concatenated results
|
|
650
819
|
:)
|
|
651
|
-
declare function fn:for-each-pair(
|
|
820
|
+
declare function fn:for-each-pair(
|
|
821
|
+
$seq1 as item()*,
|
|
822
|
+
$seq2 as item()*,
|
|
823
|
+
$action as function (item(), item()) as item()*
|
|
824
|
+
) as item()* external;
|
|
652
825
|
|
|
653
826
|
(:~
|
|
654
827
|
: Sorts a sequence using the default collation and natural ordering.
|
|
@@ -656,15 +829,23 @@ declare function fn:for-each-pair($seq1 as item()*, $seq2 as item()*, $action as
|
|
|
656
829
|
: @return The sorted sequence
|
|
657
830
|
:)
|
|
658
831
|
declare function fn:sort($seq as item()*) as item()* external;
|
|
659
|
-
|
|
832
|
+
|
|
833
|
+
(:~
|
|
834
|
+
: @param $seq Sequence @param $collation Collation URI or empty
|
|
835
|
+
:)
|
|
660
836
|
declare function fn:sort($seq as item()*, $collation as xs:string?) as item()* external;
|
|
837
|
+
|
|
661
838
|
(:~
|
|
662
839
|
: @param $seq Sequence
|
|
663
840
|
: @param $collation Collation URI or empty
|
|
664
841
|
: @param $key Function that extracts the sort key from an item
|
|
665
842
|
: @return The sorted sequence
|
|
666
843
|
:)
|
|
667
|
-
declare function fn:sort(
|
|
844
|
+
declare function fn:sort(
|
|
845
|
+
$seq as item()*,
|
|
846
|
+
$collation as xs:string?,
|
|
847
|
+
$key as function (item()) as xs:anyAtomicType*
|
|
848
|
+
) as item()* external;
|
|
668
849
|
|
|
669
850
|
(:~
|
|
670
851
|
: Calls a function with arguments supplied as an array.
|
|
@@ -754,8 +935,11 @@ declare function fn:local-name-from-QName($arg as xs:QName?) as xs:NCName? exter
|
|
|
754
935
|
|
|
755
936
|
(: ── Node functions ─────────────────────────────────────────────────────────── :)
|
|
756
937
|
|
|
757
|
-
(:~
|
|
938
|
+
(:~
|
|
939
|
+
: Returns the name of the context node as a string.
|
|
940
|
+
:)
|
|
758
941
|
declare function fn:name() as xs:string external;
|
|
942
|
+
|
|
759
943
|
(:~
|
|
760
944
|
: Returns the name of a node as a string.
|
|
761
945
|
: @param $arg The node
|
|
@@ -763,8 +947,11 @@ declare function fn:name() as xs:string external;
|
|
|
763
947
|
:)
|
|
764
948
|
declare function fn:name($arg as node()?) as xs:string external;
|
|
765
949
|
|
|
766
|
-
(:~
|
|
950
|
+
(:~
|
|
951
|
+
: Returns the local name of the context node.
|
|
952
|
+
:)
|
|
767
953
|
declare function fn:local-name() as xs:string external;
|
|
954
|
+
|
|
768
955
|
(:~
|
|
769
956
|
: Returns the local name of a node.
|
|
770
957
|
: @param $arg The node
|
|
@@ -772,8 +959,11 @@ declare function fn:local-name() as xs:string external;
|
|
|
772
959
|
:)
|
|
773
960
|
declare function fn:local-name($arg as node()?) as xs:string external;
|
|
774
961
|
|
|
775
|
-
(:~
|
|
962
|
+
(:~
|
|
963
|
+
: Returns the namespace URI of the context node.
|
|
964
|
+
:)
|
|
776
965
|
declare function fn:namespace-uri() as xs:anyURI external;
|
|
966
|
+
|
|
777
967
|
(:~
|
|
778
968
|
: Returns the namespace URI of a node.
|
|
779
969
|
: @param $arg The node
|
|
@@ -787,11 +977,17 @@ declare function fn:namespace-uri($arg as node()?) as xs:anyURI external;
|
|
|
787
977
|
: @return true if the node's language matches
|
|
788
978
|
:)
|
|
789
979
|
declare function fn:lang($testlang as xs:string?) as xs:boolean external;
|
|
790
|
-
|
|
980
|
+
|
|
981
|
+
(:~
|
|
982
|
+
: @param $testlang Language @param $node The node to test
|
|
983
|
+
:)
|
|
791
984
|
declare function fn:lang($testlang as xs:string?, $node as node()) as xs:boolean external;
|
|
792
985
|
|
|
793
|
-
(:~
|
|
986
|
+
(:~
|
|
987
|
+
: Returns the root of the tree containing the context node.
|
|
988
|
+
:)
|
|
794
989
|
declare function fn:root() as node() external;
|
|
990
|
+
|
|
795
991
|
(:~
|
|
796
992
|
: Returns the root of the tree containing a node.
|
|
797
993
|
: @param $arg The node
|
|
@@ -799,8 +995,11 @@ declare function fn:root() as node() external;
|
|
|
799
995
|
:)
|
|
800
996
|
declare function fn:root($arg as node()?) as node()? external;
|
|
801
997
|
|
|
802
|
-
(:~
|
|
998
|
+
(:~
|
|
999
|
+
: Returns the path to the context node.
|
|
1000
|
+
:)
|
|
803
1001
|
declare function fn:path() as xs:string? external;
|
|
1002
|
+
|
|
804
1003
|
(:~
|
|
805
1004
|
: Returns an XPath expression that uniquely identifies a node within its document.
|
|
806
1005
|
: @param $arg The node
|
|
@@ -808,8 +1007,11 @@ declare function fn:path() as xs:string? external;
|
|
|
808
1007
|
:)
|
|
809
1008
|
declare function fn:path($arg as node()?) as xs:string? external;
|
|
810
1009
|
|
|
811
|
-
(:~
|
|
1010
|
+
(:~
|
|
1011
|
+
: Tests whether the context node has child nodes.
|
|
1012
|
+
:)
|
|
812
1013
|
declare function fn:has-children() as xs:boolean external;
|
|
1014
|
+
|
|
813
1015
|
(:~
|
|
814
1016
|
: Tests whether a node has child nodes.
|
|
815
1017
|
: @param $node The node to test
|
|
@@ -831,8 +1033,11 @@ declare function fn:innermost($nodes as node()*) as node()* external;
|
|
|
831
1033
|
:)
|
|
832
1034
|
declare function fn:outermost($nodes as node()*) as node()* external;
|
|
833
1035
|
|
|
834
|
-
(:~
|
|
1036
|
+
(:~
|
|
1037
|
+
: Generates a unique ID string for the context node.
|
|
1038
|
+
:)
|
|
835
1039
|
declare function fn:generate-id() as xs:string external;
|
|
1040
|
+
|
|
836
1041
|
(:~
|
|
837
1042
|
: Generates a unique ID string for a node.
|
|
838
1043
|
: @param $arg The node
|
|
@@ -906,50 +1111,109 @@ declare function fn:static-base-uri() as xs:anyURI? external;
|
|
|
906
1111
|
:)
|
|
907
1112
|
declare function fn:dateTime($arg1 as xs:date?, $arg2 as xs:time?) as xs:dateTime? external;
|
|
908
1113
|
|
|
909
|
-
(:~
|
|
1114
|
+
(:~
|
|
1115
|
+
: @param $arg A duration @return The years component
|
|
1116
|
+
:)
|
|
910
1117
|
declare function fn:years-from-duration($arg as xs:duration?) as xs:integer? external;
|
|
911
|
-
|
|
1118
|
+
|
|
1119
|
+
(:~
|
|
1120
|
+
: @param $arg A duration @return The months component
|
|
1121
|
+
:)
|
|
912
1122
|
declare function fn:months-from-duration($arg as xs:duration?) as xs:integer? external;
|
|
913
|
-
|
|
1123
|
+
|
|
1124
|
+
(:~
|
|
1125
|
+
: @param $arg A duration @return The days component
|
|
1126
|
+
:)
|
|
914
1127
|
declare function fn:days-from-duration($arg as xs:duration?) as xs:integer? external;
|
|
915
|
-
|
|
1128
|
+
|
|
1129
|
+
(:~
|
|
1130
|
+
: @param $arg A duration @return The hours component
|
|
1131
|
+
:)
|
|
916
1132
|
declare function fn:hours-from-duration($arg as xs:duration?) as xs:integer? external;
|
|
917
|
-
|
|
1133
|
+
|
|
1134
|
+
(:~
|
|
1135
|
+
: @param $arg A duration @return The minutes component
|
|
1136
|
+
:)
|
|
918
1137
|
declare function fn:minutes-from-duration($arg as xs:duration?) as xs:integer? external;
|
|
919
|
-
|
|
1138
|
+
|
|
1139
|
+
(:~
|
|
1140
|
+
: @param $arg A duration @return The seconds component
|
|
1141
|
+
:)
|
|
920
1142
|
declare function fn:seconds-from-duration($arg as xs:duration?) as xs:decimal? external;
|
|
921
1143
|
|
|
922
|
-
(:~
|
|
1144
|
+
(:~
|
|
1145
|
+
: @param $arg A dateTime @return The year component
|
|
1146
|
+
:)
|
|
923
1147
|
declare function fn:year-from-dateTime($arg as xs:dateTime?) as xs:integer? external;
|
|
924
|
-
|
|
1148
|
+
|
|
1149
|
+
(:~
|
|
1150
|
+
: @param $arg A dateTime @return The month component (1–12)
|
|
1151
|
+
:)
|
|
925
1152
|
declare function fn:month-from-dateTime($arg as xs:dateTime?) as xs:integer? external;
|
|
926
|
-
|
|
1153
|
+
|
|
1154
|
+
(:~
|
|
1155
|
+
: @param $arg A dateTime @return The day-of-month component (1–31)
|
|
1156
|
+
:)
|
|
927
1157
|
declare function fn:day-from-dateTime($arg as xs:dateTime?) as xs:integer? external;
|
|
928
|
-
|
|
1158
|
+
|
|
1159
|
+
(:~
|
|
1160
|
+
: @param $arg A dateTime @return The hours component (0–23)
|
|
1161
|
+
:)
|
|
929
1162
|
declare function fn:hours-from-dateTime($arg as xs:dateTime?) as xs:integer? external;
|
|
930
|
-
|
|
1163
|
+
|
|
1164
|
+
(:~
|
|
1165
|
+
: @param $arg A dateTime @return The minutes component (0–59)
|
|
1166
|
+
:)
|
|
931
1167
|
declare function fn:minutes-from-dateTime($arg as xs:dateTime?) as xs:integer? external;
|
|
932
|
-
|
|
1168
|
+
|
|
1169
|
+
(:~
|
|
1170
|
+
: @param $arg A dateTime @return The seconds component
|
|
1171
|
+
:)
|
|
933
1172
|
declare function fn:seconds-from-dateTime($arg as xs:dateTime?) as xs:decimal? external;
|
|
934
|
-
|
|
1173
|
+
|
|
1174
|
+
(:~
|
|
1175
|
+
: @param $arg A dateTime @return The timezone as a dayTimeDuration
|
|
1176
|
+
:)
|
|
935
1177
|
declare function fn:timezone-from-dateTime($arg as xs:dateTime?) as xs:dayTimeDuration? external;
|
|
936
1178
|
|
|
937
|
-
(:~
|
|
1179
|
+
(:~
|
|
1180
|
+
: @param $arg A date @return The year component
|
|
1181
|
+
:)
|
|
938
1182
|
declare function fn:year-from-date($arg as xs:date?) as xs:integer? external;
|
|
939
|
-
|
|
1183
|
+
|
|
1184
|
+
(:~
|
|
1185
|
+
: @param $arg A date @return The month component (1–12)
|
|
1186
|
+
:)
|
|
940
1187
|
declare function fn:month-from-date($arg as xs:date?) as xs:integer? external;
|
|
941
|
-
|
|
1188
|
+
|
|
1189
|
+
(:~
|
|
1190
|
+
: @param $arg A date @return The day-of-month component (1–31)
|
|
1191
|
+
:)
|
|
942
1192
|
declare function fn:day-from-date($arg as xs:date?) as xs:integer? external;
|
|
943
|
-
|
|
1193
|
+
|
|
1194
|
+
(:~
|
|
1195
|
+
: @param $arg A date @return The timezone as a dayTimeDuration
|
|
1196
|
+
:)
|
|
944
1197
|
declare function fn:timezone-from-date($arg as xs:date?) as xs:dayTimeDuration? external;
|
|
945
1198
|
|
|
946
|
-
(:~
|
|
1199
|
+
(:~
|
|
1200
|
+
: @param $arg A time @return The hours component (0–23)
|
|
1201
|
+
:)
|
|
947
1202
|
declare function fn:hours-from-time($arg as xs:time?) as xs:integer? external;
|
|
948
|
-
|
|
1203
|
+
|
|
1204
|
+
(:~
|
|
1205
|
+
: @param $arg A time @return The minutes component (0–59)
|
|
1206
|
+
:)
|
|
949
1207
|
declare function fn:minutes-from-time($arg as xs:time?) as xs:integer? external;
|
|
950
|
-
|
|
1208
|
+
|
|
1209
|
+
(:~
|
|
1210
|
+
: @param $arg A time @return The seconds component
|
|
1211
|
+
:)
|
|
951
1212
|
declare function fn:seconds-from-time($arg as xs:time?) as xs:decimal? external;
|
|
952
|
-
|
|
1213
|
+
|
|
1214
|
+
(:~
|
|
1215
|
+
: @param $arg A time @return The timezone as a dayTimeDuration
|
|
1216
|
+
:)
|
|
953
1217
|
declare function fn:timezone-from-time($arg as xs:time?) as xs:dayTimeDuration? external;
|
|
954
1218
|
|
|
955
1219
|
(:~
|
|
@@ -958,22 +1222,36 @@ declare function fn:timezone-from-time($arg as xs:time?) as xs:dayTimeDuration?
|
|
|
958
1222
|
: @return The adjusted dateTime
|
|
959
1223
|
:)
|
|
960
1224
|
declare function fn:adjust-dateTime-to-timezone($arg as xs:dateTime?) as xs:dateTime? external;
|
|
1225
|
+
|
|
961
1226
|
(:~
|
|
962
1227
|
: Adjusts a dateTime to a given timezone.
|
|
963
1228
|
: @param $arg The dateTime to adjust
|
|
964
1229
|
: @param $timezone The target timezone, or empty sequence to remove timezone
|
|
965
1230
|
: @return The adjusted dateTime
|
|
966
1231
|
:)
|
|
967
|
-
declare function fn:adjust-dateTime-to-timezone(
|
|
1232
|
+
declare function fn:adjust-dateTime-to-timezone(
|
|
1233
|
+
$arg as xs:dateTime?,
|
|
1234
|
+
$timezone as xs:dayTimeDuration?
|
|
1235
|
+
) as xs:dateTime? external;
|
|
968
1236
|
|
|
969
|
-
(:~
|
|
1237
|
+
(:~
|
|
1238
|
+
: @param $arg Date to adjust @return Adjusted to implicit timezone
|
|
1239
|
+
:)
|
|
970
1240
|
declare function fn:adjust-date-to-timezone($arg as xs:date?) as xs:date? external;
|
|
971
|
-
|
|
1241
|
+
|
|
1242
|
+
(:~
|
|
1243
|
+
: @param $arg Date @param $timezone Target timezone
|
|
1244
|
+
:)
|
|
972
1245
|
declare function fn:adjust-date-to-timezone($arg as xs:date?, $timezone as xs:dayTimeDuration?) as xs:date? external;
|
|
973
1246
|
|
|
974
|
-
(:~
|
|
1247
|
+
(:~
|
|
1248
|
+
: @param $arg Time to adjust @return Adjusted to implicit timezone
|
|
1249
|
+
:)
|
|
975
1250
|
declare function fn:adjust-time-to-timezone($arg as xs:time?) as xs:time? external;
|
|
976
|
-
|
|
1251
|
+
|
|
1252
|
+
(:~
|
|
1253
|
+
: @param $arg Time @param $timezone Target timezone
|
|
1254
|
+
:)
|
|
977
1255
|
declare function fn:adjust-time-to-timezone($arg as xs:time?, $timezone as xs:dayTimeDuration?) as xs:time? external;
|
|
978
1256
|
|
|
979
1257
|
(:~
|
|
@@ -983,18 +1261,49 @@ declare function fn:adjust-time-to-timezone($arg as xs:time?, $timezone as xs:da
|
|
|
983
1261
|
: @return The formatted string
|
|
984
1262
|
:)
|
|
985
1263
|
declare function fn:format-dateTime($value as xs:dateTime?, $picture as xs:string) as xs:string? external;
|
|
986
|
-
(:~ @param $value dateTime @param $picture Picture @param $language Language @param $calendar Calendar @param $place Place :)
|
|
987
|
-
declare function fn:format-dateTime($value as xs:dateTime?, $picture as xs:string, $language as xs:string?, $calendar as xs:string?, $place as xs:string?) as xs:string? external;
|
|
988
1264
|
|
|
989
|
-
(:~
|
|
1265
|
+
(:~
|
|
1266
|
+
: @param $value dateTime @param $picture Picture @param $language Language @param $calendar Calendar @param $place Place
|
|
1267
|
+
:)
|
|
1268
|
+
declare function fn:format-dateTime(
|
|
1269
|
+
$value as xs:dateTime?,
|
|
1270
|
+
$picture as xs:string,
|
|
1271
|
+
$language as xs:string?,
|
|
1272
|
+
$calendar as xs:string?,
|
|
1273
|
+
$place as xs:string?
|
|
1274
|
+
) as xs:string? external;
|
|
1275
|
+
|
|
1276
|
+
(:~
|
|
1277
|
+
: @param $value Date @param $picture Picture @return Formatted date string
|
|
1278
|
+
:)
|
|
990
1279
|
declare function fn:format-date($value as xs:date?, $picture as xs:string) as xs:string? external;
|
|
991
|
-
(:~ @param $value Date @param $picture Picture @param $language Language @param $calendar Calendar @param $place Place :)
|
|
992
|
-
declare function fn:format-date($value as xs:date?, $picture as xs:string, $language as xs:string?, $calendar as xs:string?, $place as xs:string?) as xs:string? external;
|
|
993
1280
|
|
|
994
|
-
(:~
|
|
1281
|
+
(:~
|
|
1282
|
+
: @param $value Date @param $picture Picture @param $language Language @param $calendar Calendar @param $place Place
|
|
1283
|
+
:)
|
|
1284
|
+
declare function fn:format-date(
|
|
1285
|
+
$value as xs:date?,
|
|
1286
|
+
$picture as xs:string,
|
|
1287
|
+
$language as xs:string?,
|
|
1288
|
+
$calendar as xs:string?,
|
|
1289
|
+
$place as xs:string?
|
|
1290
|
+
) as xs:string? external;
|
|
1291
|
+
|
|
1292
|
+
(:~
|
|
1293
|
+
: @param $value Time @param $picture Picture @return Formatted time string
|
|
1294
|
+
:)
|
|
995
1295
|
declare function fn:format-time($value as xs:time?, $picture as xs:string) as xs:string? external;
|
|
996
|
-
|
|
997
|
-
|
|
1296
|
+
|
|
1297
|
+
(:~
|
|
1298
|
+
: @param $value Time @param $picture Picture @param $language Language @param $calendar Calendar @param $place Place
|
|
1299
|
+
:)
|
|
1300
|
+
declare function fn:format-time(
|
|
1301
|
+
$value as xs:time?,
|
|
1302
|
+
$picture as xs:string,
|
|
1303
|
+
$language as xs:string?,
|
|
1304
|
+
$calendar as xs:string?,
|
|
1305
|
+
$place as xs:string?
|
|
1306
|
+
) as xs:string? external;
|
|
998
1307
|
|
|
999
1308
|
(: ── Document and collection functions ──────────────────────────────────────── :)
|
|
1000
1309
|
|
|
@@ -1012,8 +1321,11 @@ declare function fn:doc($uri as xs:string?) as document-node()? external;
|
|
|
1012
1321
|
:)
|
|
1013
1322
|
declare function fn:doc-available($uri as xs:string?) as xs:boolean external;
|
|
1014
1323
|
|
|
1015
|
-
(:~
|
|
1324
|
+
(:~
|
|
1325
|
+
: Returns all documents in the default collection.
|
|
1326
|
+
:)
|
|
1016
1327
|
declare function fn:collection() as item()* external;
|
|
1328
|
+
|
|
1017
1329
|
(:~
|
|
1018
1330
|
: Returns a collection of documents or nodes.
|
|
1019
1331
|
: @param $arg The collection URI
|
|
@@ -1021,8 +1333,11 @@ declare function fn:collection() as item()* external;
|
|
|
1021
1333
|
:)
|
|
1022
1334
|
declare function fn:collection($arg as xs:string?) as item()* external;
|
|
1023
1335
|
|
|
1024
|
-
(:~
|
|
1336
|
+
(:~
|
|
1337
|
+
: Returns the URIs in the default URI collection.
|
|
1338
|
+
:)
|
|
1025
1339
|
declare function fn:uri-collection() as xs:anyURI* external;
|
|
1340
|
+
|
|
1026
1341
|
(:~
|
|
1027
1342
|
: Returns the URIs in a named URI collection.
|
|
1028
1343
|
: @param $arg The collection URI
|
|
@@ -1036,7 +1351,10 @@ declare function fn:uri-collection($arg as xs:string?) as xs:anyURI* external;
|
|
|
1036
1351
|
: @return The file content as a string
|
|
1037
1352
|
:)
|
|
1038
1353
|
declare function fn:unparsed-text($href as xs:string?) as xs:string? external;
|
|
1039
|
-
|
|
1354
|
+
|
|
1355
|
+
(:~
|
|
1356
|
+
: @param $href URI @param $encoding Character encoding
|
|
1357
|
+
:)
|
|
1040
1358
|
declare function fn:unparsed-text($href as xs:string?, $encoding as xs:string) as xs:string? external;
|
|
1041
1359
|
|
|
1042
1360
|
(:~
|
|
@@ -1045,7 +1363,10 @@ declare function fn:unparsed-text($href as xs:string?, $encoding as xs:string) a
|
|
|
1045
1363
|
: @return Sequence of line strings
|
|
1046
1364
|
:)
|
|
1047
1365
|
declare function fn:unparsed-text-lines($href as xs:string?) as xs:string* external;
|
|
1048
|
-
|
|
1366
|
+
|
|
1367
|
+
(:~
|
|
1368
|
+
: @param $href URI @param $encoding Character encoding
|
|
1369
|
+
:)
|
|
1049
1370
|
declare function fn:unparsed-text-lines($href as xs:string?, $encoding as xs:string) as xs:string* external;
|
|
1050
1371
|
|
|
1051
1372
|
(:~
|
|
@@ -1054,7 +1375,10 @@ declare function fn:unparsed-text-lines($href as xs:string?, $encoding as xs:str
|
|
|
1054
1375
|
: @return true if the resource is available
|
|
1055
1376
|
:)
|
|
1056
1377
|
declare function fn:unparsed-text-available($href as xs:string?) as xs:boolean external;
|
|
1057
|
-
|
|
1378
|
+
|
|
1379
|
+
(:~
|
|
1380
|
+
: @param $href URI @param $encoding Character encoding
|
|
1381
|
+
:)
|
|
1058
1382
|
declare function fn:unparsed-text-available($href as xs:string?, $encoding as xs:string) as xs:boolean external;
|
|
1059
1383
|
|
|
1060
1384
|
(:~
|
|
@@ -1078,7 +1402,10 @@ declare function fn:available-environment-variables() as xs:string* external;
|
|
|
1078
1402
|
: @return The matching elements
|
|
1079
1403
|
:)
|
|
1080
1404
|
declare function fn:id($arg as xs:string*) as element()* external;
|
|
1081
|
-
|
|
1405
|
+
|
|
1406
|
+
(:~
|
|
1407
|
+
: @param $arg ID strings @param $node Node in the target document
|
|
1408
|
+
:)
|
|
1082
1409
|
declare function fn:id($arg as xs:string*, $node as node()) as element()* external;
|
|
1083
1410
|
|
|
1084
1411
|
(:~
|
|
@@ -1087,7 +1414,10 @@ declare function fn:id($arg as xs:string*, $node as node()) as element()* extern
|
|
|
1087
1414
|
: @return The matching nodes
|
|
1088
1415
|
:)
|
|
1089
1416
|
declare function fn:idref($arg as xs:string*) as node()* external;
|
|
1090
|
-
|
|
1417
|
+
|
|
1418
|
+
(:~
|
|
1419
|
+
: @param $arg ID strings @param $node Node in the target document
|
|
1420
|
+
:)
|
|
1091
1421
|
declare function fn:idref($arg as xs:string*, $node as node()) as node()* external;
|
|
1092
1422
|
|
|
1093
1423
|
(:~
|
|
@@ -1096,5 +1426,66 @@ declare function fn:idref($arg as xs:string*, $node as node()) as node()* extern
|
|
|
1096
1426
|
: @return The matching elements
|
|
1097
1427
|
:)
|
|
1098
1428
|
declare function fn:element-with-id($arg as xs:string*) as element()* external;
|
|
1099
|
-
|
|
1429
|
+
|
|
1430
|
+
(:~
|
|
1431
|
+
: @param $arg ID strings @param $node Node in the target document
|
|
1432
|
+
:)
|
|
1100
1433
|
declare function fn:element-with-id($arg as xs:string*, $node as node()) as element()* external;
|
|
1434
|
+
|
|
1435
|
+
(:~
|
|
1436
|
+
: Serializes a sequence of items as a string.
|
|
1437
|
+
: @param $arg The sequence of items to serialize
|
|
1438
|
+
: @return The serialized string
|
|
1439
|
+
:)
|
|
1440
|
+
declare function fn:serialize($arg as item()*) as xs:string external;
|
|
1441
|
+
|
|
1442
|
+
(:~
|
|
1443
|
+
: Serializes a sequence of items as a string using the given serialization parameters.
|
|
1444
|
+
: @param $arg The sequence of items to serialize
|
|
1445
|
+
: @param $params Serialization parameters (map or element)
|
|
1446
|
+
: @return The serialized string
|
|
1447
|
+
:)
|
|
1448
|
+
declare function fn:serialize($arg as item()*, $params as item()?) as xs:string external;
|
|
1449
|
+
|
|
1450
|
+
(: ── XQuery 3.0 additions ────────────────────────────────────────────────────── :)
|
|
1451
|
+
|
|
1452
|
+
declare function fn:parse-xml($arg as xs:string?) as document-node(element(*))? external;
|
|
1453
|
+
|
|
1454
|
+
declare function fn:parse-xml-fragment($arg as xs:string?) as document-node()? external;
|
|
1455
|
+
|
|
1456
|
+
declare function fn:format-integer($value as xs:integer?, $picture as xs:string) as xs:string external;
|
|
1457
|
+
declare function fn:format-integer($value as xs:integer?, $picture as xs:string, $lang as xs:string) as xs:string external;
|
|
1458
|
+
|
|
1459
|
+
(: ── XQuery 3.1 additions ────────────────────────────────────────────────────── :)
|
|
1460
|
+
|
|
1461
|
+
declare function fn:json-doc($href as xs:string?) as item()? external;
|
|
1462
|
+
declare function fn:json-doc($href as xs:string?, $options as map(*)) as item()? external;
|
|
1463
|
+
|
|
1464
|
+
declare function fn:parse-json($json-text as xs:string?) as item()? external;
|
|
1465
|
+
declare function fn:parse-json($json-text as xs:string?, $options as map(*)) as item()? external;
|
|
1466
|
+
|
|
1467
|
+
declare function fn:json-to-xml($json-text as xs:string?) as document-node()? external;
|
|
1468
|
+
declare function fn:json-to-xml($json-text as xs:string?, $options as map(*)) as document-node()? external;
|
|
1469
|
+
|
|
1470
|
+
declare function fn:xml-to-json($input as node()?) as xs:string? external;
|
|
1471
|
+
declare function fn:xml-to-json($input as node()?, $options as map(*)) as xs:string? external;
|
|
1472
|
+
|
|
1473
|
+
declare function fn:parse-ietf-date($value as xs:string?) as xs:dateTime? external;
|
|
1474
|
+
|
|
1475
|
+
declare function fn:collation-key($key as xs:string) as xs:base64Binary external;
|
|
1476
|
+
declare function fn:collation-key($key as xs:string, $collation as xs:string) as xs:base64Binary external;
|
|
1477
|
+
|
|
1478
|
+
declare function fn:contains-token($input as xs:string*, $token as xs:string) as xs:boolean external;
|
|
1479
|
+
declare function fn:contains-token($input as xs:string*, $token as xs:string, $collation as xs:string) as xs:boolean external;
|
|
1480
|
+
|
|
1481
|
+
declare function fn:random-number-generator() as map(xs:string, item()) external;
|
|
1482
|
+
declare function fn:random-number-generator($seed as xs:anyAtomicType?) as map(xs:string, item()) external;
|
|
1483
|
+
|
|
1484
|
+
declare function fn:transform($options as map(xs:string, item()*)) as map(xs:string, item()*) external;
|
|
1485
|
+
|
|
1486
|
+
declare function fn:load-xquery-module($uri as xs:string) as map(xs:string, item()*) external;
|
|
1487
|
+
declare function fn:load-xquery-module($uri as xs:string, $options as map(xs:string, item()*)) as map(xs:string, item()*) external;
|
|
1488
|
+
|
|
1489
|
+
(: ── XQuery Update Facility ──────────────────────────────────────────────────── :)
|
|
1490
|
+
|
|
1491
|
+
declare function fn:put($node as node(), $uri as xs:string) as empty-sequence() external;
|