p:text-sort-030 (AB)

Tests p:text-sort: If collation is used, lang and case-order are ignored.

Test is expected to pass.

The pipeline

<p:declare-step xmlns:p="http://www.w3.org/ns/xproc"
                xmlns:t="http://xproc.org/ns/testsuite/3.0" version="3.0">
   <p:output port="result"/>
   <p:text-sort lang="de" case-order="upper-first"
                collation="http://www.w3.org/2005/xpath-functions/collation/codepoint">
      <p:with-input>
         <p:inline content-type="text/plain">b
a
ä
B
A
Ä</p:inline>
      </p:with-input>
   </p:text-sort>
   <p:wrap-sequence wrapper="wrapper"/>
</p:declare-step>

Result

<wrapper xmlns:t="http://xproc.org/ns/testsuite/3.0">A
B
a
b
Ä
ä
</wrapper>

Schematron checks

<s:schema xmlns="http://www.w3.org/1999/xhtml"
          xmlns:s="http://purl.oclc.org/dsdl/schematron" xmlns:t="http://xproc.org/ns/testsuite/3.0"
          queryBinding="xslt2">
   <s:pattern>
      <s:rule context="/">
         <s:assert test="wrapper">The root element is not wrapper.</s:assert>
         <s:assert test="wrapper/text()='A
B
a
b
Ä
ä
'">Text is not sorted correctly.</s:assert>
      </s:rule>
   </s:pattern>
</s:schema>

Revision history

27 Mar 2024, Norm Tovey-Walsh
Corrected URI for Unicode codepoint collation
03 Sep 2022, Achim Berndzen
Initial commit