From 34078f1348e667715a821b34bc460b5f820d8a6b Mon Sep 17 00:00:00 2001 From: Michael Kay Date: Fri, 3 Jan 2025 20:05:52 +0000 Subject: [PATCH] Expound on the capabilities of collations --- .../src/function-catalog.xml | 20 +++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/specifications/xpath-functions-40/src/function-catalog.xml b/specifications/xpath-functions-40/src/function-catalog.xml index 3b44fb539..198583d80 100644 --- a/specifications/xpath-functions-40/src/function-catalog.xml +++ b/specifications/xpath-functions-40/src/function-catalog.xml @@ -24828,7 +24828,7 @@ return map:build($titles/title, fn($title) { $title/ix }) - @@ -24838,7 +24838,8 @@ return map:build($titles/title, fn($title) { $title/ix }) focus-independent -

Asks whether a collation URI is recognized by the implementation.

+

Asks whether a collation URI is recognized by the implementation, + and whether it has required properties.

The first argument is a candidate collation URI.

@@ -24847,12 +24848,12 @@ return map:build($titles/title, fn($title) { $title/ix }) is a sequence containing zero or more of the following:

-

equality indicates that the intended purpose of the collation - URI is to compare strings for equality, for example in functions such as - fn:index-of or fn:deep-equal.

-

sort indicates that the intended purpose of the collation - URI is to sort or compare different strings in a collating sequence, for example - in functions such as fn:sort or fn:max.

+

compare indicates that the intended purpose of the collation + URI is to compare strings for equality or ordering, for example in functions such as + fn:index-of, fn:deep-equal, + fn:compare, and fn:sort.

+

key indicates that the intended purpose of the collation + URI is to obtain collation keys for strings using the fn:collation-key.

substring indicates that the intended purpose of the collation URI is to establish whether one string is a substring of another, for example in functions such as fn:contains or fn:starts-with.

@@ -24986,6 +24987,9 @@ return map:build($titles/title, fn($title) { $title/ix }) where $collation allows the collation to be chosen dynamically.

Note that xs:base64Binary becomes an ordered type in XPath 3.1, making binary collation keys possible.

+ +

The fn:collation-available can be used to ask whether a particular + collation is capable of delivering collation keys.