1 / 14

Gli schema W3C

Gli schema W3C. Tipi semplici, tipi complessi, tipi anonimi. Tipi semplici e tipi complessi. tipo complesso : elemento che contiene sottoelementi o attributi tipo semplice : elemento che non contiene alcun sottoelemento o attributi; valore di attributi.

ila-richard
Télécharger la présentation

Gli schema W3C

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Gli schema W3C Tipi semplici, tipi complessi, tipi anonimi

  2. Tipi semplici e tipi complessi • tipo complesso: elemento che contiene sottoelementi o attributi • tipo semplice: elemento che non contiene alcun sottoelemento o attributi; valore di attributi

  3. <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <!-- qui schema --> </xsd:schema> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <!-- qui schema --> </xs:schema> Un elemento root, due prefissi namespace

  4. Definizione di elementi • Elementi complessi <xsd:element name=“nome elemento” type=“nome tipo complesso”/> • Elementi semplici <xsd:element name=“nome elemento” type=“xs:string”/>

  5. Tipi complessi L’ordine è obbligatorio <xsd:complexType name="NTypo"> <xsd:sequence> <xsd:element name="luogoEd" type="xsd:string"/> <xsd:element name="editore" type="xsd:string"/> <xsd:element name="annoEd" type="xsd:gYear"/> </xsd:sequence> </xsd:complexType>

  6. Occorrenze degli elementi • Due attributi per l’elemento <xsd:element> • minOccurs • maxOccurs Valori di default per entrambi: 1 Valori numerici Per maxOccurs anche una keyword: unbounded (illimitato)

  7. Esempio <antologia> <poesia><titolo>I</titolo> <stanza> <verso>Voi ch'ascoltate in rime sparse il suono</verso> <verso>di quei sospiri ond'io nudriva 'l core</verso> <verso>in sul mio primo giovenile errore</verso> <verso>quand'era in parte altr'uom da quel ch'i' sono,</verso> </stanza> <stanza> <verso>del vario stile in ch'io piango et ragiono</verso> <verso>fra le vane speranze e 'l van dolore</verso> <verso>ove sia chi per prova intenda amore</verso> <verso>spero trovar pietà, nonché perdono.</verso> </stanza> </poesia> </antologia>

  8. Il suo schema <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified"> <xs:element name="antologia" type="POESIE"/> <xs:complexType name="POESIE"> <xs:sequence> <xs:element name="poesia" maxOccurs="unbounded" type="VERSI"/> </xs:sequence> </xs:complexType> <xs:complexType name="VERSI"> <xs:sequence> <xs:element name="titolo“ type=“xs:string”/> <xs:element name="stanza" type="STANZE" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> <xs:complexType name="STANZE"> <xs:sequence> <xs:element name="verso" type="xs:string" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> </xs:schema>

  9. Tipi semplici predefiniti • xs:string • xs:gYear (4 cifre) • xs:positiveInteger • xs:anyURI • xs:ID • xs:IDREF • xs:date (aaaa-mm-gg+hh)  Esercizio 16

  10. Mixed Content model L’ordine è obbligatorio <xs:complexType name="STANZE“ mixed=“true”> <xs:sequence> <xs:element name="verso" type="xs:string“ maxOccurs="unbounded"/> <xs:element name=“versetto” type="xs:string“ maxOccurs="unbounded"/> </xs:sequence> </xs:complexType>  Esercizio 17

  11. Attributi optional required prohibited <xs:complexType name="STANZE"> <xs:sequence> <xs:element name="verso" type="xs:string" maxOccurs="unbounded"/> </xs:sequence> <xs:attribute name="tipo" use="optional" type="xs:string" default="quartina"/> </xs:complexType>  Esercizio 17 Se si usa default use=“optional”

  12. Le immagini • Con un elemento <xs:complexType name="STANZE"> <xs:sequence> <xs:element name="verso" type="xs:string" maxOccurs="unbounded"/> <xs:element name="figura" type="xs:anyURI" minOccurs="1" maxOccurs="unbounded"/> </xs:sequence> <xs:attribute name="tipo" type="xs:string" use="optional" default="quartina"/> </xs:complexType> Nel documento: <figura>c:/immagini/figura1.gif</figura>

  13. Le immagini Con un attributo <xs:complexType name="POESIE"> <xs:sequence> <xs:element name="poesia" type="VERSI" maxOccurs="unbounded"/> </xs:sequence> <xs:attribute name="figura" type="xs:anyURI" use="optional"/> </xs:complexType> Nel documento: <antologia figura=“c:/immagini/figura1.gif”> Esercizio 19 Preferibile!

  14. Tipi anonimi Se si mette simpleType o complexType non si usa l’attributo type <xs:complexType name="VERSI"> <xs:sequence> <xs:element name="titolo"/> <xs:element name="stanza" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element name="verso" type="xs:string" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType>

More Related