Meeskonna "Sille" XML'i osale

From EIK wiki

Retsensioon neeskonna "Sille" kodutöö XML-osale.

XML-fail.

Esimese asjana katsetan, kas XML’i valideerimine skeemifaili suhtes õnnestub. Tuleb välja, et Tulevad välja järgmised vead:

The 'Viimane' element is invalid - The value is invalid according to its datatype 'http://www.w3.org/2001/XMLSchema:date' - The string is not a valid Date value.

The 'Hindamiseaasta' attribute is invalid - The value is invalid according to its datatype 'aastad' - The string is not a valid UInt16 value.

The 'PontisIndeks' element is invalid - The value is invalid according to its datatype 'Decimal' - The string is not a valid Decimal value.

Elementide „Viimane” ja „PontisIndeks” juures on põhjuseks see, et XML’is on element küll olemas, kuid tema väärtus on jäetud tühjaks ja see loetakse tühjaks stringiks. Kui väärtus puudub, siis tuleks XML’is element oma vanema sisse üldse kirjutamata jätta. Lisan veel skeemifailis nende elementide deklaratsiooni „minOccurs="0"” Atribuut „Hindamisaasta” on samuti ühe elemendi juures küll ise olemas, kuid tema väärtus on tühi string, mis annabki vea. Kustutan aastaväärtuseta atribuudi üldse ära. Peale neid tegevusi XML valideerub.

XML’is on 5 loogilist dimensiooni, atribuute on kasutatud 4 dimensioonil. Autoril on ilmselt valdkonnaga praktiline kogemus ja seepärast on XML hästi läbi mõeldud. Atribuudid on omal kohal ja struktuur tundub loogiline.

Xsd.

Hoolimata eelnevalt nimetatud vigadest, on näha, et ka skeemifailiga on vaeva nähtud. Peale pisivigade parandamist XML valideerub selle vastu.

XSLT.

Esimene transformatsioon näitab järmist:

Sillad mis asuvad Pärnu maakonnas

Sillad mis asuvad Pärnu maakonnas ja kus liiklussagedus on väiksem kui 500 autot/24h

XSLT failis on näpuviga- „väiksem kui” märk on valesti kirjutatud. Peale selle asendamist õigega („<=”) transformatsioon töötab.

Teine transformatsioon:

Sillad mille kandevõime on rohkem kui 1000 t või kus kandevõime on väiksem/võrdne 1000 t ja autorongide osakaal on üle 10%.

Jällegi süntaksis kirjavead, kuigi loogika on õige. Peale nende parandamist transformatsioon töötab. Kokkuvõtvalt võib öelda, et hoolimata vigadest tegemist läbi mõeldud tööga ja autorid on XML’i kasutamisega põhjalikult tutvunud.