validarea documentelor xml - xml schemainf.ucv.ro/~mihaiug/courses/web/slides/curs 6 - xml...

33
Validarea Documentelor XML - XML Schema Mihai Gabroveanu Facultatea de S , tiint , e Exacte Mihai Gabroveanu Validarea Documentelor XML

Upload: others

Post on 23-Jul-2020

33 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Validarea Documentelor XML - XML Schemainf.ucv.ro/~mihaiug/courses/web/slides/Curs 6 - XML Schema.pdf · Cuprins 1 Introducere 2 XMLSchema ReferirealaoXMLSchema DefinireaunuifisierXMLSchema

Validarea Documentelor XML - XML Schema

Mihai Gabroveanu

Facultatea de S, tiint,e Exacte

Mihai Gabroveanu Validarea Documentelor XML

Page 2: Validarea Documentelor XML - XML Schemainf.ucv.ro/~mihaiug/courses/web/slides/Curs 6 - XML Schema.pdf · Cuprins 1 Introducere 2 XMLSchema ReferirealaoXMLSchema DefinireaunuifisierXMLSchema

Cuprins1 Introducere2 XML Schema

Referirea la o XML SchemaDefinirea unui fisier XML SchemaTipuri simple

Definirea atributelorDefinirea restrict, iilor

Definirea elementelor complexeDefinirea elementelor videAsignarea de nume tipurilor complexeExtinderea unui tip

Indicatori de ordineIndicatori de aparitieIndicatori de grupare

3 Bibliografie4 Intrebari si RaspunsuriMihai Gabroveanu Validarea Documentelor XML

Page 3: Validarea Documentelor XML - XML Schemainf.ucv.ro/~mihaiug/courses/web/slides/Curs 6 - XML Schema.pdf · Cuprins 1 Introducere 2 XMLSchema ReferirealaoXMLSchema DefinireaunuifisierXMLSchema

IntroducereXML SchemaBibliografie

Intrebari si Raspunsuri

Istoric

XML SchemaXML schema permite definirea regulilor si relatiilor intreelemente si attributeStandard init, iat de Microsoft02 Mai 2001 - XML Schema Language devine recomndare aW3C

Mihai Gabroveanu Validarea Documentelor XML

Page 4: Validarea Documentelor XML - XML Schemainf.ucv.ro/~mihaiug/courses/web/slides/Curs 6 - XML Schema.pdf · Cuprins 1 Introducere 2 XMLSchema ReferirealaoXMLSchema DefinireaunuifisierXMLSchema

IntroducereXML SchemaBibliografie

Intrebari si Raspunsuri

Referirea la o XML SchemaDefinirea unui fisier XML SchemaTipuri simpleDefinirea elementelor complexeIndicatori de ordineIndicatori de aparitieIndicatori de grupare

XML Schema

XML Schemadefineste elementele care pot sa apara intr-un documentdefineste atributele pe care pot sa le aiba elementele dintr-undocumentdefineste care elemente au copii si care sunt acestiadefineste ordinea copiilor unui elementdefineste numarul de copiidefineste daca un element este vid sau poate contine un textdefineste tipurile elementelor si atributelordefineste valorile implicite si fixe ale elementelor si atributelor

Mihai Gabroveanu Validarea Documentelor XML

Page 5: Validarea Documentelor XML - XML Schemainf.ucv.ro/~mihaiug/courses/web/slides/Curs 6 - XML Schema.pdf · Cuprins 1 Introducere 2 XMLSchema ReferirealaoXMLSchema DefinireaunuifisierXMLSchema

IntroducereXML SchemaBibliografie

Intrebari si Raspunsuri

Referirea la o XML SchemaDefinirea unui fisier XML SchemaTipuri simpleDefinirea elementelor complexeIndicatori de ordineIndicatori de aparitieIndicatori de grupare

Referirea la o XML Schema

Sintaxa declararii unui DTD intern este urmatoarea:<?xml version="1.0"?>

<elementRadacinaxmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:noNamespaceSchemaLocation="url.xsd">

...</elementRadacina>

unde:url.xsd = Locatia unde poate fi gasita definitia schemei

