====== Zpracování číselníku MKN-10 ve formátu XML ====== ===== Zadání ===== Vytvořte kód pro načtení, zpracování a uložení xml souborů dle následujícího zadání. ---- Následující části úlohy jsou **povinné!** Jednotlivé úkoly pro část úlohy tvořenou na cvičení jsou: - Stáhněte z adresy [[http://ciselniky.dasta.mzcr.cz/|datového standardu ČR (DASTA)]] xml soubory s následujícími číselníky: * Číselník MKN10 - Mezinárodní statistická klasifikace nemocí. * Číselník TDG - Třídy dg. * Číselník SWHO1 - Skupiny dg pro SWHO1 (pokud bude potřeba tak také SWHO2, SWHO4 nebo SWHO5). * Číselník PUMRTI - Skupiny dg příčin smrti. * Číselník POHLAV - Pohlaví. - Soubory xml načtěte a vytvořit jejich reprezentaci ve svém vývojovém prostředí. //(0.4 bodu)// * Načtení všech potřebných souborů. //(0.1 bodu)// * Namapujte soubory do svého programu (viz Poznámky k implementaci). //(0.3 bodu)// - Přetvořte strukturu původního souboru MKN10.xml na strukturu dle browseru [[http://apps.who.int/classifications/icd10/browse/2010/en|ICD-10 na stránkách WHO]] nebo případně [[http://www.uzis.cz/cz/mkn/index.html|MKN-10 na stránkách UZIS ČR]]. //(1.6 bod)// * Pro vytvoření struktury využijte informace načtené z jednotlivých číselníků. //(0.3 bodu)// * Vytvořte strukturu, která bude reprezentovat hierarchii a bude seřaditelná (viz Poznámky k implementaci). ((Co konkrétně použijete je na Vás))((Konkrétně bude možné jí setřídit na základě kódu)) //(0.6)// * Vytvořte výpis struktury (resp. její vyžadované části) na obrazovku (je jedno jakou komponentu k tomu použijete). //(0.4 bodu)// * K výpisu přidejte informaci, zda může být daná diagnóza použitá jako příčina úmrtí a zda má daná diagnóza nějaké omezení. //(0.3 bodu)// ---- Následující části úlohy jsou **povinné!** Domácí část úlohy: - Uložte novou strukturu jako xml soubor //(1 bod)// * Nový soubor bude obsahovat kódy a názvy jednotlivých diagnóz nikoli jako atributy, ale jako hodnoty elementu * Jedinými atributy zůstanou ZNAK, PUMRTI, POHLAV * Příklad takové struktury souboru je na Obrázku 1. {{courses:17bieht:new_structure_mkn_example.png?400|Příklad upravené struktury MKN-10}} //Obrázek 1: Příklad nové struktury xml souboru.// ---- Následující části úlohy jsou **nepovinné!** Bonusová část úlohy: - Vaš program bude umožňovat vyhledat diagnózu dle kódu nebo názvu, či seznam diagnóz pro určitou skupinu kódů. //(1 bod)// ===== Poznámky k implementaci ===== Poznámky k úkolům z části úlohy tvořené na cvičení: * Jednou z možností je použít některé z pokročilých seznamů, jako jsou HashMapy či HashSety. Tyto seznamy Vám velmi pomohou při tvorbě konstrukce - [[http://docs.oracle.com/javase/7/docs/api/java/util/HashMap.html|HashMap pro Javu]], [[http://msdn.microsoft.com/en-us/library/aa987925(v=vs.80).aspx|HashMap pro C#]]. * Možné jistě je využít i strukturu stromu (ta se přímo nabízí). Samozřejmě pro strom byste měli vytvořit příslušnou strukturu objektů. ===== Hodnocení ===== * **Povinné:** Na cvičení je hodnocení maximálně 2 body. * **Povinné:** Domácí úloha je hodnocena maximálně 1 bodem. * **Nepovinné:** Bonus (domácí úloha) je hodnocena maximálně 1 bodem. **Důležité:** Před odevzdáním si ověřte, zda práce splňuje jednotlivé body zadání **PŘESNĚ**. Pokud si nejste jisti, co některá část zadání znamená, včas se ptejte. Při nedodržení specifikace neočekávejte ''body z milosti''. Za část úlohy ze cvičení můžete získat až 2 body. Pokud nestihnete odevzdat na cvičení, musíte ji dopracovat doma (bez bodového ohodnocení). Do dalšího cvičení máte možnost vypracovat domácí úlohu (a bonus), za jejíchž splnění můžete získat další body. Odevzdává se prostřednictvím UploadSystemu.