added a BNF for the stomp spec.


git-svn-id: https://svn.apache.org/repos/asf/activemq/stomp/trunk@830562 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/webgen/src/stomp10/specification.page b/webgen/src/stomp10/specification.page
index 59ffb99..3806a1e 100644
--- a/webgen/src/stomp10/specification.page
+++ b/webgen/src/stomp10/specification.page
@@ -209,4 +209,45 @@
 
 It is recommended that ERROR frames include a *content-length* header which is a byte count for the length of the message body. If a *content-length* header is included, this number of bytes should be read, regardless of whether or not there are null characters in the body. The frame still needs to be terminated with a null byte, and if a *content-length* is not specified the first null byte encountered signals the end of the frame.
 
+###Augmented BNF
+
+We will use the augmented Backus-Naur Form (BNF) used in the HTTP/1.1 (rfc2616) to define a valid stomp frame:
+
+    LF                  = <US-ASCII LF, linefeed (octect 10)>
+    CHAR                = <any US-ASCII character (octets 0 - 127)>
+    OCTET               = <any 8-bit sequence of data>
+    DIGIT               = <any US-ASCII digit "0".."9">
+    NULL                = <octect 0>
+
+    frame               = *( LF )
+                          command LF
+                          *( header LF )
+                          LF
+                          [ content ]
+                          NULL
+
+    command             = client-command | server-command
+
+    client-command      = "SEND"
+                          | "SUBSCRIBE"
+                          | "UNSUBSCRIBE"
+                          | "BEGIN"
+                          | "COMMIT"
+                          | "ABORT"
+                          | "ACK"
+                          | "DISCONNECT"
+
+    server-command      = "CONNECTED"
+                          | "MESSAGE"
+                          | "RECEIPT"
+                          | "ERROR"
+
+    header              = <header-name> ":" <header-value>
+    header-name         = 1*<any CHAR except LF or ":">
+    header-value        = 1*<any CHAR except LF>
+
+    content             = text-content | binary-content
+    text-content        = 1*<any OCTET except NULL>
+    binary-content      = 1*<OCTECT>
+
 This spec is licensed under the [Creative Commons Attribution v2.5](http://creativecommons.org/licenses/by/2.5/)
\ No newline at end of file