Mihai Gabroveanu Validarea Documentelor XML

Page 6: Validarea Documentelor XML - XML Schemainf.ucv.ro/~mihaiug/courses/web/slides/Curs 6 - XML Schema.pdf · Cuprins 1 Introducere 2 XMLSchema ReferirealaoXMLSchema DefinireaunuifisierXMLSchema

IntroducereXML SchemaBibliografie

Intrebari si Raspunsuri

Referirea la o XML SchemaDefinirea unui fisier XML SchemaTipuri simpleDefinirea elementelor complexeIndicatori de ordineIndicatori de aparitieIndicatori de grupare

Referirea la o XML Schema - Exemplu

Referirea la XML Schema CARTE.xsd<?xml version="1.0"><CARTE

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:noNamespaceSchemaLocation="CARTE.xsd" ><TITLU>XML Bible</TITLU><AUTOR>Elliotte Rusty Harold</AUTOR><EDITURA> IDG Books Worldwide</EDITURA><AN_APARITIE>2002</AN_APARITIE>

</CARTE>

Mihai Gabroveanu Validarea Documentelor XML

Page 7: Validarea Documentelor XML - XML Schemainf.ucv.ro/~mihaiug/courses/web/slides/Curs 6 - XML Schema.pdf · Cuprins 1 Introducere 2 XMLSchema ReferirealaoXMLSchema DefinireaunuifisierXMLSchema

IntroducereXML SchemaBibliografie

Intrebari si Raspunsuri

Referirea la o XML SchemaDefinirea unui fisier XML SchemaTipuri simpleDefinirea elementelor complexeIndicatori de ordineIndicatori de aparitieIndicatori de grupare

Definirea unui fisier XML Schema

Sintaxa definirii unui fisier XML Schema este urmatoarea:<?xml version="1.0"?><xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" [1]

elementFormDefault="qualified"> [2]...</xs:schema>

unde:1 indica faptul ca elementele si tipurile de date utilizate in schema

provin din namespace-ul http://www.w3.org/2001/XMLSchema.De asemenea, specifica ca aceste elemente si tipuri de date trebuiesa fie prefixate cu xs

2 indica ca toate elemente XML utilizate trebuie sa fie calificate denamespace

Mihai Gabroveanu Validarea Documentelor XML

Page 8: Validarea Documentelor XML - XML Schemainf.ucv.ro/~mihaiug/courses/web/slides/Curs 6 - XML Schema.pdf · Cuprins 1 Introducere 2 XMLSchema ReferirealaoXMLSchema DefinireaunuifisierXMLSchema

IntroducereXML SchemaBibliografie

Intrebari si Raspunsuri

Referirea la o XML SchemaDefinirea unui fisier XML SchemaTipuri simpleDefinirea elementelor complexeIndicatori de ordineIndicatori de aparitieIndicatori de grupare

Definirea unui fisier XML Schema - Exemplu

Referirea la XML Schema PERSOANA.xsd<?xml version="1.0"?><xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" >

<xs:element name="PERSOANA"><xs:complexType>

<xs:sequence><xs:element name="NUME" type="xs:string"/><xs:element name="PRENUME" type="xs:string"/></xs:sequence>

</xs:complexType></xs:element>

</xs:schema>

Mihai Gabroveanu Validarea Documentelor XML

Page 9: Validarea Documentelor XML - XML Schemainf.ucv.ro/~mihaiug/courses/web/slides/Curs 6 - XML Schema.pdf · Cuprins 1 Introducere 2 XMLSchema ReferirealaoXMLSchema DefinireaunuifisierXMLSchema

IntroducereXML SchemaBibliografie

Intrebari si Raspunsuri

Referirea la o XML SchemaDefinirea unui fisier XML SchemaTipuri simpleDefinirea elementelor complexeIndicatori de ordineIndicatori de aparitieIndicatori de grupare

Tipuri simple

Un element se numeste element simplu daca:

contine numai informatie text (date caracter)nu are atributenu contine alte atributenu este vid

Mihai Gabroveanu Validarea Documentelor XML

