[BACK]Return to ox-messages.tex CVS log [TXT][DIR] Up to [local] / OpenXM / doc / ascm2001p

Annotation of OpenXM/doc/ascm2001p/ox-messages.tex, Revision 1.3

1.3     ! noro        1: %%$OpenXM: OpenXM/doc/ascm2001p/ox-messages.tex,v 1.2 2001/06/20 03:08:05 takayama Exp $
1.1       noro        2:
                      3: \section{OX messages}
                      4:
                      5: An OX message for TCP/IP is a byte stream consisting of
1.3     ! noro        6: a header and a body.
        !             7: %\begin{tabular}{|c|c|}
        !             8: %\hline
        !             9: %Header        & \hspace{10mm} Body \hspace{10mm} \\
        !            10: %\hline
        !            11: %\end{tabular}.
1.1       noro       12: The header consists of two signed 32 bit integers.
                     13: The first one is an OX tag
                     14: and the second one is a serial number of the OX message.
                     15: %Negative numbers are expressed by the two's complement.
                     16: %Several byte orders including the network byte order
                     17: %are allowed and the byte order is determined as a part of
                     18: %the establishment of a connection. See Section \ref{secsession} for details.
                     19: The OX messages are classified into three types:
                     20: DATA, COMMAND, and SPECIAL.
                     21: %We have currently the following general tags for the OX messages:
                     22: Typical OX tags are
1.3     ! noro       23: \verb+OX_COMMAND+, \verb+OX_DATA+, \verb+OX_DATA_DATA_OPENMATH_XML+
        !            24: and \verb+OX_SYNC_BALL+. The last one belongs to the SPECIAL category.
1.1       noro       25:
                     26: %\begin{verbatim}
                     27: %#define       OX_COMMAND               513  // COMMAND
                     28: %#define       OX_DATA                  514  // DATA
                     29: %#define OX_SYNC_BALL             515  // SPECIAL
                     30: %#define OX_DATA_WITH_LENGTH      521  // DATA
                     31: %#define OX_DATA_OPENMATH_XML     523  // DATA
                     32: %#define OX_DATA_OPENMATH_BINARY  524  // DATA
                     33: %#define OX_DATA_MP               525  // DATA
                     34: %\end{verbatim}
                     35:
                     36: %A new OX tag may be added.
                     37: %The new tag should be classified into DATA or COMMAND.
                     38: %For example, \verb+ OX_DATA_ASIR_LOCAL_BINARY +  was added recently
                     39: %to send internal serialized objects of Asir via the OpenXM protocol.
                     40: %This is a tag classified to DATA.
                     41: %See the web page of OpenXM to add a new tag \cite{openxm-web}.
                     42:
                     43: %An OpenXM client admit that its own command sends some OX messages
                     44: %sequentially at once.
                     45: %
                     46: %For example, the asir command
                     47: %{\tt ox\_execute\_string(P, "Print[x+y]")} sends an OX data message
                     48: %{\tt (OX\_DATA, (CMO\_STRING, "Print[x+y]"))} and an OX command message
                     49: %{\tt (OX\_COMMAND, (SM\_executeStringByLocalParser))} to an OpenXM
                     50: %server.

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>