[ASOS | Cvičenie] 3 - XSD schéma a XML
Preber si túto prednášku so svojou AI
Skopíruj pripravený podklad a vlož ho do ChatGPT, Claude alebo inej AI — bude ťa učiť alebo skúšať len z tejto prednášky.
Zhrnutie prednášky
Prednáška sa venuje tvorbe XSD schém pre XML súbory v kontexte predmetu ASOS, konkrétne príprave na cvičenie so schémou pre knihy a autorov. Vysvetľuje sa základná motivácia XSD schém – podobne ako typová kontrola v OOP prináša štruktúru do kódu, XSD definuje, aké elementy, atribúty a obmedzenia môže obsahovať XML súbor, keďže samotné XML špecifikuje len formát zápisu, nie obsah. Demonštruje sa rozdiel medzi jednoduchým elementom a complex type, použitie sequence pre poradie vnorených elementov, definovanie dátových typov (long, string a pod.) a nastavenie povinnosti či počtu výskytov pomocou minOccurs a maxOccurs. Na praktickom príklade osoby s adresou sa ukazuje, ako vytvoriť vnorené complex typy a referencovať ich v rámci schémy. Spomína sa aj využitie nástrojov ako JAXB a Maven plugin na generovanie Java tried priamo z XSD schémy pre ďalšiu prácu s webovými službami.
- - XSD schéma definuje povolené elementy, atribúty a obmedzenia v XML súbore, na rozdiel od samotného XML, ktoré určuje len formát zápisu.
- - Rozdiel medzi element a complex type: element má pevne dané meno a môže byť root elementom, complex type je znovupoužiteľný predpis bez fixného mena.
- - Sequence definuje presné poradie vnorených elementov v rámci complex type.
- - Dátové typy elementov (napr. xs:long, xs:string, xs:date) ovplyvňujú následné mapovanie na Java typy pri generovaní kódu.
- - Povinnosť a počet výskytov elementu sa nastavuje pomocou atribútov minOccurs a maxOccurs (predvolene obe hodnoty sú 1).
- - Vnorené objekty (napr. adresa v rámci osoby) sa odporúča definovať ako complex type a referencovať ich, nie ako samostatný element.
- - Nástroj JAXB a Maven plugin (Jaxb2 Maven Plugin) umožňujú automaticky generovať Java triedy priamo z XSD schémy pre prácu s XML v Java projektoch.
Zhrnutie pripravené s pomocou AI z prepisu videa.
nechodím na prednášky