Page 10: Validarea Documentelor XML - XML Schemainf.ucv.ro/~mihaiug/courses/web/slides/Curs 6 - XML Schema.pdf · Cuprins 1 Introducere 2 XMLSchema ReferirealaoXMLSchema DefinireaunuifisierXMLSchema

IntroducereXML SchemaBibliografie

Intrebari si Raspunsuri

Referirea la o XML SchemaDefinirea unui fisier XML SchemaTipuri simpleDefinirea elementelor complexeIndicatori de ordineIndicatori de aparitieIndicatori de grupare

Definirea unui element simplu

Sintaxa definiri unui element simplu este urmatoarea:<xs:element name="nume" type="tip"/>sau<xs:element name="nume" type="tip" default="val-implicita"/>sau<xs:element name="nume" type="tip" fixed="val-fixa"/>

unde:nume este numele elementului

tip este tipul valorii elementului

val-implicita valoare implicita este atribuita unui element atunci candnu este specificata nici o alta valoare valoare

val-fixa valoare fixa este atribuita de asemenea automat unuielement si nu putem specifica nici o alta valoare in afarade cea specificata

Mihai Gabroveanu Validarea Documentelor XML

Page 11: Validarea Documentelor XML - XML Schemainf.ucv.ro/~mihaiug/courses/web/slides/Curs 6 - XML Schema.pdf · Cuprins 1 Introducere 2 XMLSchema ReferirealaoXMLSchema DefinireaunuifisierXMLSchema

IntroducereXML SchemaBibliografie

Intrebari si Raspunsuri

Referirea la o XML SchemaDefinirea unui fisier XML SchemaTipuri simpleDefinirea elementelor complexeIndicatori de ordineIndicatori de aparitieIndicatori de grupare

Tipuri predefinite in XML Schema

Tipuri predefinite in XML Schema:xs:string

xs:decimal

xs:integer

xs:boolean

xs:date

xs:time

Mihai Gabroveanu Validarea Documentelor XML

Page 12: Validarea Documentelor XML - XML Schemainf.ucv.ro/~mihaiug/courses/web/slides/Curs 6 - XML Schema.pdf · Cuprins 1 Introducere 2 XMLSchema ReferirealaoXMLSchema DefinireaunuifisierXMLSchema

IntroducereXML SchemaBibliografie

Intrebari si Raspunsuri

Referirea la o XML SchemaDefinirea unui fisier XML SchemaTipuri simpleDefinirea elementelor complexeIndicatori de ordineIndicatori de aparitieIndicatori de grupare

Elemente simple - Exemplu

Consideram urmatoarele elemente simple XML:<NUME>Popescu Maria</NUME><VARSTA>21</VARSTA><DATA_NASTERII>1985-09-23</DATA_NASTERII><CETATENIA>romana</CETATENIA>

Definitiile corespunzatoare in XML Schema sunt:<xs:element name="NUME" type="xs:string"/><xs:element name="VARSTA" type="xs:integer" default="0"/><xs:element name="DATA_NASTERII" type="xs:date"/><xs:element name="CETATENIA" type="xs:string" fixed="romana"/>

Mihai Gabroveanu Validarea Documentelor XML

Page 13: Validarea Documentelor XML - XML Schemainf.ucv.ro/~mihaiug/courses/web/slides/Curs 6 - XML Schema.pdf · Cuprins 1 Introducere 2 XMLSchema ReferirealaoXMLSchema DefinireaunuifisierXMLSchema

IntroducereXML SchemaBibliografie

Intrebari si Raspunsuri

Referirea la o XML SchemaDefinirea unui fisier XML SchemaTipuri simpleDefinirea elementelor complexeIndicatori de ordineIndicatori de aparitieIndicatori de grupare

Definirea atributelor

Elementele simple nu pot avea atribute. Atributul insusi estedeclarat intotdeauna ca un tip simplu.

Sintaxa definiri unui atribut este urmatoarea:<xs:attribute name="nume" type="tip" />sau<xs:attribute name="nume" type="tip" default="val-implicita" />sau<xs:attribute name="nume" type="tip" fixed="val-fixa" />

