Cvičení 1
Kurzovní lístek
Co si vyzkoušíte
Převedete kurzovní lístek z JSON do XML a sami rozhodnete, co bude element a co atribut. Vycházíte ze zkrácené odpovědi služby, jejíž živou podobu najdete na https://open.er-api.com/v6/latest/CZK. Stačí textový editor: na Windows Poznámkový blok, na Linuxu Textový editor, na Macu TextEdit přepnutý na prostý text (Formát → Převést na prostý text), případně na všech třech VS Code. Výsledek ověříte v prohlížeči.
Takhle odpověď služby vypadala 5. 11. 2026, jen jsme z ní nechali šest měn a vynechali stovku dalších:
{
"result": "success",
"time_last_update_unix": 1793836951,
"time_last_update_utc": "Thu, 05 Nov 2026 00:02:31 +0000",
"base_code": "CZK",
"rates": {
"CZK": 1,
"EUR": 0.041076,
"USD": 0.045939,
"GBP": 0.03435,
"PLN": 0.180405,
"CHF": 0.037835,
"JPY": 7.282737
}
}Zadání
Převeďte JSON data zobrazený výše na XML.
- Podívejte se na JSON a odpovězte:
- Jaká je základní měna?
- Kolik eur dostanete za jednu korunu a kolik korun tedy stojí jedno euro?
- Jaký typ má hodnota
result,time_last_update_unixa kurz eura?
- Navrhněte, jak bude vypadat kořenový element.
- U každého údaje rozhodněte, jestli z něj bude element, nebo atribut. Zdůvodněte si proč.
- Zapište celý lístek do souboru
rates.xmli s prologem. Názvy elementů a atributů volte anglicky. - Otevřete
rates.xmlv prohlížeči: přetáhněte ho do okna nebo použijte Ctrl+O na Windows a Linuxu, Cmd+O na Macu. Když prohlížeč ukáže strom, je dokument správně utvořený. Když ukáže chybu, opravte ji podle čísla řádku. - Schválně smažte jednu zavírací značku, soubor uložte a stránku v prohlížeči obnovte. Podívejte se na popis chyby. Pak chybu opravte.
- Uložte výchozí JSON data do souboru
rates.jsona porovnejte velikost obou souborů. Na Windows a na Linuxu ji najdete po kliknutí pravým tlačítkem ve Vlastnostech, na Macu v okně Informace. O kolik procent je XML větší? - Ve směnárně přibyl maďarský forint,
HUFs kurzem14.946594. Přidejte ho do obou souborů a oba znovu otevřete v prohlížeči.
Bonus
- Napište druhou variantu XML, která má kurzy v atributech, pokud jste je dali do elementů, nebo naopak. Porovnejte délku a čitelnost obou variant.
- V XML se ztratilo, že
time_last_update_unixa kurzy jsou čísla. Vymyslete, jak by šlo typ hodnoty zapsat přímo do dokumentu, aby ho program, který XML čte, nemusel hádat. - Otevřete živá data a najděte měnu, za kterou dostanete z jedné koruny nejvíc jednotek, a měnu, za kterou nejméně. Co o těch měnách čísla říkají?