Ciao a tutti! Ho trovato su internet questo esempio di DTD e devo ricavarne l'XML:

<!ELEMENT TVSCHEDULE (CHANNEL+)>
<!ELEMENT CHANNEL (BANNER, DAY+)>
<!ELEMENT BANNER (#PCDATA)>
<!ELEMENT DAY ((DATE, HOLIDAY) | (DATE, PROGRAMSLOT+))+>
<!ELEMENT HOLIDAY (#PCDATA)>
<!ELEMENT DATE (#PCDATA)>
<!ELEMENT PROGRAMSLOT (TIME, TITLE, DESCRIPTION?)>
<!ELEMENT TIME (#PCDATA)>
<!ELEMENT TITLE (#PCDATA)>
<!ELEMENT DESCRIPTION (#PCDATA)>

<!ATTLIST TVSCHEDULE NAME CDATA #REQUIRED>
<!ATTLIST CHANNEL CHAN CDATA #REQUIRED>
<!ATTLIST PROGRAMSLOT VTR CDATA #IMPLIED>
<!ATTLIST TITLE RATING CDATA #IMPLIED>
<!ATTLIST TITLE LANGUAGE CDATA #IMPLIED>

ho provato a farlo..l'unico che non mi esce giusto è questo:
<!ELEMENT DAY ((DATE, HOLIDAY) | (DATE, PROGRAMSLOT+))+>
che a me esce:
<!ELEMENT day ( date | holiday | programslot )* >

l'XML l'ho scritto così:
<?xml version="1.0"?>

<tvschedule name="schedulatore per tv">
<chanel chan="canale 1">
<banner>Sono un banner!</banner>
<day>
<date>21-03-2010</date>
<holiday>22-03-2010</holiday>
</day>
<day>
<date>23-03-2010</date>
<programslot vtr="slot del programma - 1">
<time>22:03</time>
<title rating="film tv" language="ITA or ENG">RAI2</title>
</programslot>
<programslot>
<time>23:03</time>
<title>RAI3</title>
<description>FILM</description>
</programslot>
</day>
<day>
<date>24-03-2010</date>
<holiday>25-03-2010</holiday>
<date>26-03-2010</date>
<holiday>27-03-2010</holiday>
</day>
</chanel>
<chanel chan="2">
<banner>Io sono un Banner!!</banner>
<day>
<date>28-03-2010</date>
<holiday>29-03-2010</holiday>
</day>
</chanel>
</tvschedule>

Non capisco come fare....grazie anticipatamente a chiunque possa aiutarmi!