unde:nume este numele atributului

tip este tipul valorii

val-implicita valoare implicita a atributului

val-fixa valorea fixa a atributuluiMihai Gabroveanu Validarea Documentelor XML

Page 14: Validarea Documentelor XML - XML Schemainf.ucv.ro/~mihaiug/courses/web/slides/Curs 6 - XML Schema.pdf · Cuprins 1 Introducere 2 XMLSchema ReferirealaoXMLSchema DefinireaunuifisierXMLSchema

IntroducereXML SchemaBibliografie

Intrebari si Raspunsuri

Referirea la o XML SchemaDefinirea unui fisier XML SchemaTipuri simpleDefinirea elementelor complexeIndicatori de ordineIndicatori de aparitieIndicatori de grupare

Definirea atributelor (cont.)

Sintaxa definiri unui atribut optional/obligatoriu este:<xs:attribute name="nume" type="tip" use="optional" />respectiv<xs:attribute name="nume" type="tip" use="required" />

Consideram urmatorul element cu un atribut:<PERSOANA sex="masculin">Garcea Ion</PERSOANA>

Definitia atributului in XML Schema este:<xs:attribute name="sex" type="xs:string" use="required"/>

Mihai Gabroveanu Validarea Documentelor XML

Page 15: Validarea Documentelor XML - XML Schemainf.ucv.ro/~mihaiug/courses/web/slides/Curs 6 - XML Schema.pdf · Cuprins 1 Introducere 2 XMLSchema ReferirealaoXMLSchema DefinireaunuifisierXMLSchema

IntroducereXML SchemaBibliografie

Intrebari si Raspunsuri

Referirea la o XML SchemaDefinirea unui fisier XML SchemaTipuri simpleDefinirea elementelor complexeIndicatori de ordineIndicatori de aparitieIndicatori de grupare

Definirea restrict, iilor

Sintaxa generala a definirii acestor restrictii este urmatoare:<xs:element name="nume"> (sau xs:attribute)<xs:simpleType>

<xs:restriction base="tip">... restrictii ...

</xs:restriction></xs:simpleType>

</xs:element>

Mihai Gabroveanu Validarea Documentelor XML

Page 16: Validarea Documentelor XML - XML Schemainf.ucv.ro/~mihaiug/courses/web/slides/Curs 6 - XML Schema.pdf · Cuprins 1 Introducere 2 XMLSchema ReferirealaoXMLSchema DefinireaunuifisierXMLSchema

IntroducereXML SchemaBibliografie

Intrebari si Raspunsuri

Referirea la o XML SchemaDefinirea unui fisier XML SchemaTipuri simpleDefinirea elementelor complexeIndicatori de ordineIndicatori de aparitieIndicatori de grupare

Definirea restrict, iilor - Exemplu

Definirea restrictiilor pentru NOTA unui student:<xs:element name="NOTA"><xs:simpleType>

<xs:restriction base="xs:integer"><xs:minInclusive value="1"><xs:maxInclusive value="10">

</xs:restriction></xs:simpleType></xs:element>

Mihai Gabroveanu Validarea Documentelor XML

Page 17: Validarea Documentelor XML - XML Schemainf.ucv.ro/~mihaiug/courses/web/slides/Curs 6 - XML Schema.pdf · Cuprins 1 Introducere 2 XMLSchema ReferirealaoXMLSchema DefinireaunuifisierXMLSchema

IntroducereXML SchemaBibliografie

Intrebari si Raspunsuri

Referirea la o XML SchemaDefinirea unui fisier XML SchemaTipuri simpleDefinirea elementelor complexeIndicatori de ordineIndicatori de aparitieIndicatori de grupare

Definirea elementelor complexe

Element complexUn element se numeste element complex daca contine alteelement si/sau atribute. De asemenea elementele vide suntconsiderate elemente complexe

Sintaxa definirii unui element complex:<xs:element name="nume">

<xs:complexType>... descrierea tipului complex ...

</xs:complexType></xs:element>

Mihai Gabroveanu Validarea Documentelor XML

