Novinky a zajímavosti ze světa IS MU

RSS Máte-li zájem, přihlaste se k odběru novinek e-mailem. Novinky můžete odebírat také pomocí RSS nebo si zařaďte blog mezi sledované, pokud jste uživatel IS MU.
This blog is written by
PhotographsFI:Vývojový tým IS MU, Mgr. Eva Zárybnická, 206552
Blog owners: FI:Vývojový tým IS MU, Mgr. Eva Zárybnická, 206552
Right to read: anyone on the Internet, a specific group of users: FI:CVT FI
Right to post comments: a specific group of users: FI:CVT FI
16. 8.
2006

Unicode - podpora všech znaků v IS MU

  • RSS
Not rated yet.
Novinky

Na Masarykově univerzitě s rozvojem e-learningu v Informačním systému vznikla potřeba vkládat do aplikací texty v cizím jazyce (ruština, francouzština, japonština aj.), jejichž písmo zahrnuje znaky, které nejsou ve středoevropských jazycích běžné. Například může učitel chtít studentům do interaktivních osnov nebo do otázek pro odpovědníky vkládat text v příslušném jazyce, student může potřebovat odpovídat na odpovědníky v tomtéž cizím jazyce, vzájemně mohou diskutovat v předmětových diskusních fórech ve vyučovaném jazyce.

Tyto jazyky si nevystačí se znaky dostupnými ve znakových sadách středoevropských jazyků, a proto Informační systém Masarykovy univerzity nyní běží s podporou Unicode znaků (univerzální sada znaků).
Interně se používá kódování UTF-8 (Universal Transformation Format, 8 bitů).

Informační systém Masarykovy univerzity je v provozu od roku 1999, tedy z doby, kdy ještě takové univerzální způsoby ukládání znaků nebyly rozšířené. Proto systém nebyl vybaven UTF-8 od svého vzniku, jak by se u dnes do provozu uváděných systémů mohlo zdát běžné.

Unicode je založeno na unikátním 32-bitovém čísle (tzv. codepoint) pro každý znak všech světových jazyků. Unicode (včetně UTF-8) je nezávislé na provozované platformě, konkrétním programu a používaném jazyce.
Kódování UTF-8 zapisuje jednotlivé znaky (codepointy) jedním až čtyřmi bajty, přičemž znaky anglické abecedy se zapisují stejně jako v kódování US-ASCII. UTF-8 je tedy s ASCII zpětně kompatibilní.

Proces migrace na Unicode v Informačním systému MU, tedy na sadu znaků, kdy lze vkládat do aplikací jakýkoli znak, který existuje, byl velmi technicky i časově náročný. První fáze - převedení databáze do interního kódování UTF-8, proběhla již v loňském roce. V letošním roce pak byla převedena aplikační infrastruktura tak, aby interně i směrem k uživateli pracovala s kódováním UTF-8.

Úprava aplikační vrstvy si vyžádala revizi v podstatě veškerého aplikačního kódu, který tvoří IS. Jako příklad lze uvést ty části programového vybavení, které v některém místě počítají s délkou vstupního textu. Tato místa bylo třeba jednotlivě prověřit, jestli daná část programu má na mysli délku ve smyslu počtu znaků (písmen) textu, nebo délku jako počet bajtů (protože v UTF-8 může být jeden znak kódován jedním až čtyřmi bajty, mohou být tedy tyto dvě délky obecně různé).

Dále bylo třeba vytvořit infrastrukturu a nastavit parametry jednotlivých aplikací tak, aby některé aplikace umožňovaly uživateli zadávat libovolné Unicode znaky, a některé naopak množinu povolených znaků omezovaly. Jde o to, že některé údaje v systému jsou exportovány do externích systémů jako je matrika studentů nebo personalistika, které ještě nejsou na práci s Unicode připraveny. Podobně tiskový subsystém ISu je omezen na znaky dostupné v používaných písmech a zpracovatelné použitým sázecím systémem. Proto i údaje, které je třeba někam tisknout (například na diplom nebo diploma supplement), mohou obsahovat jen omezenou množinu znaků. IS MU tedy rozeznává tři kategorie znaků: Unicode (plný rozsah znaků), latinka (znaky latinské abecedy s případnými diakritickými značkami, používá se zejména pro tiskové výstupy) a ISO Latin 2 (znaková sada středoevropských jazyků, používá se pro výstupy do externích systémů).

Některé obvyklé otázky vývojáři zodpověděli v Nápovědě systému (v IS MU: Osobní administrativa -> Nápověda -> Jiné/Znaky v ISu a cizí abecedy). Dále je pro uživatele připravena aplikace, do níž uživatel vloží znak nebo více znaků, a aplikace ověří, do kterých kategorií znaky spadají (v IS MU: Osobní administrativa -> Systém -> Které znaky je povoleno zadávat v aplikacích?).

Přesto, jakkoli složité bylo konvertovat celý systém do Unicode, ukázalo se, že byla historicky správná volba jazyka Perl jako základního programovacího jazyka pro IS MU, neboť podpora Unicode a UTF-8 v Perlu má mnohem lepší architekturu než v jiných skriptovacích jazycích.

17. srpna 2006

Not read yet0 commentspermalink
« Informační systém MU představen na světovém fóru EISTA 06 (16. 8. 2006 00:00) | Informační systém MU představen na světovém fóru EISTA 06 » (17. 8. 2006 00:00)

No comments have been posted yet.