Click here to load reader

Technol ógie XML Prednáška č. 5

Embed Size (px)

DESCRIPTION

Technol ógie XML Prednáška č. 5. XML Sch éma (pravidlá návrhu). Z minula. Formáty pre zápis schém potrebujeme pretože: Definuje elementy a atribúty použiteľné v dokumente. Prípustné možnosti kombinovania. Dátový typ pre obmedzenie obsahu element / atribútu. - PowerPoint PPT Presentation

Citation preview

Technolgie XML Prednka .2

XML Schma(pravidl nvrhu)

Technolgie XMLPrednka .5Z minulaFormty pre zpis schm potrebujeme pretoe:Definuje elementy a atribty pouiten v dokumente.Prpustn monosti kombinovania.Dtov typ pre obmedzenie obsahu element/atribtu. Schma je formlna defincia jazyka a z toho vyplvajca monos validcie.ahia programov manipulcia.

Jazyky pre zpis schmyDTDVychdza zo SGMLXML SchemaKomplexn avak pecifikcia je pomerne zloit. Relax NGNov a elegantn jazyk pre popis schm.SchematronJazyk postaven na XPathXML SchmaXML smeruje do oblasti databz kde DTD nedoke vyhovie poiadavkm. Poskytuje mnostvo dtovch typov a tm dovouje pokroilejiu typov kontrolu.

XML SchmaDtov typy:Jednoduch = reazec, slo, ...Komplexn obsahuj alie elementy a a atribty.od existujcich typov je mon odvodzova vlastn aplikovanm obmedzenia na jeden zo zabudovanch typov.Pokroilejie rysy XML SchmyXML Schema ako samodokumentujci formt:Rovnako ako API dokuemtcia je generovan zo zdrojovho kdu, tak aj dokumentcia k schme me by tvoren aplikciou XSLT tlu.

Element je dleit! ...Modelovanie obsahu sekvenia zasebou idcich elementov

vbr jednoho z element

nezle na poad element

smen obsah (mezi elementy se me objevit text) ValidaciaPred validciou musme pecifikova, kde je mon schmu njs.

...

ValidaciaPrklad XML schma dokument.xsd

...

ValidaciaXerces kninice pre pre parsrovanie, validaciu, serializaciu a manipulciu s XML. kninica implementuje mnostvo tandardnch API pre XML.Implementacia je dostupna pre jazyky Java, C++, Perl.

Databidingpre dta s dopredu znmou truktrou je tanie pomocou klasickch API ako SAX alebo DOM nepohodln

zo schmy je mon vygenerova hierarchie tried, ktor s schopn reprezentova dta uloen v XML

triedy obsahuj kd pre serializciu/deserializciu

dtov typy XML schm sa namapuj na dtov typy danho jazyka

implementcia Castor (Java), xsd (.NET)TrangV prpade potreby konverzie medzi rznymi jazykmi.Podporovan s:Relax NG (XML syntax)Relax NG (kompaktn syntax)DTDXML Shema*

Cel kontrukcia je postaven na Relax NG modely.Pravidl pre nvrh schmPotrebujeme vbec atribty?:Kompaktnej zpis.Atomick premenn, ktor je kom.

Namespaces:Kad nov XML sbor by mal obsahova atribty z vlastnho namespace. Elementy nepatriace nikam nedokeme jednoducho a jednoznane kombinova.Do namespace zaraujeme len elementy nie ich atribtyNzov namespace by mal by ahko zapametaten.

Pravidl pre nvrh schmNzvy elementov a atribtov:Vyhnu sa extremom typu:V10; ECaleboSPZaleboVIN; ...

Defaultn (implicitn) hodnotyNie odporan schma upravuje obsah dokumentu.

VersioningVerzia sa uvdza v koreovom elemente ako atribt.

Domca lohahttp://www.kosek.cz/xml/schema/index.htmlMaterily o XML Scheme.

Spracova prklad z psomky pomocou XML Schemy.