applayerprotocols/wapbase/Tdtd/DTDs/wml.dtd
changeset 0 b16258d2340f
child 29 099ef125a1a4
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/applayerprotocols/wapbase/Tdtd/DTDs/wml.dtd	Tue Feb 02 01:09:52 2010 +0200
@@ -0,0 +1,232 @@
+<!--
+Wireless Markup Language (WML) Document Type Definition.
+WML is an XML language.  Typical usage:
+   <?xml version="1.0"?>
+   <!DOCTYPE WML PUBLIC "-//WAPFORUM//DTD WML 1.0//EN"
+          "http://www.wapforum.org/DTD/wml.xml">
+   <WML>
+   ...
+   </WML>
+-->
+
+<!ENTITY % length  "CDATA">    <!-- [0-9]+ for pixels or [0-9]+"%" for
+                                    percentage length -->
+<!ENTITY % vdata   "CDATA">    <!-- attribute value possibly containing
+                                    variable references -->
+<!ENTITY % URL     "%vdata;">  <!-- URL or URN designating a hypertext
+                                    node. May contain variable references -->
+<!ENTITY % boolean	"(TRUE|FALSE)">
+<!ENTITY % number  "NMTOKEN">  <!-- a number, with format [0-9]+ -->
+
+<!ENTITY % emph    "EM | STRONG | B | I | U | BIG | SMALL">
+<!ENTITY % tab     "TAB">
+<!ENTITY % layout  "BR">
+
+<!ENTITY % text     "#PCDATA | %emph; | %tab;">
+<!ENTITY % inline   "%text; | %layout;">
+
+<!-- flow covers "card-level" elements, such as text and images -->
+<!ENTITY % flow     "%inline; | IMG | A">
+
+<!-- Task types -->
+<!ENTITY % task   "GO | PREV | NOOP | REFRESH">
+
+<!-- Navigation and event elements -->
+<!ENTITY % navelmts "DO | ONEVENT">
+
+<!--================ Decks and Cards ================-->
+
+<!ELEMENT WML ( HEAD?, TEMPLATE?, CARD+ )>
+<!ATTLIST WML
+  xml:lang        NMTOKEN        #IMPLIED
+  >
+
+<!-- card intrinsic events -->
+<!ENTITY % cardev
+ "ONENTERFORWARD  %URL;          #IMPLIED
+  ONENTERBACKWARD %URL;          #IMPLIED
+  ONTIMER         %URL;          #IMPLIED"
+  >
+
+<!-- CARD field types -->
+<!ENTITY % fields  "%flow; | INPUT | SELECT | FIELDSET">
+
+<!ELEMENT CARD (%fields; | %navelmts; | TIMER)*>
+<!ATTLIST CARD
+  NAME            NMTOKEN       #IMPLIED
+  TITLE           %vdata;       #IMPLIED
+  NEWCONTEXT      %boolean;     "FALSE"
+  STYLE           (LIST|SET)    "LIST"
+  %cardev;
+  >
+
+<!--================ Event Bindings ================-->
+
+<!ELEMENT DO (%task;)>
+<!ATTLIST DO
+  TYPE         CDATA       #REQUIRED
+  LABEL        %vdata;     #IMPLIED
+  NAME         NMTOKEN     #IMPLIED
+  OPTIONAL     %boolean;   "FALSE"
+  >
+
+<!ELEMENT ONEVENT (%task;)>
+<!ATTLIST ONEVENT
+  TYPE         CDATA       #REQUIRED
+  >
+
+<!--================ Deck-level declarations ================-->
+
+<!ELEMENT HEAD ( ACCESS | META )+>
+
+<!ELEMENT TEMPLATE (%navelmts;)*>
+<!ATTLIST TEMPLATE
+  %cardev;
+  >
+
+<!ELEMENT ACCESS EMPTY>
+<!ATTLIST ACCESS
+  DOMAIN       CDATA       #IMPLIED
+  PATH         CDATA       #IMPLIED
+  PUBLIC       %boolean;   "FALSE"
+  >
+
+<!ELEMENT META EMPTY>
+<!ATTLIST META
+  HTTP-EQUIV     CDATA      #IMPLIED
+  NAME           CDATA      #IMPLIED
+  USER-AGENT     CDATA      #IMPLIED
+  CONTENT        CDATA      #REQUIRED
+  SCHEME         CDATA      #IMPLIED
+  >
+
+<!--================ Tasks ================-->
+
+<!ELEMENT GO (VAR)*>
+<!ATTLIST GO
+  URL             %URL;           #REQUIRED
+  SENDREFERER     %boolean;       "FALSE"
+  METHOD          (POST|GET)      "GET"
+  ACCEPT-CHARSET  CDATA           #IMPLIED
+  POSTDATA        %vdata;         #IMPLIED
+  >
+
+<!ELEMENT PREV (VAR)*>
+
+<!ELEMENT REFRESH (VAR)+>
+
+<!ELEMENT NOOP EMPTY>
+
+<!--================ VAR ================-->
+
+<!ELEMENT VAR EMPTY>
+<!ATTLIST VAR
+  NAME         %vdata;           #REQUIRED
+  VALUE        %vdata;           #REQUIRED
+  >
+
+<!--================ CARD Fields ================-->
+
+<!ELEMENT SELECT (OPTGROUP|OPTION)+>
+<!ATTLIST SELECT
+  TITLE        %vdata;           #IMPLIED
+  KEY          NMTOKEN           #IMPLIED
+  DEFAULT      %vdata;           #IMPLIED
+  IKEY         NMTOKEN           #IMPLIED
+  IDEFAULT     %vdata;           #IMPLIED
+  MULTIPLE     %boolean;         "FALSE"
+  TABINDEX     %number;          #IMPLIED
+  >
+
+<!ELEMENT OPTGROUP (OPTGROUP|OPTION)+ >
+<!ATTLIST OPTGROUP
+  TITLE      %vdata;    #IMPLIED
+  >
+
+<!ELEMENT OPTION (%text; | ONEVENT)*>
+<!ATTLIST OPTION
+  VALUE      %vdata;    #IMPLIED
+  TITLE      %vdata;    #IMPLIED
+  ONCLICK    %URL;      #IMPLIED
+  >
+
+<!ELEMENT INPUT EMPTY>
+<!ATTLIST INPUT
+  KEY        NMTOKEN           #REQUIRED
+  TYPE       (TEXT|PASSWORD)   "TEXT"
+  VALUE      %vdata;           #IMPLIED
+  DEFAULT    %vdata;           #IMPLIED
+  FORMAT     CDATA             #IMPLIED
+  EMPTYOK    %boolean;         "FALSE"
+  SIZE       %number;          #IMPLIED
+  MAXLENGTH  %number;          #IMPLIED
+  TABINDEX   %number;          #IMPLIED
+  TITLE      %vdata;           #IMPLIED
+  >
+
+<!ELEMENT FIELDSET (%fields;)* >
+<!ATTLIST FIELDSET
+  TITLE           %vdata;      #IMPLIED
+  >
+
+<!ELEMENT TIMER EMPTY>
+<!ATTLIST TIMER
+  KEY        NMTOKEN           #IMPLIED
+  DEFAULT    %vdata;           #REQUIRED
+  >
+
+<!--================ Images ================-->
+
+<!ENTITY % IAlign "(TOP|MIDDLE|BOTTOM)" >
+
+<!ELEMENT IMG EMPTY>
+<!ATTLIST IMG
+  ALT        %vdata;      #IMPLIED
+  SRC        %URL;        #IMPLIED
+  LOCALSRC   %vdata;      #IMPLIED
+  VSPACE     %length;     "0"
+  HSPACE     %length;     "0"
+  ALIGN      %IAlign;     "BOTTOM"
+  HEIGHT     %length;     #IMPLIED
+  WIDTH      %length;     #IMPLIED
+  >
+
+<!--================ Anchor ================-->
+
+<!ELEMENT A ( %inline; | GO | PREV | REFRESH )*>
+<!ATTLIST A
+  TITLE        %vdata;      #IMPLIED
+  >
+
+<!--================ Text layout and line breaks ================-->
+
+<!-- Text alignment attributes -->
+<!ENTITY % TAlign   "(LEFT|RIGHT|CENTER)" >
+
+<!ELEMENT TAB EMPTY>
+<!ATTLIST TAB
+  ALIGN   %TAlign;   "LEFT"
+  >
+
+<!ELEMENT EM     (%flow;)*>
+<!ELEMENT STRONG (%flow;)*>
+<!ELEMENT B      (%flow;)*>
+<!ELEMENT I      (%flow;)*>
+<!ELEMENT U      (%flow;)*>
+<!ELEMENT BIG    (%flow;)*>
+<!ELEMENT SMALL  (%flow;)*>
+
+<!ENTITY % BRMode    "(WRAP|NOWRAP)" >
+<!ELEMENT BR EMPTY>
+<!ATTLIST BR
+  ALIGN   %TAlign;   "LEFT"
+  MODE    %BRMode;   #IMPLIED
+  >
+
+<!ENTITY quot  "&#34;">     <!-- quotation mark -->
+<!ENTITY amp   "&#38;#38;"> <!-- ampersand -->
+<!ENTITY apos  "&#39;">     <!-- apostrophe -->
+<!ENTITY lt    "&#38;#60;"> <!-- less than -->
+<!ENTITY gt    "&#62;">     <!-- greater than -->
+<!ENTITY nbsp  "&#160;">    <!-- non-breaking space -->
+<!ENTITY shy   "&#173;">    <!-- soft hyphen (discretionary hyphen) -->