You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by ch...@apache.org on 2009/10/28 15:41:20 UTC
svn commit: r830562 -
/activemq/stomp/trunk/webgen/src/stomp10/specification.page
Author: chirino
Date: Wed Oct 28 14:41:19 2009
New Revision: 830562
URL: http://svn.apache.org/viewvc?rev=830562&view=rev
Log:
added a BNF for the stomp spec.
Modified:
activemq/stomp/trunk/webgen/src/stomp10/specification.page
Modified: activemq/stomp/trunk/webgen/src/stomp10/specification.page
URL: http://svn.apache.org/viewvc/activemq/stomp/trunk/webgen/src/stomp10/specification.page?rev=830562&r1=830561&r2=830562&view=diff
==============================================================================
--- activemq/stomp/trunk/webgen/src/stomp10/specification.page (original)
+++ activemq/stomp/trunk/webgen/src/stomp10/specification.page Wed Oct 28 14:41:19 2009
@@ -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