私はアルファベット順にソートしなければならない本のタイトルを含むこの非常に些細な XML ファイルを持っています。 la、le、les、de、den、det....(など) は、ソート時に考慮されます。
したがって、望ましいソート順は次 のとおりです。 高度な教授法 -工芸品、技能、知識の文化的伝達 -空港での1日-ダイナミックな中世 -数学、科学、技術の共同推進- Das Kapital - Den v etenskapliga Revolutionen -ダミー用のX ML
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="indicators.xsl"?>
<report>
<catalog>
<marc>
<marcEntry tag="245" label="Title" ind="00">XML for dummies</marcEntry>
</marc>
</catalog>
<catalog>
<marc>
<marcEntry tag="245" label="Title" ind="10">Advanced teaching methods.</marcEntry>
</marc>
</catalog>
<catalog>
<marc>
<marcEntry tag="245" label="Title" ind="04">Das Kapital</marcEntry>
</marc>
</catalog>
<catalog>
<marc>
<marcEntry tag="245" label="Title" ind="14">The cultural transmission of artefacts, skills and knowledge</marcEntry>
</marc>
</catalog>
<catalog>
<marc>
<marcEntry tag="245" label="Title" ind="12">A day at the airport</marcEntry>
</marc>
</catalog>
<catalog>
<marc>
<marcEntry tag="245" label="Title" ind="14">The dynamic middle ages</marcEntry>
</marc>
</catalog>
<catalog>
<marc>
<marcEntry tag="245" label="Title" ind="12">A joint promotion of mathematics, science and technology</marcEntry>
</marc>
</catalog>
<catalog>
<marc>
<marcEntry tag="245" label="Title" ind="04">Den vetenskapliga revolutionen</marcEntry>
</marc>
</catalog>
</report>
ind 属性の 2 桁目でソート時にジャンプする文字数: ind='00' または ind='10' の場合
<xsl:sort select="substring(marc/marcEntry[@tag='245'],1)"/>
ind='01' または ind='11' の場合
<xsl:sort select="substring(marc/marcEntry[@tag='245'],2)"/>
など、If ind='09' または ind='19' まで続きます。
<xsl:sort select="substring(marc/marcEntry[@tag='245'],10)"/>
さらに複雑なことに、属性 ind は他のタグやラベルと一緒に表示できます。その場合、ind はソートに関係ありません。
どこから始めればよいかまったくわかりません