Page 18: Validarea Documentelor XML - XML Schemainf.ucv.ro/~mihaiug/courses/web/slides/Curs 6 - XML Schema.pdf · Cuprins 1 Introducere 2 XMLSchema ReferirealaoXMLSchema DefinireaunuifisierXMLSchema

IntroducereXML SchemaBibliografie

Intrebari si Raspunsuri

Referirea la o XML SchemaDefinirea unui fisier XML SchemaTipuri simpleDefinirea elementelor complexeIndicatori de ordineIndicatori de aparitieIndicatori de grupare

Definirea elementelor complexe - Exemplu

Sintaxa definirii unui element complex:<xs:element name="PERSOANA"><xs:complexType>

<xs:sequence><xs:element name="NUME" type="xs:string"/><xs:element name="PRENUME" type="xs:string"/>

</xs:sequence></xs:complexType>

</xs:element>

<xs:sequence> spune ca elementele NUME si PRENUME trebuie saapara in acesta ordine

Mihai Gabroveanu Validarea Documentelor XML

Page 19: Validarea Documentelor XML - XML Schemainf.ucv.ro/~mihaiug/courses/web/slides/Curs 6 - XML Schema.pdf · Cuprins 1 Introducere 2 XMLSchema ReferirealaoXMLSchema DefinireaunuifisierXMLSchema

IntroducereXML SchemaBibliografie

Intrebari si Raspunsuri

Referirea la o XML SchemaDefinirea unui fisier XML SchemaTipuri simpleDefinirea elementelor complexeIndicatori de ordineIndicatori de aparitieIndicatori de grupare

Definirea elementelor vide

Sa consideram urmatorul element:<PRODUS cod="1345" />

Sintaxa definirii elementului PRODUS in XML Schema:<xs:element name="PRODUS">

<xs:complexType><xs:attribute name="cod" type="xs:positiveInteger"/>

</xs:complexType></xs:element>

Mihai Gabroveanu Validarea Documentelor XML

Page 20: Validarea Documentelor XML - XML Schemainf.ucv.ro/~mihaiug/courses/web/slides/Curs 6 - XML Schema.pdf · Cuprins 1 Introducere 2 XMLSchema ReferirealaoXMLSchema DefinireaunuifisierXMLSchema

IntroducereXML SchemaBibliografie

Intrebari si Raspunsuri

Referirea la o XML SchemaDefinirea unui fisier XML SchemaTipuri simpleDefinirea elementelor complexeIndicatori de ordineIndicatori de aparitieIndicatori de grupare

Asignarea de nume tipurilor complexe

Unui tip complex ii putem asigna un nume astfel:<xs:complexType name="nume-tip">

....</xs:complexType>

Referirea la tipul definit se face astfel:<xs:element name="nume" type="nume-tip-declarat"/>

Mihai Gabroveanu Validarea Documentelor XML

Page 21: Validarea Documentelor XML - XML Schemainf.ucv.ro/~mihaiug/courses/web/slides/Curs 6 - XML Schema.pdf · Cuprins 1 Introducere 2 XMLSchema ReferirealaoXMLSchema DefinireaunuifisierXMLSchema

IntroducereXML SchemaBibliografie

Intrebari si Raspunsuri

Referirea la o XML SchemaDefinirea unui fisier XML SchemaTipuri simpleDefinirea elementelor complexeIndicatori de ordineIndicatori de aparitieIndicatori de grupare

Asignarea de nume tipurilor complexe - Exemplu

Definirea tipui PERSOANA:<xs:complexType name="PERSOANA"><xs:sequence>

<xs:element name="NUME" type="xs:string"/><xs:element name="PRENUME" type="xs:string"/>

</xs:sequence></xs:complexType>

Referirea la tipul definit se face astfel:<xs:element name="STUDENT" type="PERSOANA"/><xs:element name="PROFESOR" type="PERSOANA"/>

Mihai Gabroveanu Validarea Documentelor XML

Page 22: Validarea Documentelor XML - XML Schemainf.ucv.ro/~mihaiug/courses/web/slides/Curs 6 - XML Schema.pdf · Cuprins 1 Introducere 2 XMLSchema ReferirealaoXMLSchema DefinireaunuifisierXMLSchema

