Sorting
Processors can be configured to sort elements. Typical processing includes sorting glossary entries, lists of parameters or reference entries in custom navigation structures, and tables based on the contents of cells in specific columns or rows.
Each element to be sorted must have some inherent text on which it will be sorted. This text is
the base sort phrase for the element. For elements that have titles, the base sort
phrase usually is the content of the <title>
element. For elements that do
not have titles, the base sort phrase might be literal content in the DITA source, or it might be
generated or constructed based on the semantics of the element involved; for example, it could be
constructed from various attribute or metadata values. Processors that perform sorting SHOULD explicitly document how the base sort phrase is determined
for a given element.
The <sort-as>
element can be used to specify an effective sort phrase
when the base sort phrase is not appropriate for sorting. For index terms, the
<index-sort-as>
element can be used to specify the
effective sort phrase for an index entry.
The details of sorting and grouping are implementation specific. Processors might provide
different mechanisms for defining or configuring collation and grouping details. Even where the
<sort-as>
element is specified, two processors might produce different
sorted and grouped results because they might use different collation and grouping rules. For
example, one processor might be configured to sort English terms before non-English terms, while
another might be configured to sort them after. The grouping and sorting of content is subject to
local editorial rules.
When a <sort-as>
element is specified, processors
that sort the containing element MUST
construct the effective sort phrase by prepending the content of the
<sort-as>
element to the base sort phrase. This ensures that two
items with the same <sort-as>
element but different base sort phrases
will sort in the appropriate order.
For example, if a processor uses the content of the
<title>
element as the base sort phrase, and the title of a topic
is "24 Hour Support Hotline" and the value of the <sort-as>
element
is "twenty-four hour", then the effective sort phrase would be "twenty-four hour24 Hour
Support Hotline".