Scrivo un + che dovrebbe significare una o più volte, e provo:
Con zero occorrenze del tag:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE capitolo [ <!ELEMENT capitolo (paragrafo+)> <!ELEMENT paragrafo (#PCDATA)> ]> <capitolo> </capitolo>
Non valido
Con una occorrenza del tag:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE capitolo [ <!ELEMENT capitolo (paragrafo+)> <!ELEMENT paragrafo (#PCDATA)> ]> <capitolo> <paragrafo> </paragrafo> </capitolo>
Valido!
con più occorrenze del tag:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE capitolo [ <!ELEMENT capitolo (paragrafo+)> <!ELEMENT paragrafo (#PCDATA)> ]> <capitolo> <paragrafo> </paragrafo> <paragrafo> </paragrafo> </capitolo>
Valido!
Adesso con *, che dovrebbe significare "zero o più volte".
Zero occorrenze:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE capitolo [ <!ELEMENT capitolo (paragrafo*)> <!ELEMENT paragrafo (#PCDATA)> ]> <capitolo> </capitolo>
Valido!
Una occorrenza:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE capitolo [ <!ELEMENT capitolo (paragrafo*)> <!ELEMENT paragrafo (#PCDATA)> ]> <capitolo> <paragrafo> </paragrafo> </capitolo>
Valido!
Con più occorrenze:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE capitolo [ <!ELEMENT capitolo (paragrafo*)> <!ELEMENT paragrafo (#PCDATA)> ]> <capitolo> <paragrafo> </paragrafo> <paragrafo> </paragrafo> </capitolo>
Valido!
Adesso metto il segno ? che dovrebbe significare zero o una occorrenza, e provo:
Zero occorrenze:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE capitolo [ <!ELEMENT capitolo (paragrafo?)> <!ELEMENT paragrafo (#PCDATA)> ]> <capitolo> </capitolo>
Valido!
Una occorrenza:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE capitolo [ <!ELEMENT capitolo (paragrafo?)> <!ELEMENT paragrafo (#PCDATA)> ]> <capitolo> <paragrafo> </paragrafo> </capitolo>
Valido!
Più occorrenze:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE capitolo [ <!ELEMENT capitolo (paragrafo?)> <!ELEMENT paragrafo (#PCDATA)> ]> <capitolo> <paragrafo> </paragrafo> <paragrafo> </paragrafo> </capitolo>
Non valido
Riassumendo:
+ va da 1 a molte;
* va da 0 a molte;
? va da 0 a una.
Nessun commento:
Posta un commento