IntroducereXML SchemaBibliografie

Intrebari si Raspunsuri

Referirea la o XML SchemaDefinirea unui fisier XML SchemaTipuri simpleDefinirea elementelor complexeIndicatori de ordineIndicatori de aparitieIndicatori de grupare

Extinderea unui tip

Putem construi un tip complex prin extinderea unui alt tip complex:<xs:complexType name="tip-nou">

<xs:complexContent><xs:extension base="alt-tip">

... caracteristici noi...</xs:extension>

</xs:complexContent></xs:complexType>

Mihai Gabroveanu Validarea Documentelor XML

Page 23: Validarea Documentelor XML - XML Schemainf.ucv.ro/~mihaiug/courses/web/slides/Curs 6 - XML Schema.pdf · Cuprins 1 Introducere 2 XMLSchema ReferirealaoXMLSchema DefinireaunuifisierXMLSchema

IntroducereXML SchemaBibliografie

Intrebari si Raspunsuri

Referirea la o XML SchemaDefinirea unui fisier XML SchemaTipuri simpleDefinirea elementelor complexeIndicatori de ordineIndicatori de aparitieIndicatori de grupare

Indicatorul de secventa xs:sequence

Pentru a indica faptul ca elementle din cadrul unui tip complextrebuie sa apara intr-o anumita ordine folosim xs:sequence:

Definirea elementului PERSOANA:<xs:element name="PERSOANA"><xs:complexType>

<xs:sequence><xs:element name="NUME" type="xs:string"/><xs:element name="PRENUME" type="xs:string"/>

</xs:sequence></xs:complexType>

</xs:element>

Mihai Gabroveanu Validarea Documentelor XML

Page 24: Validarea Documentelor XML - XML Schemainf.ucv.ro/~mihaiug/courses/web/slides/Curs 6 - XML Schema.pdf · Cuprins 1 Introducere 2 XMLSchema ReferirealaoXMLSchema DefinireaunuifisierXMLSchema

IntroducereXML SchemaBibliografie

Intrebari si Raspunsuri

Referirea la o XML SchemaDefinirea unui fisier XML SchemaTipuri simpleDefinirea elementelor complexeIndicatori de ordineIndicatori de aparitieIndicatori de grupare

Indicatorul all xs:all

Pentru a declara o multimea de elemente ce trebuie sa aparaintr-un tip complex in care ordinea nu conteaza vom utilizaconstructia xs:all:

Definirea elementului PERSOANA:<xs:element name="PERSOANA"><xs:complexType>

<xs:all><xs:element name="NUME" type="xs:string"/><xs:element name="PRENUME" type="xs:string"/>

</xs:all></xs:complexType>

</xs:element>

Mihai Gabroveanu Validarea Documentelor XML

Page 25: Validarea Documentelor XML - XML Schemainf.ucv.ro/~mihaiug/courses/web/slides/Curs 6 - XML Schema.pdf · Cuprins 1 Introducere 2 XMLSchema ReferirealaoXMLSchema DefinireaunuifisierXMLSchema

IntroducereXML SchemaBibliografie

Intrebari si Raspunsuri

Referirea la o XML SchemaDefinirea unui fisier XML SchemaTipuri simpleDefinirea elementelor complexeIndicatori de ordineIndicatori de aparitieIndicatori de grupare

Indicatorul de alegere xs:choice

Indicatorul xs:choice permite definirea de tipuri complexe in careunul din elementele dintr-o multime poate sa apara:

Definirea elementului CARTE:<xs:element name="CARTE"><xs:complexType>

<xs:choice><xs:element name="AUTOR" type="persoana"/><xs:element name="EDITOR" type="persoana"/>

</xs:choice></xs:complexType>

</xs:element>

Mihai Gabroveanu Validarea Documentelor XML

Page 26: Validarea Documentelor XML - XML Schemainf.ucv.ro/~mihaiug/courses/web/slides/Curs 6 - XML Schema.pdf · Cuprins 1 Introducere 2 XMLSchema ReferirealaoXMLSchema DefinireaunuifisierXMLSchema

