Validácia dokumentov Document Type Definition základné pojmy základné bloky dokumentu z pohadu deklarácia elementov deklarácia atribútov Validácia overenie platnosti dokumentu voi (nejako zapísaným) pravidlám pravidlá urujú typ (triedu) dokumentov konkrétny dokument je inštanciou triedy Zápis pravidiel: Schema,, Document Type Definition, pôvod pri SGML - ne syntax (nepodporuje namespace) definícia jazyka pre dokument + sémantika pri komunikácii, výmene dokumentov definovaný štandard, spoloná platforma : Úvod : Validácia voi
dokument z pohadu dokument z pohadu (pokr.) - elementy stavebné bloky dokumentu: hlavné stavebné bloky dok. rôzny obsah - prázdny, text, môžu ma deti definovanie možných urenie poradia : Validácia voi : Validácia voi dokument z pohadu (pokr.) - atribúty dokument z pohadu (pokr.) - entity doplnková informácia o elementoch definovanie nahradzovaného textu zaiatoná znaka elementu entity reference dvojica meno - hodnota vždy odlíšené, v texte nahradzuje parser < & : Validácia voi : Validácia voi
dokument z pohadu (pokr.) - PCDATA dokument z pohadu (pokr.) - CDATA parsed character data character data interpretované parserom NEinterpretované parserom (nahradzovanie entít a pod.) Poznámka: CDATA : Validácia voi : Validácia voi Príklad + Deklarácia Interné <!DOCTYPE root-element [element-declarations]> Externé <!DOCTYPE root-element SYSTEM filename > : Validácia voi : Validácia voi
Deklarácie elementov <!ELEMENT element-name category> kategórie: EMPTY, ANY <!ELEMENT element-name (element-content)> #PCDATA, sekvencia detí Deklarácie elementov - príklady <!ELEMENT element-name EMPTY> <!ELEMENT element-name ANY> Poznámka: bez kontroly obsahu : Validácia voi : Elementy : Validácia voi : Elementy Deklarácie elementov - príklady <!ELEMENT element-name (#PCDATA)> Deklarácie elementov - sekvencia detí <!ELEMENT element-name (child-name,child-name, )> reazec znakov (bez možnosti kontroly dátového typu) and sekvencia - presne urené poradie : Validácia voi : Elementy : Validácia voi : Elementy
Sekvencia detí - kardinalita Sekvencia detí - kardinalita (príklad) deklarovaná poetnos zápis priamo za deklarovaným menom dieaa príklad - jednoduchý odbornýlánok card výskyt práve jeden + aspo jeden? najviac jeden * ubovone : Validácia voi : Elementy : Validácia voi : Elementy Sekvencia detí (pokr.) Deklarácia atribútov kontext bu/alebo zápisom <!ATTLIST elem-name att-name att-type default-value> zmiešaný obsah elem-name: att-name: att-type: default-value: meno elementu meno atribútu typ atribútu urená hodnota (resp. alšie vlastnosti) Poznámka: bez hierarchie : Validácia voi : Elementy : Validácia voi : Atribúty
Deklarácia atribútov - typ atribútu Deklarácia atribútov - dafault value <!ATTLIST elem-name att-name att-type default-value> CDATA (en1 en2 ) reazec znakov enumerácia ID unikátny reazec IDREF odkaz na ID musí by zabezpeená jednoznanos ID v rámci dokumentu NMTOKEN (name) - pravidlá pre pomenovávanie <!ATTLIST elem-name att-name att-type default-value> value default hodnota #DEFAULT value default hodnota #REQUIRED vyžadované #IMPLIED nevyžadovné #FIXED value fixná hodnota alšie: NMTOKENS, NOTATION, : Validácia voi : Atribúty : Validácia voi : Atribúty prázdny element square, atribút width reazec znakov, s default hodnotou 0 ak neuvedený, nadobúda default hodnotu ak uvedený, nastavuje hodnotu atribút fax k elementu contact reazec znakov, nevyžadovaná hodnota (neexistuje default hodnota) ak neuvedený, atribút bez hodnoty ak uvedený, nastavuje hodnotu : Validácia voi : Atribúty : Validácia voi : Atribúty
atribút phone k elementu contact reazec znakov, vyžadovaná hodnota (bez default) ak neuvedený, dokument je neplatný ak uvedený, nastavuje hodnotu atribút color k elementu square reazec znakov, fixná hodnota red ak neuvedený, default fixná hodnota ak uvedený, platný len s fixnou default hodnotou : Validácia voi : Atribúty : Validácia voi : Atribúty Deklarácia atribútov - ID, IDREF atribút type k elementu payment enumerácia, default hodnota ak neuvedený, default hodnota cash ak uvedený, platný len s hodnotou z enumerácie! hodnota reazec bez whitespace znakov atribút typu ID obsahuje unikátnu hodnotu ( dok.) pre typ ID musí default by #IMPLIED / #REQUIRED element môže ma najviac jeden atribút typu ID hodnota atribútu typu ID musí by meno atribút typu IDREF obsahuje odkaz na ID hodnota atribútu typu IDREF musí by ID niektorého elementu dokumentu : Validácia voi : Atribúty : Validácia voi : Atribúty
Deklarácia atribútov - ID, IDREF (príklad) Deklarácia entít nahradzované textové reazce interná entita: <!ENTITY entity-name entity-value > externá entita: <!ENTITY entity-name SYSTEM URL > : Validácia voi : Atribúty : Validácia voi : Entity Deklarácia entít (pokr.) Kompletný nahradzovanie reprezentácií znakov ISO/IEC 10646 desiatkový zápis : &#kód; hexazápis : &#xkód; typický príklad ( ): : Validácia voi : Entity : Príklady
- zhrnutie - Úloha deklarácia elementov rôzny obsah (EMPTY, ANY, #PCDATA, ) kardinalita detí (+,*,?) deklarácia atribútov rôzne typy (CDATA, ID/IDREF, ) default hodnota, význam (#REQUIRED, #IMPLIED, ) deklarácia entít nepodporuje namespace Poznámka: vynechané podmienené štruktúry, % entity, : Príklady akujem za pozornos WWW Consortium (špecifikácie) www.w3.org OpenSource implementácia parsera (Xerces) xml.apache.org Tutoriály, materiály www.zvon.org iné www.xml.org,