version 1.1, 2000/01/20 08:52:46 |
version 1.6, 2000/09/09 21:59:12 |
|
|
%% $OpenXM$ |
%% $OpenXM: OpenXM/doc/OpenXM-specs/cmo-basic0.tex,v 1.5 2000/09/08 17:14:54 takayama Exp $ |
//&jp \section{CMO Basic0 ¤Î object} |
//&jp \section{CMO Primitive object} |
//&eg \section{CMO Basic0 object} |
//&eg \section{CMO Primitive object} |
|
\label{sec:basic0} |
/*&jp |
/*&jp |
CMO (Common Mathematical Object format) ¥°¥ë¡¼¥× Basic0 ¤Î Object ¤Ï, |
CMO (Common Mathematical Object format) ¥°¥ë¡¼¥× Primitive ¤Î Object ¤Ï, |
¥í¡¼¥ì¥Ù¥ë¤Î¥Ç¡¼¥¿·¿, {\tt int} , {\tt string} |
¥í¡¼¥ì¥Ù¥ë¤Î¥Ç¡¼¥¿·¿, {\tt int} , {\tt string} |
¤Ê¤É¤ËÂбþ¤¹¤ë object ¤Ç¤¢¤ë. |
¤Ê¤É¤ËÂбþ¤¹¤ë object ¤Ç¤¢¤ë. |
¤³¤Î CMO ¤Ï¤¹¤Ù¤Æ¤Î OpenXM ¤¬¼ÂÁõ¤·¤Æ¤¤¤ë¤È²¾Äꤵ¤ì¤ë. |
¤³¤Î CMO ¤Ï¤¹¤Ù¤Æ¤Î OpenXM ¤¬¼ÂÁõ¤·¤Æ¤¤¤ë¤È²¾Äꤵ¤ì¤ë. |
¤³¤ÎÀá¤Ç¤Ï, ¥¤¥ó¥È¥í¥À¥¯¥·¥ç¥ó¤È¤·¤Æ, ¥°¥ë¡¼¥× Basic0 ¤Ë°¤¹¤ë CMObject |
¤³¤ÎÀá¤Ç¤Ï, ¥¤¥ó¥È¥í¥À¥¯¥·¥ç¥ó¤È¤·¤Æ, ¥°¥ë¡¼¥× Primitive ¤Ë°¤¹¤ë CMObject |
(Common Mathematical Object) ¤ò·Á¼°Åª¤ÊÊýË¡¤ò¤Ä¤«¤ï¤ºÆ³Æþ¤·¤è¤¦. |
(Common Mathematical Object) ¤ò·Á¼°Åª¤ÊÊýË¡¤ò¤Ä¤«¤ï¤ºÆ³Æþ¤·¤è¤¦. |
*/ |
*/ |
/*&eg |
/*&eg |
Objects in CMO (Common Mathematical Object format) group Basic0 |
Objects in CMO (Common Mathematical Object format) group Primitive |
are primitive data such as {\tt int}, {\tt string}. |
are primitive data such as {\tt int}, {\tt string}. |
All OpenXM compliant systems should implement all data types |
All OpenXM compliant systems should implement all data types |
in the group Basic0. |
in the group Primitive. |
In this section, as an introduction, we will introduce |
In this section, as an introduction, we will introduce |
CMObject (Common Mathematical Object) of the group Basic0 without |
CMObject (Common Mathematical Object) of the group Primitive without |
using the Backus-Nauer form. |
using the Backus-Nauer form. |
*/ |
*/ |
/*&jp |
/*&jp |
¤³¤Î¥°¥ë¡¼¥×¤ÎÀµ¼°¤Ê̾Á°¤Ï, |
¤³¤Î¥°¥ë¡¼¥×¤ÎÀµ¼°¤Ê̾Á°¤Ï, |
CMObject/Basic0 ¤Ç¤¢¤ë. |
CMObject/Primitive ¤Ç¤¢¤ë. |
°Ê²¼, {\tt int32} ¤Ç2¤ÎÊä¿ôɽ¸½¤µ¤ì¤¿ |
°Ê²¼, {\tt int32} ¤Ç2¤ÎÊä¿ôɽ¸½¤µ¤ì¤¿ |
32 bit integer ¤ò¤¢¤é¤ï¤¹ |
32 bit integer ¤ò¤¢¤é¤ï¤¹ |
(¤³¤ì¤Ï¤è¤¯»È¤ï¤ì¤ë·×»»µ¡¤Ç¤Î C ¸À¸ì¤Î int ¤ÎÆâÉôɽ¸½). |
(¤³¤ì¤Ï¤è¤¯»È¤ï¤ì¤ë·×»»µ¡¤Ç¤Î C ¸À¸ì¤Î int ¤ÎÆâÉôɽ¸½). |
Line 28 CMObject/Basic0 ¤Ç¤¢¤ë. |
|
Line 29 CMObject/Basic0 ¤Ç¤¢¤ë. |
|
*/ |
*/ |
/*&eg |
/*&eg |
The canonical name of this group is |
The canonical name of this group is |
CMObject/Basic0. |
CMObject/Primitive. |
In the sequel, |
In the sequel, |
{\tt int32} means the signed 32 bit integer expressed by two's complement |
{\tt int32} means the signed 32 bit integer expressed by two's complement |
(internal expressions of {\tt int} of the language C usually use |
(internal expressions of {\tt int} of the language C usually use |
Line 68 any CMObject consists of a tag and a body: \\ |
|
Line 69 any CMObject consists of a tag and a body: \\ |
|
{\tt cmo\_tag} ¤Ï object ¤Î¥¿¥¤¥×¤ò¤¢¤é¤ï¤¹¥¿¥°¤Ç¤¢¤ê, |
{\tt cmo\_tag} ¤Ï object ¤Î¥¿¥¤¥×¤ò¤¢¤é¤ï¤¹¥¿¥°¤Ç¤¢¤ê, |
°Ê²¼¤Î¤è¤¦¤Ë·è¤á¤Æ¤¤¤ë. |
°Ê²¼¤Î¤è¤¦¤Ë·è¤á¤Æ¤¤¤ë. |
*/ |
*/ |
//&eg The following is a list of tags of CMObject/Basic0. |
//&eg The following is a list of tags of CMObject/Primitive. |
/*&C |
/*&C |
@../SSkan/plugin/cmotag.h |
@../SSkan/plugin/cmotag.h |
\begin{verbatim} |
\begin{verbatim} |
#define LARGEID 0x7f000000 |
#define LARGEID 0x7f000000 /* 2130706432 */ |
#define CMO_ERROR2 (LARGEID+2) |
#define CMO_ERROR2 (LARGEID+2) |
#define CMO_NULL 1 |
#define CMO_NULL 1 |
#define CMO_INT32 2 |
#define CMO_INT32 2 |
Line 122 ob ¤Ï¥ê¥¹¥È¤Ç¤¢¤ê, TCP/IP ¤Ë¤è¤ë¥¹¥È¥ê¡¼¥à·¿Àܳ¤Î¾ì¹ |
|
Line 123 ob ¤Ï¥ê¥¹¥È¤Ç¤¢¤ê, TCP/IP ¤Ë¤è¤ë¥¹¥È¥ê¡¼¥à·¿Àܳ¤Î¾ì¹ |
|
ºÇ½é¤ÎÀ®Ê¬¤Ï¥¨¥é¡¼¤òµ¯¤³¤·¤¿ OX ¥á¥Ã¥»¡¼¥¸(¸å½Ò) |
ºÇ½é¤ÎÀ®Ê¬¤Ï¥¨¥é¡¼¤òµ¯¤³¤·¤¿ OX ¥á¥Ã¥»¡¼¥¸(¸å½Ò) |
¤Î¥·¥ê¥¢¥ëÈÖ¹æ¤Ç¤Ê¤¤¤È¤¤¤±¤Ê¤¤. |
¤Î¥·¥ê¥¢¥ëÈÖ¹æ¤Ç¤Ê¤¤¤È¤¤¤±¤Ê¤¤. |
¥·¥ê¥¢¥ëÈÖ¹æ¤Ï Integer32 ¤Çɽ¸½¤¹¤ë. |
¥·¥ê¥¢¥ëÈÖ¹æ¤Ï Integer32 ¤Çɽ¸½¤¹¤ë. |
|
|
|
\noindent |
|
Remark: Îò»ËŪ¤ÊÍýͳ¤Ë¤è¤ê, ¥¨¥é¡¼¥ª¥Ö¥¸¥§¥¯¥È¤Î CMO ¥¿¥°¤Ï {\it |
|
CMO\_ERROR2} ¤È̾ÉÕ¤±¤é¤ì¤Æ¤¤¤ë. ¼¡¤ÎÈǤλÅÍͽñ¤Ç¤Ï {\tt CMO\_ERROR} |
|
¤ËÊѹ¹¤¹¤ëͽÄê¤Ç¤¢¤ë. |
*/ |
*/ |
/*&eg |
/*&eg |
It is an object used when a server makes an error. |
It is an object used when a server makes an error. |
{\it CMObject} ob carries error informations. |
{\it CMObject} ob carries error informations. |
The instance ob is a list and in case of a stream connection like TCP/IP |
The instance ob is a list and, in case of a stream connection like TCP/IP, |
the first element must be the serial number of the OX message |
the first element must be the serial number of the OX message |
that caused the error. |
that caused the error. |
The serial number is given by the data type Integer32. |
The serial number is given by the data type Integer32. |
|
|
|
\noindent |
|
Remark: For a historical reason the CMO tag of the error object is |
|
named {\tt CMO\_ERROR2}. In the next vesion of OpenXM specification |
|
we may rename it {\tt CMO\_ERROR}. |
*/ |
*/ |
|
|
/*&C |
/*&C |
Line 231 Cstring ¤Çɽ¤·¤¿¥·¥¹¥Æ¥à̾, Server version, CPU type, |
|
Line 242 Cstring ¤Çɽ¤·¤¿¥·¥¹¥Æ¥à̾, Server version, CPU type, |
|
SM ¥¿¥°¤ò, Integer32 ¤Çɽ¸½¤·¤¿¤â¤Î¤ò½¸¤á¤¿¥ê¥¹¥È¤Ç¤¢¤ë. |
SM ¥¿¥°¤ò, Integer32 ¤Çɽ¸½¤·¤¿¤â¤Î¤ò½¸¤á¤¿¥ê¥¹¥È¤Ç¤¢¤ë. |
3 ÈÖÌܤÎÍ×ÁǤÏ, ¥·¥¹¥Æ¥à xxx ¤¬¤¢¤Ä¤«¤¦¤³¤È¤Î²Äǽ¤Ê |
3 ÈÖÌܤÎÍ×ÁǤÏ, ¥·¥¹¥Æ¥à xxx ¤¬¤¢¤Ä¤«¤¦¤³¤È¤Î²Äǽ¤Ê |
¥Ç¡¼¥¿·Á¼°¤ò¤¢¤Ä¤á¤¿¥ê¥¹¥È¤Ç¤¢¤ë. |
¥Ç¡¼¥¿·Á¼°¤ò¤¢¤Ä¤á¤¿¥ê¥¹¥È¤Ç¤¢¤ë. |
¾ÜºÙ¤Ï mathcap ¤ÎÀá¤ÇÀâÌÀ¤¹¤ë. |
¾ÜºÙ¤Ï mathcap ¤ÎÀá \ref{subsubsection:mathcap} ¤ÇÀâÌÀ¤¹¤ë. |
*/ |
*/ |
/*&eg |
/*&eg |
ob is a list of which length is more than or equal to three. |
ob is a list of which length is more than or equal to three. |
Line 243 and extra informations. |
|
Line 254 and extra informations. |
|
The second element is a list of SM tags in Integer 32. |
The second element is a list of SM tags in Integer 32. |
The third element is a list of data type tags which the server or the client |
The third element is a list of data type tags which the server or the client |
can understand. |
can understand. |
The details will be explained in the section on mathcap. |
The details will be explained in the section on mathcap \ref{subsubsection:mathcap}. |
*/ |
*/ |
|
|
/*&C |
/*&C |
Line 261 The details will be explained in the section on mathca |
|
Line 272 The details will be explained in the section on mathca |
|
\end{tabular}\\ |
\end{tabular}\\ |
*/ |
*/ |
//&jp ¤Çɽ¸½¤¹¤ë. |
//&jp ¤Çɽ¸½¤¹¤ë. |
|
|
|
|