IntroducereXML SchemaBibliografie

Intrebari si Raspunsuri

Referirea la o XML SchemaDefinirea unui fisier XML SchemaTipuri simpleDefinirea elementelor complexeIndicatori de ordineIndicatori de aparitieIndicatori de grupare

Indicatorul maxOccurs

Indicator maxOccurs specifica numarul maxim de aparitii pentru unelement:

Definirea elementului PERSOANA:<xs:element name="PERSOANA"><xs:complexType>

<xs:sequence><xs:element name="NUME" type="xs:string"/><xs:element name="NUME-COPIL" type="xs:string"

maxOccurs="5"/></xs:sequence>

</xs:complexType></xs:element>

In exemplu anterior elementul NUME-COPIL trebuie sa apara cel putinodata (valoarea implicita pentru minOccurs este 1 implicit) si de maxim5 ori in secventa ce descrie elementul PERSOANA.Mihai Gabroveanu Validarea Documentelor XML

Page 27: Validarea Documentelor XML - XML Schemainf.ucv.ro/~mihaiug/courses/web/slides/Curs 6 - XML Schema.pdf · Cuprins 1 Introducere 2 XMLSchema ReferirealaoXMLSchema DefinireaunuifisierXMLSchema

IntroducereXML SchemaBibliografie

Intrebari si Raspunsuri

Referirea la o XML SchemaDefinirea unui fisier XML SchemaTipuri simpleDefinirea elementelor complexeIndicatori de ordineIndicatori de aparitieIndicatori de grupare

Indicatorul minOccurs

Indicator minOccurs specifica numarul maxim de aparitii pentru unelement:

Definirea elementului PERSOANA:<xs:element name="PERSOANA"><xs:complexType>

<xs:sequence><xs:element name="NUME" type="xs:string"/><xs:element name="NUME-COPIL" type="xs:string"

minOccurs="0" maxOccurs="5"/></xs:sequence>

</xs:complexType></xs:element>

In exemplu anterior elementul NUME-COPIL poate sa nu apara deloc saude maxim 5 ori in secventa ce descrie elementul PERSOANA.

Mihai Gabroveanu Validarea Documentelor XML

Page 28: Validarea Documentelor XML - XML Schemainf.ucv.ro/~mihaiug/courses/web/slides/Curs 6 - XML Schema.pdf · Cuprins 1 Introducere 2 XMLSchema ReferirealaoXMLSchema DefinireaunuifisierXMLSchema

IntroducereXML SchemaBibliografie

Intrebari si Raspunsuri

Referirea la o XML SchemaDefinirea unui fisier XML SchemaTipuri simpleDefinirea elementelor complexeIndicatori de ordineIndicatori de aparitieIndicatori de grupare

Indicatori de grupare a elementelor

Sunt utilizati pentru multimi de elemente inrudite:

Sintaxa definirii grupurilor de elemente:<xs:group name="nume-grup">

...</xs:group>

in cadrul unui grup putem defini elemente all, choice sausequence.

Mihai Gabroveanu Validarea Documentelor XML

Page 29: Validarea Documentelor XML - XML Schemainf.ucv.ro/~mihaiug/courses/web/slides/Curs 6 - XML Schema.pdf · Cuprins 1 Introducere 2 XMLSchema ReferirealaoXMLSchema DefinireaunuifisierXMLSchema

IntroducereXML SchemaBibliografie

Intrebari si Raspunsuri

Referirea la o XML SchemaDefinirea unui fisier XML SchemaTipuri simpleDefinirea elementelor complexeIndicatori de ordineIndicatori de aparitieIndicatori de grupare

Indicatori de grupare a elementelor -Exemplu

Definirea elementului PERSOANA:<xs:group name="GRUP-PERSOANA"><xs:sequence>

<xs:element name="NUME" type="xs:string"/><xs:element name="PRENUME" type="xs:string"/><xs:element name="DATA-NASTERE" type="xs:date"/>

</xs:sequence></xs:group><xs:element name="PERSOANA" type="INFO-PERSOANA"/><xs:complexType name="INFO-PERSOANA"><xs:sequence>

