=================================================================== RCS file: /home/cvs/OpenXM/doc/OpenXM-specs/formal-expression.tex,v retrieving revision 1.3 retrieving revision 1.7 diff -u -p -r1.3 -r1.7 --- OpenXM/doc/OpenXM-specs/formal-expression.tex 2000/01/24 02:48:24 1.3 +++ OpenXM/doc/OpenXM-specs/formal-expression.tex 2000/09/09 21:59:13 1.7 @@ -1,4 +1,4 @@ -%% $OpenXM: OpenXM/doc/OpenXM-specs/formal-expression.tex,v 1.2 2000/01/23 05:28:33 noro Exp $ +%% $OpenXM: OpenXM/doc/OpenXM-specs/formal-expression.tex,v 1.6 2000/09/09 16:32:26 takayama Exp $ //&jp \section{ CMO ¤Î·Á¼°ÅªÉ½¸½ÊýË¡ } //&eg \section{ A formal expression of CMO } @@ -17,7 +17,8 @@ Primitive group. In this section, we will introduce CMOexpression which is like the bracket expression of Lisp. We again explain a standard encoding method of CMO, -which we have already explained in the previous section. +which we have already explained in the previous section, but +the explanation is more formal. */ /*&jp @@ -227,25 +228,57 @@ CMOexpression ¤È, CMObject ¤Î¶èÊ̤òÍý²ò¤·¤Æ¤ª¤¯¤Î¤Ï½ÅÍ ¤³¤ì¤Ï, ʸˡŪ¤Ë¤ÏÀµ¤·¤¤¥×¥í¥°¥é¥à¤À¤¬, ¤Ê¤Ë¤ò¤ä¤ë¤Î¤«¤ÏÁ´¤¯ÉÔÌÀ¤Ê ¥×¥í¥°¥é¥à¤È»÷¤Æ¤¤¤ë. +*/ + +/*&jp ¤µ¤Æ, Open math É÷ (\cite{openmath}) -¤Î SGML ɽ¸½Ë¡¤â²Äǽ¤Ç¤¢¤ê, ¤½¤Î¾ì¹ç¤Ï, ¾å¤ÎÆó¤Ä¤ÎÎã¤Ï¼¡¤Î¤è¤¦¤Ë +¤Î XML ɽ¸½Ë¡¤â²Äǽ¤Ç¤¢¤ê, ¤½¤Î¾ì¹ç¤Ï, ¾å¤ÎÆó¤Ä¤ÎÎã¤Ï¼¡¤Î¤è¤¦¤Ë ½ñ¤¯. +*/ +/*&eg +CMO's are expressed by XML like Open Math (\cite{openmath}). +See example below. +*/ + +/*&C + \begin{verbatim} - -1234 - + + + 1234 + - -5 -"Hello" - + + 5 + "Hello" + + \end{verbatim} */ +//&jp \noindent cmo\_string ¤Ï¼¡¤Î¤è¤¦¤Ë¤¢¤é¤ï¤·¤Æ¤â¤è¤¤. +//&eg \noindent cmo\_string may be expressed as follows. /*&C +\begin{verbatim} + + + 5 + 'H' 'e' 'l' + 'l' 'o' + + +\end{verbatim} */ +//&jp \noindent ¤³¤Î¾ì¹ç¤Î cmo\_string ¤Î DTD ¤Ë¤è¤ëÄêµÁ¤Ï¼¡¤Î¤è¤¦¤Ë¤Ê¤ë. \\ +//&eg \noindent In this case, the DTD for cmo\_string is as follows; \\ +//&C \verb+ + +/*&C + +\bigbreak +*/ + /*&jp ¼¡¤Ë, ɸ½à encoding Ë¡¤òÀâÌÀ¤·¤è¤¦. ɸ½à encoding Ë¡¤Ç¤Ï, cmo\_tag ¤ò ¥Í¥Ã¥È¥ï¡¼¥¯¥Ð¥¤¥È¥ª¡¼¥À¡¼¤Î @@ -272,17 +305,19 @@ and byte data are encoded as it is. 100Mbps ¤ÎÄÌ¿®Ï©¤Ç 12Mbytes ¤Î {\tt CMO\_ZZ} ¤ÎžÁ÷¤Ç¤Ï Ìó 90\% ¤Î»þ´Ö¤¬ network byte order ¤Ø¤ÎÊÑ´¹¤Ë¤Ä¤¤¤ä¤µ¤ì¤Æ¤¤¤ë¤È¤¤¤¦ ¼Â¸³¥Ç¡¼¥¿¤â¤¢¤ë. -¸úΨ¤ò½Å»ë¤·¤¿ encoding Ë¡¤Ë¤Ä¤¤¤Æ¤Ï¸å½Ò¤¹¤ë. +¸úΨ¤ò½Å»ë¤·¤¿ encoding Ë¡¤Ë¤Ä¤¤¤Æ¤Ï¸å½Ò¤¹¤ë \ref{subsection:byteorder}. */ /*&eg When we are using a high speed network, the translation from the internal expression of 32 bit integers to network byte order may become a bottle neck. There are experimental data which presents that 90 percents of the transmission -time are +time are used for the translation to the network byte order to send {\tt CMO\_ZZ} of size -12M bytes on a 100Mbps network. -In a later section, we will discuss a protocol to avoid the translation. +12M bytes. +We used a 100Mbps network. +In a later section \ref{subsection:byteorder}, +we will discuss a protocol to avoid the translation. */ /*&C @@ -323,4 +358,57 @@ is the encoding of the CMOexpression ¤Î ɸ½à encoding Ë¡¤Ë¤è¤ëɽ¸½¤Ç¤¢¤ë. */ +/*&C +\bigbreak + +*/ + +/*&jp +(¼Â¸³Åª) +CMO ¤ª¤è¤Ó OX packets ¤Ï XML µ¬³Ê \cite{xml} ¤Ë½àµò¤·¤Æ¤¤¤ë. +XML µ¬³Ê¤Î Attribute ¤ò binary encode ¤¹¤ë¤¿¤á¤Ë +ÆÃÊ̤ʥ¿¥° \\ +*/ +/*&eg +(Experimental) +CMO and OX packets are complient to XML specification \cite{xml}. +In order to encode ``Attribute'' in XML in our binary format, +we have a tag: \\ +*/ +//&C \verb! #define CMO_ATTRIBUTE_LIST (LARGEID+3) ! \\ +/*&jp +¤òÍÑ°Õ¤·¤Æ¤¢¤ë. +*/ +/*&jp +¤¿¤È¤¨¤Ð Attribute {\tt font="Times-Roman" } ¤Ï \\ +*/ +/*&eg +For example, the attibute {\tt font="Times-Roman" } is encoded as \\ +*/ +/*&C +\begin{verbatim} + (CMO_ATTRIBUTE (CMO_LIST + (CMO_LIST (CMO_STRING,"font") (CMO_STRING, "Times-Roman")))) +\end{verbatim} +*/ +/*&jp +¤È encoding ¤µ¤ì¤ë. +*/ +//&C +/*&jp +¤³¤ÎÆÃÊÌ¤Ê CMO tag {\tt CMO\_ATTRIBUTE\_LIST} °Ê³°¤Ï, +XML ɽ¸½¤Ç¤Ï XML ¤Î¥¿¥°¤È¤·¤ÆÍý²ò¤µ¤ì¤ë. +*/ +/*&eg +All tags except this special CMO tag {\tt CMO\_ATTRIBUTE\_LIST} +are XML tags in the CMO/XML expression. +*/ +/*&jp +CMO/XML ¤Ç {\it comment}, {\it for} ¤È̾Á°¤¬¤Ä¤¤¤¿ +attributes ¤Ï CMO binary expression ¤Ë¤Ï¥¨¥ó¥³¡¼¥É¤µ¤ì¤Ê¤¤. +*/ +/*&eg +CMO/XML attributes such as {\it comment}, {\it for} +are not encoded in the CMO binary expression. +*/