Középiskolai Matematikai és Fizikai Lapok
Informatika rovattal
Kiadja a MATFUND Alapítvány
Már regisztráltál?
Új vendég vagy?

Az I. 402. feladat (2016. április)

I. 402. Rendszeresen gyűjtünk adatokat XML fájl formájában. A jólformázott és érvényes XML fájlok előállítását egy példa XML fájllal és egy XML schema fájllal (XSD) segítjük. (Az XML fájl érvényessége az XSD fájl segítségével ellenőrizhető. Az ellenőrzés például a http://www.utilities-online.info/xsdvalidation/ címen is megtehető.)

Ezúttal azonban az XSD fájlt véletlenül töröltük, csak a helyes XML példa áll rendelkezésünkre. Az XSD fájlt programunknak kell előállítania a lehető legpontosabb formában. Az egyes elemekhez a nevet, típust - és ha szükséges –az előfordulás számát kell bejegyezni.

A rendelkezésre álló XML fájlban az adatok legfeljebb négy szinten vannak egymásba ágyazva. (A négy szintbe a gyökérelemet is beleértjük.) Tudjuk, hogy az összetett típusok közül csak a szekvenciális szerepel, az elemi típusok közül pedig a következők fordulhatnak elő: xs:integer, xs:decimal (például 12.34), xs:date (formátuma: éééé-hh-nn, például 2014-01-01), xs:time (formátuma: óó:pp:mm, például 10:30:00). A fel nem ismert típust xs:string-ként adjuk meg. Ha egy elem többször is előfordul, az előfordulások maximális számát végtelenre, ha elmarad, akkor az előfordulások minimális számát pedig nullára állítjuk.

A témában a következő lapokon is tájékozódhatunk, de érdemes továbbiakat is felkutatni:

\(\displaystyle \bullet\) http://www.inf.unideb.hu/~bodai/31-xml_alk/xmlSchemas.html;

\(\displaystyle \bullet\) http://soci.hu/articles/xml/XmlSema.pdf.

A bemeneti fájl egy jólformázott XML fájl. A fájlban a <, >, / karakterek csak a tagekben találhatók meg. A kimeneti fájl egy XSD fájl, amely az első bekezdésben említett címen található űrlapon az XML fájlt érvényesnek mutatja. (A mintafájlok a weblapunkról tölthetők le.)

A program első parancssori argumentuma a bemeneti fájl neve, a második pedig a kimeneti fájl neve legyen.

Beküldendő egy tömörített i402.zip állományban a program forráskódja, valamint a program rövid dokumentációja, amely tartalmazza a megoldás rövid leírását, és megadja, hogy a forrásállomány melyik fejlesztő környezetben fordítható.

Példa fájlok: zenekar.xml, zenekar.xsd

(10 pont)

A beküldési határidő 2016. május 10-én LEJÁRT.


Az értékelés során használt bemeneti fájlok: i402bemenet.zip

Az értékelés a következőképpen történt:

a mintaként megadott esetre helyes eredményt ad - 1 pont

legalább még egy bemenetre helyes eredményt ad - 1 pont

minden tesztfájlra helyes eredményt ad - 1 pont

(az előzőekhez az iskola*.xml fájlok nem tartoznak hozzá)

Az iskola*.xml fájlok alapján:

a sequence összetett típus helyes feldolgozása - 1 pont

a hiányzó és többször előforduló elemek helyes kezelése - 1 pont

az egész és a decimális helyes felismerése - 1 pont

dátum és idő helyes felismerése - 1 pont

az ismeretlent stringnek tekinti - 1 pont

a dokumentáció érdemi - 1 pont

a versenykiírásnak megfelelően dolgozik a bemenettel - 1 pont

Mintaként Kovács 246 Benedek megoldását tesszük közé: i402.vb


Statisztika:

2 dolgozat érkezett.
10 pontot kapott:Kovács 246 Benedek.
8 pontot kapott:1 versenyző.

A KöMaL 2016. áprilisi informatika feladatai