<xs:group ref="GRUP-PERSOANA"/><xs:element name="TARA" type="xs:string"/>

</xs:sequence></xs:complexType>

In exemplu anterior elementul NUME-COPIL poate sa nu apara deloc sau de maxim 5 ori in secventa ce

descrie elementul PERSOANA.

Mihai Gabroveanu Validarea Documentelor XML

Page 30: Validarea Documentelor XML - XML Schemainf.ucv.ro/~mihaiug/courses/web/slides/Curs 6 - XML Schema.pdf · Cuprins 1 Introducere 2 XMLSchema ReferirealaoXMLSchema DefinireaunuifisierXMLSchema

IntroducereXML SchemaBibliografie

Intrebari si Raspunsuri

Referirea la o XML SchemaDefinirea unui fisier XML SchemaTipuri simpleDefinirea elementelor complexeIndicatori de ordineIndicatori de aparitieIndicatori de grupare

Indicatori de grupare a atributelor

Sintaxa definirii grupurilor de atribute:<xs:attributeGroup name="nume-grup">

...</xs:attributeGroup>

in cadrul unui grup putem defini elemente all, choice sausequence.

Mihai Gabroveanu Validarea Documentelor XML

Page 31: Validarea Documentelor XML - XML Schemainf.ucv.ro/~mihaiug/courses/web/slides/Curs 6 - XML Schema.pdf · Cuprins 1 Introducere 2 XMLSchema ReferirealaoXMLSchema DefinireaunuifisierXMLSchema

IntroducereXML SchemaBibliografie

Intrebari si Raspunsuri

Referirea la o XML SchemaDefinirea unui fisier XML SchemaTipuri simpleDefinirea elementelor complexeIndicatori de ordineIndicatori de aparitieIndicatori de grupare

Indicatori de grupare a atributelor -Exemplu

Definirea unui grup de atribute:<xs:attributeGroup name="GRUP-PERSOANA">

<xs:attribute name="nume" type="xs:string"/><xs:attribute name="prenume" type="xs:string"/><xs:attribute name="data-nasterii" type="xs:date"/>

</xs:attributeGroup>

<xs:element name="PERSOANA" type="INFO-PERSOANA"/>

<xs:complexType name="INFO-PERSOANA"><xs:attributeGroup ref="GRUP-PERSOANA">

</xs:complexType>

Mihai Gabroveanu Validarea Documentelor XML

Page 32: Validarea Documentelor XML - XML Schemainf.ucv.ro/~mihaiug/courses/web/slides/Curs 6 - XML Schema.pdf · Cuprins 1 Introducere 2 XMLSchema ReferirealaoXMLSchema DefinireaunuifisierXMLSchema

IntroducereXML SchemaBibliografie

Intrebari si Raspunsuri

Bibliografie

XMLXML Schema Part 0: Primer Second Edition W3CRecommendation 28 October 2004, David C. Fallside, PriscillaWalmsleyXML Schema Part 1: Structures Second Edition W3CRecommendation 28 October 2004, Henry S. Thompson,David Beech, Murray Maloney, Noah MendelsohnXML Schema Part 2: Datatypes Second Edition W3CRecommendation 28 October 2004, Paul V. Biron, KaiserPermanente, Ashok MalhotraElliotte Rusty Harold, XML Bible. IDG Books Worldwide, Inc,919 E. Hillsdale Blvd., Suite 400, Foster City, CA 94404http://www.w3schools.com/schema/ XML Schema TutorialMihai Gabroveanu Validarea Documentelor XML

Page 33: Validarea Documentelor XML - XML Schemainf.ucv.ro/~mihaiug/courses/web/slides/Curs 6 - XML Schema.pdf · Cuprins 1 Introducere 2 XMLSchema ReferirealaoXMLSchema DefinireaunuifisierXMLSchema

IntroducereXML SchemaBibliografie

Intrebari si Raspunsuri

Va multumesc pentru atentia acordata

Intrebari?Comentarii?

Mihai Gabroveanu Validarea Documentelor XML