Get rid of CRs at the ends of lines.
authorguy <guy@f5534014-38df-0310-8fa8-9805f1628bb7>
Wed, 26 Jul 2006 02:37:39 +0000 (02:37 +0000)
committerguy <guy@f5534014-38df-0310-8fa8-9805f1628bb7>
Wed, 26 Jul 2006 02:37:39 +0000 (02:37 +0000)
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@18793 f5534014-38df-0310-8fa8-9805f1628bb7

dtds/dc.dtd
dtds/itunes.dtd
dtds/rss.dtd
dtds/smil.dtd

index 4c566216cd3ab9d07965cc8226189ae7fe5af004..b62a941f4583dd7fb9c4cfa1cb8d17a47a235e51 100644 (file)
@@ -1,24 +1,24 @@
-<? wireshark:protocol proto_name="dc" description="Dublin Core Metadata (DC)" ?>\r
-\r
-<!--\r
-    elements definitions for the Dublin Core Metadata DC schema\r
-    element names obtained from http://www.dublincore.org/schemas/xmls/qdc/2003/04/02/dc.xsd\r
--->\r
-\r
-<!DOCTYPE dc [\r
-    <!ELEMENT title (#PCDATA) >\r
-    <!ELEMENT creator (#PCDATA) >\r
-    <!ELEMENT subject (#PCDATA) >\r
-    <!ELEMENT description (#PCDATA) >\r
-    <!ELEMENT publisher (#PCDATA) >\r
-    <!ELEMENT contributor (#PCDATA) >\r
-    <!ELEMENT date (#PCDATA) >\r
-    <!ELEMENT type (#PCDATA) >\r
-    <!ELEMENT format (#PCDATA) >\r
-    <!ELEMENT identifier (#PCDATA) >\r
-    <!ELEMENT source (#PCDATA) >\r
-    <!ELEMENT language (#PCDATA) >\r
-    <!ELEMENT relation (#PCDATA) >\r
-    <!ELEMENT coverage (#PCDATA) >\r
-    <!ELEMENT rights (#PCDATA) >\r
-]>
\ No newline at end of file
+<? wireshark:protocol proto_name="dc" description="Dublin Core Metadata (DC)" ?>
+
+<!--
+    elements definitions for the Dublin Core Metadata DC schema
+    element names obtained from http://www.dublincore.org/schemas/xmls/qdc/2003/04/02/dc.xsd
+-->
+
+<!DOCTYPE dc [
+    <!ELEMENT title (#PCDATA) >
+    <!ELEMENT creator (#PCDATA) >
+    <!ELEMENT subject (#PCDATA) >
+    <!ELEMENT description (#PCDATA) >
+    <!ELEMENT publisher (#PCDATA) >
+    <!ELEMENT contributor (#PCDATA) >
+    <!ELEMENT date (#PCDATA) >
+    <!ELEMENT type (#PCDATA) >
+    <!ELEMENT format (#PCDATA) >
+    <!ELEMENT identifier (#PCDATA) >
+    <!ELEMENT source (#PCDATA) >
+    <!ELEMENT language (#PCDATA) >
+    <!ELEMENT relation (#PCDATA) >
+    <!ELEMENT coverage (#PCDATA) >
+    <!ELEMENT rights (#PCDATA) >
+]>
index 50e64ebfc251336157a11168f9731375f2e70597..ed1963e6aed632632eec8b42b0a1eae3c8275d49 100644 (file)
@@ -1,25 +1,25 @@
-<? wireshark:protocol proto_name="itunes" hierarchy="yes" description="iTunes podCast rss elements" ?>\r
-\r
-<!DOCTYPE itunes [\r
-    \r
-    <!ELEMENT author (#PCDATA) >\r
-    \r
-    <!ELEMENT block (#PCDATA) >\r
-    \r
-    <!ELEMENT category (#PCDATA) >\r
-    <!ATTLIST category text CDATA #IMPLIED >\r
-    \r
-    <!ELEMENT duration (#PCDATA) >\r
-    \r
-    <!ELEMENT explicit (#PCDATA) >\r
-    \r
-    <!ELEMENT keywords (#PCDATA) >\r
-    \r
-    <!ELEMENT owner (#PCDATA) >\r
-    \r
-    <!ELEMENT subtitle (#PCDATA) >\r
-    \r
-    <!ELEMENT summary (#PCDATA) >\r
-\r
-]>\r
-\r
+<? wireshark:protocol proto_name="itunes" hierarchy="yes" description="iTunes podCast rss elements" ?>
+
+<!DOCTYPE itunes [
+    
+    <!ELEMENT author (#PCDATA) >
+    
+    <!ELEMENT block (#PCDATA) >
+    
+    <!ELEMENT category (#PCDATA) >
+    <!ATTLIST category text CDATA #IMPLIED >
+    
+    <!ELEMENT duration (#PCDATA) >
+    
+    <!ELEMENT explicit (#PCDATA) >
+    
+    <!ELEMENT keywords (#PCDATA) >
+    
+    <!ELEMENT owner (#PCDATA) >
+    
+    <!ELEMENT subtitle (#PCDATA) >
+    
+    <!ELEMENT summary (#PCDATA) >
+
+]>
+
index c67f9fa650144e7ab2c11fdad7b2ff164d01a03a..163fc75f860af2186c9f6a9e0b81d7898574e8eb 100644 (file)
-<? wireshark:protocol proto_name="rss" hierarchy="yes" ?>\r
-\r
-<!--\r
-    this DTD is made so that wireshark can dissect RSS up to 2.0, do not try to use it for validating RSS documents\r
-    http://blogs.law.harvard.edu/tech/rss\r
--->\r
-\r
-<!ELEMENT rss (channel) >\r
-\r
-<!ATTLIST rss version CDATA #REQUIRED >\r
-\r
-<!ELEMENT channel ( title\r
-                  | description\r
-                  | link\r
-                  | language\r
-                  | item+\r
-                  | rating?\r
-                  | image?\r
-                  | textinput?\r
-                  | copyright?\r
-                  | pubDate?\r
-                  | lastBuildDate?\r
-                  | docs?\r
-                  | managingEditor?\r
-                  | webMaster?\r
-                  | skipHours?\r
-                  | skipDays?\r
-                  \r
-                  | cloud\r
-                  | ttl\r
-                  )*>\r
-\r
-<!ELEMENT title (#PCDATA)>\r
-\r
-<!ELEMENT description (#PCDATA)>\r
-\r
-<!ELEMENT link (#PCDATA)>\r
-\r
-<!ELEMENT image (title | url | link | width? | height? | description?)*>\r
-\r
-<!ELEMENT url (#PCDATA)>\r
-\r
-<!ELEMENT item ( title | link | description\r
-               | author | category | comments | enclosure | guid | pubDate | source )*>\r
-\r
-<!ELEMENT textinput (title | description | name | link)*>\r
-\r
-<!ELEMENT name (#PCDATA)>\r
-\r
-<!ELEMENT rating (#PCDATA)>\r
-\r
-<!ELEMENT language (#PCDATA)>\r
-\r
-<!ELEMENT width (#PCDATA)>\r
-\r
-<!ELEMENT height (#PCDATA)>\r
-\r
-<!ELEMENT copyright (#PCDATA)>\r
-\r
-<!ELEMENT pubDate (#PCDATA)>\r
-\r
-<!ELEMENT lastBuildDate (#PCDATA)>\r
-\r
-<!ELEMENT docs (#PCDATA)>\r
-\r
-<!ELEMENT managingEditor (#PCDATA)>\r
-\r
-<!ELEMENT webMaster (#PCDATA)>\r
-\r
-<!ELEMENT hour (#PCDATA)>\r
-\r
-<!ELEMENT day (#PCDATA)>\r
-\r
-<!ELEMENT skipHours (hour+)>\r
-\r
-<!ELEMENT skipDays (day+)>\r
-\r
-<!ELEMENT cloud (#PCDATA)>\r
-\r
-<!ATTLIST cloud domain CDATA #IMPLIED\r
-                port CDATA #IMPLIED\r
-                registerProcedure CDATA #IMPLIED\r
-                protocol CDATA #IMPLIED\r
-                path CDATA #IMPLIED >\r
-                    \r
-<!ELEMENT ttl (#PCDATA)>\r
-\r
-<!ELEMENT source (#PCDATA)>\r
-<!ATTLIST source url CDATA #IMPLIED >\r
-\r
-<!ELEMENT enclosure (#PCDATA)>\r
-<!ATTLIST enclosure url CDATA #IMPLIED\r
-                    length CDATA #IMPLIED\r
-                    type CDATA #IMPLIED >\r
-\r
-\r
-<!ELEMENT category (#PCDATA)>\r
-<!ATTLIST category domain CDATA #IMPLIED >\r
-\r
-<!ELEMENT guid (#PCDATA)>\r
-<!ATTLIST guid isPermaLink CDATA #IMPLIED >\r
-\r
-<!ELEMENT author (#PCDATA)>\r
-\r
-<!ELEMENT comments (#PCDATA)>\r
-\r
+<? wireshark:protocol proto_name="rss" hierarchy="yes" ?>
+
+<!--
+    this DTD is made so that wireshark can dissect RSS up to 2.0, do not try to use it for validating RSS documents
+    http://blogs.law.harvard.edu/tech/rss
+-->
+
+<!ELEMENT rss (channel) >
+
+<!ATTLIST rss version CDATA #REQUIRED >
+
+<!ELEMENT channel ( title
+                  | description
+                  | link
+                  | language
+                  | item+
+                  | rating?
+                  | image?
+                  | textinput?
+                  | copyright?
+                  | pubDate?
+                  | lastBuildDate?
+                  | docs?
+                  | managingEditor?
+                  | webMaster?
+                  | skipHours?
+                  | skipDays?
+                  
+                  | cloud
+                  | ttl
+                  )*>
+
+<!ELEMENT title (#PCDATA)>
+
+<!ELEMENT description (#PCDATA)>
+
+<!ELEMENT link (#PCDATA)>
+
+<!ELEMENT image (title | url | link | width? | height? | description?)*>
+
+<!ELEMENT url (#PCDATA)>
+
+<!ELEMENT item ( title | link | description
+               | author | category | comments | enclosure | guid | pubDate | source )*>
+
+<!ELEMENT textinput (title | description | name | link)*>
+
+<!ELEMENT name (#PCDATA)>
+
+<!ELEMENT rating (#PCDATA)>
+
+<!ELEMENT language (#PCDATA)>
+
+<!ELEMENT width (#PCDATA)>
+
+<!ELEMENT height (#PCDATA)>
+
+<!ELEMENT copyright (#PCDATA)>
+
+<!ELEMENT pubDate (#PCDATA)>
+
+<!ELEMENT lastBuildDate (#PCDATA)>
+
+<!ELEMENT docs (#PCDATA)>
+
+<!ELEMENT managingEditor (#PCDATA)>
+
+<!ELEMENT webMaster (#PCDATA)>
+
+<!ELEMENT hour (#PCDATA)>
+
+<!ELEMENT day (#PCDATA)>
+
+<!ELEMENT skipHours (hour+)>
+
+<!ELEMENT skipDays (day+)>
+
+<!ELEMENT cloud (#PCDATA)>
+
+<!ATTLIST cloud domain CDATA #IMPLIED
+                port CDATA #IMPLIED
+                registerProcedure CDATA #IMPLIED
+                protocol CDATA #IMPLIED
+                path CDATA #IMPLIED >
+                    
+<!ELEMENT ttl (#PCDATA)>
+
+<!ELEMENT source (#PCDATA)>
+<!ATTLIST source url CDATA #IMPLIED >
+
+<!ELEMENT enclosure (#PCDATA)>
+<!ATTLIST enclosure url CDATA #IMPLIED
+                    length CDATA #IMPLIED
+                    type CDATA #IMPLIED >
+
+
+<!ELEMENT category (#PCDATA)>
+<!ATTLIST category domain CDATA #IMPLIED >
+
+<!ELEMENT guid (#PCDATA)>
+<!ATTLIST guid isPermaLink CDATA #IMPLIED >
+
+<!ELEMENT author (#PCDATA)>
+
+<!ELEMENT comments (#PCDATA)>
+
index 983816b5e60c3274f8a6f99770bba032eeeb5b76..20295de5ec8ecd0d9f5837c6be20f47bc69b0612 100644 (file)
-<? wireshark:protocol\r
-       proto_name="smil"\r
-       media="application/smil"\r
-       description="Synchronized Multimedia Integration Language"\r
-       ?>\r
-\r
-<!--\r
-\r
-    This is the XML document type definition (DTD) for SMIL 1.0.\r
-\r
-    Date: 1998/06/15 08:56:30\r
-\r
-    Authors: \r
-        Jacco van Ossenbruggen <jrvosse@cwi.nl> \r
-        Sjoerd Mullender       <sjoerd@cwi.nl>\r
-        \r
-    Further information about SMIL is available at:\r
-\r
-          http://www.w3.org/AudioVideo/\r
-\r
--->\r
-\r
-\r
-<!-- Generally useful entities -->\r
-<!ENTITY % id-attr "id ID #IMPLIED">\r
-<!ENTITY % title-attr "title CDATA #IMPLIED">\r
-<!ENTITY % skip-attr "skip-content (true|false) 'true'">\r
-<!ENTITY % desc-attr "\r
-        %title-attr;\r
-        abstract        CDATA   #IMPLIED\r
-        author          CDATA   #IMPLIED\r
-        copyright       CDATA   #IMPLIED\r
-">\r
-\r
-<!--=================== SMIL Document =====================================-->\r
-<!--\r
-     The root element SMIL contains all other elements.\r
--->\r
-<!ELEMENT smil (head?,body?)>\r
-<!ATTLIST smil\r
-        %id-attr;\r
->\r
-\r
-<!--=================== The Document Head =================================-->\r
-<!ENTITY % layout-section "layout|switch">\r
-\r
-<!ENTITY % head-element "(meta*,((%layout-section;), meta*))?">\r
-\r
-<!ELEMENT head %head-element;>\r
-<!ATTLIST head %id-attr;>\r
-\r
-\r
-<!--=================== Layout Element ====================================-->\r
-<!--\r
-     Layout contains the region and root-layout elements defined by\r
-     smil-basic-layout or other elements defined an external layout \r
-     mechanism.\r
--->\r
-<!ELEMENT layout (region|root-layout)>\r
-<!ATTLIST layout\r
-        %id-attr;\r
-        type CDATA      "text/smil-basic-layout"\r
->\r
-\r
-\r
-<!--=================== Region Element ===================================-->\r
-<!ENTITY % viewport-attrs "\r
-        height              CDATA    #IMPLIED\r
-        width               CDATA    #IMPLIED\r
-        background-color    CDATA    #IMPLIED\r
-">\r
-\r
-<!ELEMENT region EMPTY>\r
-<!ATTLIST region\r
-        %id-attr;\r
-        %title-attr;\r
-        %viewport-attrs;\r
-        left                CDATA    "0"\r
-        top                 CDATA    "0"\r
-        z-index             CDATA    "0"\r
-        fit                 (hidden|fill|meet|scroll|slice)    "hidden"\r
-        %skip-attr;\r
->\r
-\r
-<!--=================== Root-layout Element ================================-->\r
-<!ELEMENT root-layout EMPTY>\r
-<!ATTLIST root-layout\r
-        %id-attr;\r
-        %title-attr;\r
-        %viewport-attrs;\r
-        %skip-attr;\r
->\r
-\r
-\r
-<!--=================== Meta Element=======================================-->\r
-<!ELEMENT meta EMPTY>\r
-<!ATTLIST meta\r
-        name    NMTOKEN #REQUIRED\r
-        content CDATA   #REQUIRED\r
-        %skip-attr;\r
->\r
-\r
-<!--=================== The Document Body =================================-->\r
-<!ENTITY % media-object "audio|video|text|img|animation|textstream|ref">\r
-<!ENTITY % schedule "par|seq|(%media-object;)">\r
-<!ENTITY % inline-link "a">\r
-<!ENTITY % assoc-link "anchor">\r
-<!ENTITY % link "%inline-link;">\r
-<!ENTITY % container-content "(%schedule;)|switch|(%link;)">\r
-<!ENTITY % body-content "(%container-content;)">\r
-\r
-<!ELEMENT body (%body-content;)*>\r
-<!ATTLIST body %id-attr;>\r
-\r
-<!--=================== Synchronization Attributes ========================-->\r
-<!ENTITY % sync-attributes "\r
-        begin   CDATA   #IMPLIED\r
-        end     CDATA   #IMPLIED\r
-">\r
-\r
-<!--=================== Switch Parameter Attributes =======================-->\r
-<!ENTITY % system-attribute "\r
-        system-bitrate             CDATA                #IMPLIED\r
-        system-language            CDATA                #IMPLIED\r
-        system-required            NMTOKEN              #IMPLIED\r
-        system-screen-size         CDATA                #IMPLIED\r
-        system-screen-depth        CDATA                #IMPLIED\r
-        system-captions            (on|off)             #IMPLIED\r
-        system-overdub-or-caption  (caption|overdub)    #IMPLIED\r
-">\r
-\r
-<!--=================== Fill Attribute ====================================-->\r
-<!ENTITY % fill-attribute "\r
-        fill    (remove|freeze)    'remove'\r
-">\r
-\r
-\r
-<!--=================== The Parallel Element ==============================-->\r
-<!ENTITY % par-content "%container-content;">\r
-<!ELEMENT par    (%par-content;)*>\r
-<!ATTLIST par\r
-        %id-attr;\r
-        %desc-attr;\r
-        endsync CDATA           "last"\r
-        dur     CDATA           #IMPLIED\r
-        repeat  CDATA           "1"\r
-        region  IDREF           #IMPLIED\r
-        %sync-attributes;\r
-        %system-attribute;\r
->\r
-\r
-<!--=================== The Sequential Element ============================-->\r
-<!ENTITY % seq-content "%container-content;">\r
-<!ELEMENT seq    (%seq-content;)*>\r
-<!ATTLIST seq\r
-        %id-attr;\r
-        %desc-attr;\r
-        dur     CDATA           #IMPLIED\r
-        repeat  CDATA           "1"\r
-        region  IDREF           #IMPLIED\r
-        %sync-attributes;\r
-        %system-attribute;\r
->\r
-\r
-<!--=================== The Switch Element ================================-->\r
-<!-- In the head, a switch may contain only layout elements,\r
-     in the body, only container elements. However, this\r
-     constraint cannot be expressed in the DTD (?), so\r
-     we allow both:\r
--->\r
-<!ENTITY % switch-content "layout|(%container-content;)">\r
-<!ELEMENT switch (%switch-content;)*>\r
-<!ATTLIST switch\r
-        %id-attr;\r
-        %title-attr;\r
->\r
-\r
-<!--=================== Media Object Elements =============================-->\r
-<!-- SMIL only defines the structure. The real media data is\r
-     referenced by the src attribute of the media objects.\r
--->\r
-\r
-<!-- Furthermore, they have the following attributes as defined\r
-     in the SMIL specification:\r
--->\r
-<!ENTITY % mo-attributes "\r
-        %id-attr;\r
-        %desc-attr;\r
-        region     IDREF           #IMPLIED\r
-        alt        CDATA           #IMPLIED\r
-        longdesc   CDATA           #IMPLIED\r
-        src        CDATA           #IMPLIED\r
-        type       CDATA           #IMPLIED\r
-        dur        CDATA           #IMPLIED\r
-        repeat     CDATA           '1'\r
-        %fill-attribute;\r
-        %sync-attributes;\r
-        %system-attribute;\r
-">\r
-\r
-<!--\r
-     Most info is in the attributes, media objects are empty or\r
-     contain associated link elements:\r
--->\r
-<!ENTITY % mo-content "(%assoc-link;)*">\r
-<!ENTITY % clip-attrs "\r
-        clip-begin      CDATA   #IMPLIED\r
-        clip-end        CDATA   #IMPLIED\r
-">\r
-\r
-<!ELEMENT ref           %mo-content;>\r
-<!ELEMENT audio         %mo-content;>\r
-<!ELEMENT img           %mo-content;>\r
-<!ELEMENT video         %mo-content;>\r
-<!ELEMENT text          %mo-content;>\r
-<!ELEMENT textstream    %mo-content;>\r
-<!ELEMENT animation     %mo-content;>\r
-\r
-<!ATTLIST ref           %mo-attributes; %clip-attrs;>\r
-<!ATTLIST audio         %mo-attributes; %clip-attrs;>\r
-<!ATTLIST video         %mo-attributes; %clip-attrs;>\r
-<!ATTLIST animation     %mo-attributes; %clip-attrs;>\r
-<!ATTLIST textstream    %mo-attributes; %clip-attrs;>\r
-<!ATTLIST text          %mo-attributes;>\r
-<!ATTLIST img           %mo-attributes;>\r
-\r
-<!--=================== Link Elements =====================================-->\r
-\r
-<!ENTITY % smil-link-attributes "\r
-        %id-attr;\r
-        %title-attr;\r
-        href            CDATA                   #REQUIRED\r
-        show            (replace|new|pause)     'replace'\r
-">\r
-\r
-\r
-<!--=================== Inline Link Element ===============================-->\r
-<!ELEMENT a (%schedule;|switch)*>\r
-<!ATTLIST a\r
-        %smil-link-attributes;\r
->\r
-\r
-\r
-<!--=================== Associated Link Element ===========================-->\r
-<!ELEMENT anchor EMPTY>\r
-<!ATTLIST anchor\r
-        %skip-attr;\r
-        %smil-link-attributes;\r
-        %sync-attributes;\r
-        coords          CDATA                   #IMPLIED\r
->\r
-\r
+<? wireshark:protocol
+       proto_name="smil"
+       media="application/smil"
+       description="Synchronized Multimedia Integration Language"
+       ?>
+
+<!--
+
+    This is the XML document type definition (DTD) for SMIL 1.0.
+
+    Date: 1998/06/15 08:56:30
+
+    Authors: 
+        Jacco van Ossenbruggen <jrvosse@cwi.nl> 
+        Sjoerd Mullender       <sjoerd@cwi.nl>
+        
+    Further information about SMIL is available at:
+
+          http://www.w3.org/AudioVideo/
+
+-->
+
+
+<!-- Generally useful entities -->
+<!ENTITY % id-attr "id ID #IMPLIED">
+<!ENTITY % title-attr "title CDATA #IMPLIED">
+<!ENTITY % skip-attr "skip-content (true|false) 'true'">
+<!ENTITY % desc-attr "
+        %title-attr;
+        abstract        CDATA   #IMPLIED
+        author          CDATA   #IMPLIED
+        copyright       CDATA   #IMPLIED
+">
+
+<!--=================== SMIL Document =====================================-->
+<!--
+     The root element SMIL contains all other elements.
+-->
+<!ELEMENT smil (head?,body?)>
+<!ATTLIST smil
+        %id-attr;
+>
+
+<!--=================== The Document Head =================================-->
+<!ENTITY % layout-section "layout|switch">
+
+<!ENTITY % head-element "(meta*,((%layout-section;), meta*))?">
+
+<!ELEMENT head %head-element;>
+<!ATTLIST head %id-attr;>
+
+
+<!--=================== Layout Element ====================================-->
+<!--
+     Layout contains the region and root-layout elements defined by
+     smil-basic-layout or other elements defined an external layout 
+     mechanism.
+-->
+<!ELEMENT layout (region|root-layout)>
+<!ATTLIST layout
+        %id-attr;
+        type CDATA      "text/smil-basic-layout"
+>
+
+
+<!--=================== Region Element ===================================-->
+<!ENTITY % viewport-attrs "
+        height              CDATA    #IMPLIED
+        width               CDATA    #IMPLIED
+        background-color    CDATA    #IMPLIED
+">
+
+<!ELEMENT region EMPTY>
+<!ATTLIST region
+        %id-attr;
+        %title-attr;
+        %viewport-attrs;
+        left                CDATA    "0"
+        top                 CDATA    "0"
+        z-index             CDATA    "0"
+        fit                 (hidden|fill|meet|scroll|slice)    "hidden"
+        %skip-attr;
+>
+
+<!--=================== Root-layout Element ================================-->
+<!ELEMENT root-layout EMPTY>
+<!ATTLIST root-layout
+        %id-attr;
+        %title-attr;
+        %viewport-attrs;
+        %skip-attr;
+>
+
+
+<!--=================== Meta Element=======================================-->
+<!ELEMENT meta EMPTY>
+<!ATTLIST meta
+        name    NMTOKEN #REQUIRED
+        content CDATA   #REQUIRED
+        %skip-attr;
+>
+
+<!--=================== The Document Body =================================-->
+<!ENTITY % media-object "audio|video|text|img|animation|textstream|ref">
+<!ENTITY % schedule "par|seq|(%media-object;)">
+<!ENTITY % inline-link "a">
+<!ENTITY % assoc-link "anchor">
+<!ENTITY % link "%inline-link;">
+<!ENTITY % container-content "(%schedule;)|switch|(%link;)">
+<!ENTITY % body-content "(%container-content;)">
+
+<!ELEMENT body (%body-content;)*>
+<!ATTLIST body %id-attr;>
+
+<!--=================== Synchronization Attributes ========================-->
+<!ENTITY % sync-attributes "
+        begin   CDATA   #IMPLIED
+        end     CDATA   #IMPLIED
+">
+
+<!--=================== Switch Parameter Attributes =======================-->
+<!ENTITY % system-attribute "
+        system-bitrate             CDATA                #IMPLIED
+        system-language            CDATA                #IMPLIED
+        system-required            NMTOKEN              #IMPLIED
+        system-screen-size         CDATA                #IMPLIED
+        system-screen-depth        CDATA                #IMPLIED
+        system-captions            (on|off)             #IMPLIED
+        system-overdub-or-caption  (caption|overdub)    #IMPLIED
+">
+
+<!--=================== Fill Attribute ====================================-->
+<!ENTITY % fill-attribute "
+        fill    (remove|freeze)    'remove'
+">
+
+
+<!--=================== The Parallel Element ==============================-->
+<!ENTITY % par-content "%container-content;">
+<!ELEMENT par    (%par-content;)*>
+<!ATTLIST par
+        %id-attr;
+        %desc-attr;
+        endsync CDATA           "last"
+        dur     CDATA           #IMPLIED
+        repeat  CDATA           "1"
+        region  IDREF           #IMPLIED
+        %sync-attributes;
+        %system-attribute;
+>
+
+<!--=================== The Sequential Element ============================-->
+<!ENTITY % seq-content "%container-content;">
+<!ELEMENT seq    (%seq-content;)*>
+<!ATTLIST seq
+        %id-attr;
+        %desc-attr;
+        dur     CDATA           #IMPLIED
+        repeat  CDATA           "1"
+        region  IDREF           #IMPLIED
+        %sync-attributes;
+        %system-attribute;
+>
+
+<!--=================== The Switch Element ================================-->
+<!-- In the head, a switch may contain only layout elements,
+     in the body, only container elements. However, this
+     constraint cannot be expressed in the DTD (?), so
+     we allow both:
+-->
+<!ENTITY % switch-content "layout|(%container-content;)">
+<!ELEMENT switch (%switch-content;)*>
+<!ATTLIST switch
+        %id-attr;
+        %title-attr;
+>
+
+<!--=================== Media Object Elements =============================-->
+<!-- SMIL only defines the structure. The real media data is
+     referenced by the src attribute of the media objects.
+-->
+
+<!-- Furthermore, they have the following attributes as defined
+     in the SMIL specification:
+-->
+<!ENTITY % mo-attributes "
+        %id-attr;
+        %desc-attr;
+        region     IDREF           #IMPLIED
+        alt        CDATA           #IMPLIED
+        longdesc   CDATA           #IMPLIED
+        src        CDATA           #IMPLIED
+        type       CDATA           #IMPLIED
+        dur        CDATA           #IMPLIED
+        repeat     CDATA           '1'
+        %fill-attribute;
+        %sync-attributes;
+        %system-attribute;
+">
+
+<!--
+     Most info is in the attributes, media objects are empty or
+     contain associated link elements:
+-->
+<!ENTITY % mo-content "(%assoc-link;)*">
+<!ENTITY % clip-attrs "
+        clip-begin      CDATA   #IMPLIED
+        clip-end        CDATA   #IMPLIED
+">
+
+<!ELEMENT ref           %mo-content;>
+<!ELEMENT audio         %mo-content;>
+<!ELEMENT img           %mo-content;>
+<!ELEMENT video         %mo-content;>
+<!ELEMENT text          %mo-content;>
+<!ELEMENT textstream    %mo-content;>
+<!ELEMENT animation     %mo-content;>
+
+<!ATTLIST ref           %mo-attributes; %clip-attrs;>
+<!ATTLIST audio         %mo-attributes; %clip-attrs;>
+<!ATTLIST video         %mo-attributes; %clip-attrs;>
+<!ATTLIST animation     %mo-attributes; %clip-attrs;>
+<!ATTLIST textstream    %mo-attributes; %clip-attrs;>
+<!ATTLIST text          %mo-attributes;>
+<!ATTLIST img           %mo-attributes;>
+
+<!--=================== Link Elements =====================================-->
+
+<!ENTITY % smil-link-attributes "
+        %id-attr;
+        %title-attr;
+        href            CDATA                   #REQUIRED
+        show            (replace|new|pause)     'replace'
+">
+
+
+<!--=================== Inline Link Element ===============================-->
+<!ELEMENT a (%schedule;|switch)*>
+<!ATTLIST a
+        %smil-link-attributes;
+>
+
+
+<!--=================== Associated Link Element ===========================-->
+<!ELEMENT anchor EMPTY>
+<!ATTLIST anchor
+        %skip-attr;
+        %smil-link-attributes;
+        %sync-attributes;
+        coords          CDATA                   #IMPLIED
+>
+