Collations for Ancient Languages in XSLT and XQuery: Difference between revisions

From The Digital Classicist Wiki
Jump to navigation Jump to search
(Started page)
 
(→‎Syriac: specified Saxon)
Line 11: Line 11:


===Syriac===
===Syriac===
* Syriac Reference Portal: romanized transliteration scheme: [https://github.com/srophe/srp-places-app/blob/master/xsl/collations.xsl#L8 definition] and [https://github.com/srophe/srp-places-app/blob/master/xsl/placepage.xsl#L334 application]
* Syriac Reference Portal: romanized transliteration scheme: [https://github.com/srophe/srp-places-app/blob/master/xsl/collations.xsl#L8 definition] and [https://github.com/srophe/srp-places-app/blob/master/xsl/placepage.xsl#L334 application] -- intended to work with the Saxon engine.


[[category:Unicode]]
[[category:Unicode]]

Revision as of 17:38, 20 February 2014

In using XLST and XQuery style sheets, classicists will find the need to alphabetize their material in specialized manners. For example, scholars working with Latin may wish to conflate the i with the j and the u with the v, and those working with Greek may wish to have the ϙ (qoppa) collated in the alphabet, or to include characters that are outside the Greek and Coptic and Greek Extended planes.

The W3C recommendations on XSLT (1.0, 2.0, 3.0) and XQuery (1.0, 3.0) provide for collations through attributes such as @collation, but they leave to individual transformation engines the decisions on how to construct and retrieve specific collations.

XSLT-friendly collations that address the needs of those working with ancient languages are few and far between. Many require customized collations.

Examples of XSLT/XQuery Collations

Greek

Latin

Syriac

  • Syriac Reference Portal: romanized transliteration scheme: definition and application -- intended to work with the Saxon engine.

Alternatives

  • It is possible to use the fn:translate() function as a processor-independent collation method. An example, where one wishes to sort by a sequence of Greek words stored in the variable $gr (select spaces have been introduced, to improve display on the screen):

<sort select="translate($gr,'ἀἁἂἃἄἅἆἇἈἉἊἋἌἍἎἏὰάᾀᾁᾂᾃᾄᾅᾆᾇᾈᾉᾊᾋᾌᾍᾎᾏᾰᾱᾲᾳᾴᾶᾷᾸᾹᾺΆᾼΆΑάα ΒβϐΓγΔδἐἑἒἓἔἕἘἙἚἛἜἝὲέῈΈΈΕέεϵ϶ΖζἠἡἢἣἤἥἦἧἨἩἪἫἬἭἮἯὴήᾐᾑᾒᾓᾔᾕᾖᾗᾘᾙᾚᾛᾜᾝᾞᾟῂῃῄῆῇῊΉῌͰͱΉΗήη ΘθϑϴἰἱἲἳἴἵἶἷἸἹἺἻἼἽἾἿὶίῐῑῒΐῖῗῘῙῚΊΊΐΙΪίιϊϳΚκϏϗϰΛλΜμΝνΞξὀὁὂὃὄὅὈὉὊὋὌὍὸόῸΌΌΟοόΠπϺϻῤῥῬΡρϱϼ ΣςσϲϹϽϾϿΤτὐὑὒὓὔὕὖὗὙὛὝὟὺύῠῡῢΰῦῧῨῩῪΎΎΥΫΰυϋύϒϓϔΦφϕΧχΨψ ὠὡὢὣὤὥὦὧὨὩὪὫὬὭὮὯὼώᾠᾡᾢᾣᾤᾥᾦᾧᾨᾩᾪᾫᾬᾭᾮᾯῲῳῴῶῷῺΏῼΏΩωώϖ ϚϛϜϝϞϟϘϙͲͳϠϡϷϸϢϣϤϥϦϧϨϩϪϫϬϭϮϯ᾽ι᾿῀῁῍῎῏῝῞῟῭΅`´῾ʹ͵Ͷͷͺͻͼͽ;΄΅·', 'αααααααααααααααααααααααααααααααααααααααααααααααααα βββγγδδεεεεεεεεεεεεεεεεεεεεεεζζηηηηηηηηηηηηηηηηηηηηηηηηηηηηηηηηηηηηηηηηηηηηηηηη θθθθιιιιιιιιιιιιιιιιιιιιιιιιιιιιιιιιιιιικκκκκλλμμννξξοοοοοοοοοοοοοοοοοοοοππϻϻρρρρρρρ σσσσσσσσττυυυυυυυυυυυυυυυυυυυυυυυυυυυυυυυυυυφφφχχψψ ωωωωωωωωωωωωωωωωωωωωωωωωωωωωωωωωωωωωωωωωωωωωωωω ϛϛϝϝϟϟϙϙϠϠϡϡϸϸϣϣϥϥϧϧϩϩϫϫϭϭϯϯ')"/>