--- /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 """> <!-- quotation mark -->
+<!ENTITY amp "&#38;"> <!-- ampersand -->
+<!ENTITY apos "'"> <!-- apostrophe -->
+<!ENTITY lt "&#60;"> <!-- less than -->
+<!ENTITY gt ">"> <!-- greater than -->
+<!ENTITY nbsp " "> <!-- non-breaking space -->
+<!ENTITY shy "­"> <!-- soft hyphen (discretionary hyphen) -->