TV.dtd:
<!ELEMENT TVSCHEDULE (CHANNEL+)>
<!ELEMENT CHANNEL (BANNER,DAY+)>
<!ELEMENT BANNER (#PCDATA)>
<!ELEMENT DAY (DATE,(HOLIDAY|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>
TV.xml:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE TVSCHEDULE SYSTEM "TV.dtd">
<TVSCHEDULE NAME="CCTV">
<CHANNEL CHAN="CCCC">
<BANNER>aaa</BANNER>
<DAY>
<DATE>2020.05.12</DATE>
<HOLIDAY>xxx</HOLIDAY>
</DAY>
<DAY>
<DATE>2020.05.13</DATE>
<PROGRAMSLOT VTR="SSS">
<TIME>1990</TIME>
<TITLE RATING="DDD">test</TITLE>
</PROGRAMSLOT>
</DAY>
</CHANNEL>
</TVSCHEDULE>
结果: