--- /dev/null
+/* Copyright (C) 2003, 2004
+ National Institute of Advanced Industrial Science and Technology (AIST)
+ Registration Number H15PRO112
+ See the end for copying conditions. */
+
+/***ja
+
+@page mdbGeneral °ìÈÌŪ¤Ê¥Õ¥©¡¼¥Þ¥Ã¥È
+
+@section general-description ÀâÌÀ
+
+´Ø¿ô mdatabase_load () ¤Ï¡¢Âè°ì¥¿¥°¤¬ @c Mchartable ¤« @c Mcharset ¤Ç
+¤Ê¤¤¸Â¤ê¡¢¥¿¥°¤Ç»ØÄꤵ¤ì¤¿¥Ç¡¼¥¿¤ò¥×¥í¥Ñ¥Æ¥£¥ê¥¹¥È¤Î·Á¤ÇÊÖ¤¹¡£ÊÖ¤µ¤ì¤ë
+¥×¥í¥Ñ¥Æ¥£¥ê¥¹¥È¤Î¥¡¼¤Ï<tt>Minteger</tt>, <tt>Msymbol</tt>,
+<tt>Mtext</tt>, <tt>Mplist</tt> ¤Ë¸Â¤ë¡£Ãͤη¿¤Ï¥¡¼¤Ë¤è¤Ã¤ÆÛ£ËæÀ¤Ê¤¯
+·èÄꤵ¤ì¤ë¡£¥¡¼¤¬ <tt>Minteger</tt> ¤Ê¤é¤ÐÃͤÏÀ°¿ôÃͤǤ¢¤ê¡¢¥¡¼¤¬
+<tt>Msymbol</tt> ¤Ê¤éÃͤϥ·¥ó¥Ü¥ë¡¢<tt>Mtext</tt> ¤Ê¤é¤Ð M-text¡¢
+<tt>Mplist</tt> ¤Ê¤é¤Ð¥×¥í¥Ñ¥Æ¥£¥ê¥¹¥È¤Ç¤¢¤ë¡£
+
+¥×¥í¥Ñ¥Æ¥£¥ê¥¹¥È¤ò¼¨¤¹¤¿¤á¤Ë¤Ï¤µ¤Þ¤¶¤Þ¤Êɽ¸½·Á¼°¤¬²Äǽ¤Ç¤¢¤ë¡£¤¿¤È¤¨¤Ð
+<tt>(K1:V1, K2:V2, ..., Kn:Vn)</tt> ¤È¤¤¤¦·Á¤Ç¡¢ºÇ½é¤ÎK1 ¤È V1¡¢Æó¤ÄÌÜ
+¤Î¥¡¼¤ÈÃͤ¬K2 ¤È V2 ¤È¤¤¤Ã¤¿¥×¥í¥Ñ¥Æ¥£¥ê¥¹¥È¤òɽ¸½¤¹¤ë¤³¤È¤â¤Ç¤¤ë¡£
+¤·¤«¤·¡¢m17n ¥Ç¡¼¥¿¥Ù¡¼¥¹¤ÇÍѤ¤¤é¤ì¤ë¥×¥í¥Ñ¥Æ¥£¥ê¥¹¥È¤Î¥¿¥¤¥×¤Ï¤«¤Ê¤ê
+¸ÂÄꤵ¤ì¤Æ¤¤¤ë¤Î¤Ç¡¢¤â¤Ã¤Èñ½ã¤Êɽ¸½·Á¼°¤òÍѤ¤¤ë¤³¤È¤¬¤Ç¤¤ë¡£
+
+¤³¤ì°Ê¹ß¡¢¥×¥í¥Ñ¥Æ¥£¥ê¥¹¥È¤Î¼¨¤¹¤¿¤á¤Ë¤Ï S ¼°¤ËÎà»÷¤·¤¿É½¸½¤òÍѤ¤¤ë¡£
+(¼ÂºÝ m17n ¥é¥¤¥Ö¥é¥ê¤Î¥Ç¥Õ¥©¥ë¥È¤Î¥Ç¡¼¥¿¥Ù¡¼¥¹¥í¡¼¥À¤Ï¤³¤Îɽ¸½¤Ç½ñ¤«
+¤ì¤¿¥Ç¡¼¥¿¥Õ¥¡¥¤¥ë¤òÆɤà¤è¤¦¤ËÀ߷פµ¤ì¤Æ¤¤¤ë¡£)
+
+¤³¤Îɽ¸½·Á¼°¤Ï 1 ¤Ê¤¤¤·¤½¤ì°Ê¾å¤Î <i>Í×ÁÇ (element)</i> ¤«¤é¤Ê¤ë¡£¸Ä¡¹
+¤ÎÍ×ÁǤϥץí¥Ñ¥Æ¥£¤¹¤Ê¤ï¤Á¥×¥í¥Ñ¥Æ¥£¥ê¥¹¥È¤Î°ì¤Ä¤ÎÍ×ÁǤòɽ¤¹¡£
+
+Í×ÁÇ´Ö¤Ï 1 ¤Ê¤¤¤·¤½¤ì°Ê¾å¤Î <i> ¶õÇò (whitespace)</i> ¤¹¤Ê¤ï¤Á¥¹¥Ú¡¼¥¹
+(code 32)¡¢¥¿¥Ö (code 9)¡¢²þ¹Ô (code 10) ¤Î¤¤¤º¤ì¤«¤Ç¶èÀÚ¤é¤ì¤ë¡£¥»¥ß
+¥³¥í¥ó(<tt>;</tt>) ¤Ç»Ï¤Þ¤ë¹Ô¤Ï¥³¥á¥ó¥È¤Ç¤¢¤ë¡£
+
+³Æ¥×¥í¥Ñ¥Æ¥£¤Î¥¡¼¤ÈÃͤϡ¢Í×ÁǤΥ¿¥¤¥×¤Ë´ð¤Å¤¤¤Æ°Ê²¼¤Î¤è¤¦¤Ë·èÄꤵ¤ì¤ë¡£
+
+<ul>
+
+<li> À°¿ô
+
+Àµµ¬É½¸½<tt>-?[0-9]+</tt> ¤Þ¤¿¤Ï<tt>0[xX][0-9A-Fa-f]+</tt> ¤Ë¹çÃפ¹¤ë
+Í×ÁǤϡ¢¥¡¼¤¬<tt>Minteger</tt>¤Ç¤¢¤ë¥×¥í¥Ñ¥Æ¥£¤ò¼¨¤¹¡£ºÇ½é¤ÎÀµµ¬É½¸½
+¤È¹çÃפ¹¤ë¤â¤Î¤Ï 10 ¿Ê¤ÎÀ°¿ô¡¢¸å¤ÎÀµµ¬É½¸½¤È¹çÃפ¹¤ë¤â¤Î¤Ï 16 ¿Ê¤ÎÀ°¿ô
+¤È²ò¼á¤·¡¢¤½¤Î²ò¼á¤Î·ë²Ì¤¬¥×¥í¥Ñ¥Æ¥£¤ÎÃͤǤ¢¤ë¡£
+
+¤¿¤È¤¨¤Ð¡¢Í×ÁÇ <tt>0xA0</tt> ¤Ï10 ¿Ê¤Ç 160 ¤òÃͤȤ¹¤ë¥×¥í¥Ñ¥Æ¥£¤Ç¤¢¤ë¡£
+
+<li> ¥·¥ó¥Ü¥ë
+
+Àµµ¬É½¸½<tt>[^-0-9(]([^\\()]|\\.)+</tt> ¤Ë¹çÃפ¹¤ëÍ×ÁǤϡ¢¥¡¼¤¬<tt>
+Msymbol</tt>¤Ç¤¢¤ë¥×¥í¥Ñ¥Æ¥£¤ò¼¨¤¹¡£Í×ÁÇÃæ¤Î <tt>\\t</tt>,
+<tt>\\n</tt>, <tt>\\r</tt>, <tt>\\e</tt> ¤Ï¤½¤ì¤¾¤ì¡¢¥¿¥Ö (code 9)¡¢²þ
+¹Ô (code 10)¡¢Éüµ¢(code 13)¡¢¥¨¥¹¥±¡¼¥× (code 27) ¤ËÃÖ¤´¹¤¨¤é¤ì¤ë¡£¥Ð¥Ã
+¥¯¥¹¥é¥Ã¥·¥å¤Ë³¤¯Â¾¤Îʸ»ú¤Ï¤½¤ì¼«¿È¤È²ò¼á¤µ¤ì¤ë¡£¥×¥í¥Ñ¥Æ¥£¤ÎÃͤϡ¢·ë
+²Ì¤È¤·¤ÆÆÀ¤é¤ì¤ëʸ»úÎó¤ò̾Á°¤È¤·¤Æ»ý¤Ä¥·¥ó¥Ü¥ë¤Ç¤¢¤ë¡£
+
+¤¿¤È¤¨¤Ð¡¢Í×ÁÇ <tt>abc\ def</tt> ¤Ï "abc def" ¤ò̾Á°¤È¤·¤Æ»ý¤Ä¥·¥ó¥Ü¥ë
+¤òÃͤȤ¹¤ë¥×¥í¥Ñ¥Æ¥£¤Ç¤¢¤ë¡£
+
+<li> MTEXT
+
+Àµµ¬É½¸½ <tt>"([^"]|\\")*"</tt> ¤Ë¹çÃפ¹¤ëÍ×ÁǤϡ¢¥¡¼ <tt>Mtext</tt>
+¤Ç¤¢¤ë¥×¥í¥Ñ¥Æ¥£¤ò¼¨¤¹¡£¾åµ¤Î¥Ð¥Ã¥¯¥¹¥é¥Ã¥·¥å¤Ë¤è¤ë¥¨¥¹¥±¡¼¥×¤Ï¤³¤³¤Ç
+¤â͸ú¤Ç¤¢¤ë¡£¤µ¤é¤Ë¡¢Í×ÁÇÃæ¤ÎÀµµ¬É½¸½
+<tt>\\[xX][0-9A-Fa-f][0-9A-Fa-f]</tt> ¤Ë¹çÃפ¹¤ëÉôʬ¤Ï¡¢16¿Ê¤Ç²ò¼á¤·¤¿
+·ë²Ì¤ËÃÖ¤´¹¤¨¤é¤ì¤ë¡£
+
+¥Ð¥Ã¥¯¥¹¥é¥Ã¥·¥å¥¨¥¹¥±¡¼¥×¤ò½èÍý¤·¤¿¾å¤Ç¡¢¥À¥Ö¥ë¥¯¥ª¡¼¥È¤Ë¤Ï¤µ¤Þ¤ì¤¿¥Ð
+¥¤¥ÈÎó¤òUTF-8 Îó¤È¤·¤Æ²ò¼á¤·¡¢M-text ¤Ë¥Ç¥³¡¼¥É¤¹¤ë¡£¤³¤Î M-text ¤¬¥×
+¥í¥Ñ¥Æ¥£¤ÎÃͤǤ¢¤ë¡£
+
+<li> PLIST
+
+Âбþ¤¹¤ë³ç¸Ì¤Ë¤Ï¤µ¤Þ¤ì¤¿ 0 ¸Ä°Ê¾å¤ÎÍ×ÁǤÏ<tt>Mplist</tt> ¤ò¥¡¼¤È¤¹¤ë
+¥×¥í¥Ñ¥Æ¥£¤ò¼¨¤¹¡£³ç¸Ì¤ÎÁ°¸å¤Î¶õÇò¤Ï¼è¤ê½ü¤«¤ì¤ë¡£¥×¥í¥Ñ¥Æ¥£¤ÎÃͤϡ¢¥×
+¥í¥Ñ¥Æ¥£¥ê¥¹¥È¤Ç¤¢¤ê¡¢¤½¤Î³ç¸ÌÆâ¤Î³ÆÍ×ÁǤòºÆµ¢Åª¤Ë²ò¼á¤·¤¿·ë²Ì¤Ç¤¢¤ë¡£
+
+</ul>
+
+@section general-syntax ʸˡ¤Îɽµ
+
+¥Ç¡¼¥¿¤Î¥×¥í¥Ñ¥Æ¥£¥ê¥¹¥È¥Õ¥©¡¼¥Þ¥Ã¥È¤ÎÀâÌÀ¤Ç¤Ï¡¢BNFÉ÷¤ÎµË¡¤¬ÍѤ¤¤é¤ì
+¤ë¡£¤³¤ÎµË¡¤Ç¤Ï¡¢Èó½ªÃ¼¤ÏÂçʸ»ú¡Ê´Ö¤Ë'-'¤¬Æþ¤Ã¤Æ¤â¤è¤¤¡Ë ¤Ç¡¢½ªÃ¼¤Ï "
+¤Ç°Ï¤Ã¤Æɽ¤µ¤ì¤ë¡£ÆÃÊ̤ÊÈó½ªÃ¼ INTEGER, SYMBOL,
+MTEXT, PLIST ¤Ï¤½¤ì¤¾¤ìÂбþ¤¹¤ë¥×¥í¥Ñ¥Æ¥£¤ò°ÕÌ£¤¹¤ë¡£
+
+@section general-example Îã
+
+¼¡¤Îñ½ã¤Ê·Á¼°¤Î¥×¥í¥Ñ¥Æ¥£¥ê¥¹¥È¤ËÆɤ߹þ¤Þ¤ì¤ë¡¢¥Ç¡¼¥¿¥Ù¡¼¥¹¤Î¥Ç¡¼¥¿¤Î
+°ìÎã¤ò¼¨¤¹¡§
+
+@verbatim
+DATA-FORMAT ::=
+ [ INTEGER | SYMBOL | MTEXT | FUNC ] *
+
+FUNC ::=
+ '(' FUNC-NAME FUNC-ARG * ')'
+
+FUNC-NAME ::=
+ SYMBOL
+
+FUNC-ARG ::=
+ INTEGER | SYMBOL | MTEXT | '(' FUNC-ARG ')'
+@endverbatim
+
+¤¿¤È¤¨¤Ð¡¢¼¡¤Î¥Æ¥¥¹¥È¤ò´Þ¤à¥Ç¡¼¥¿¥Õ¥¡¥¤¥ë¤Ï¾å¤Îʸˡ¤Ë¹çÃפ¹¤ë¡§
+
+@verbatim
+abc 123 (pqr 0xff) "m\"text" (_\\_ ("string" xyz) -456)
+@endverbatim
+
+¤½¤·¤Æ¼¡¤Î¤è¤¦¤Ê¥×¥í¥Ñ¥Æ¥£¥ê¥¹¥È¤È¤·¤ÆÆɤ߹þ¤Þ¤ì¤ë¡§
+
+@verbatim
+Â裱Í×ÁÇ: ¥¡¼: Msymbol, ÃÍ: abc
+Â裲Í×ÁÇ: ¥¡¼: Minteger, ÃÍ: 123
+Â裳Í×ÁÇ: ¥¡¼: Mplist, ÃÍ: ¼¡¤ÎÍ×ÁǤ«¤é¤Ê¤ë¥×¥í¥Ñ¥Æ¥£¥ê¥¹¥È
+ Â裱Í×ÁÇ: ¥¡¼ Msymbol, ÃÍ: pgr
+ Â裲Í×ÁÇ: ¥¡¼ Minteger, ÃÍ: 255
+Â裴Í×ÁÇ: ¥¡¼: Mtext, ÃÍ: m"text
+Â裵Í×ÁÇ: ¥¡¼: Mplist, ÃÍ: ¼¡¤ÎÍ×ÁǤ«¤é¤Ê¤ë¥×¥í¥Ñ¥Æ¥£¥ê¥¹¥È
+ Â裱Í×ÁÇ: ¥¡¼: Msymbol, ÃÍ: _\_
+ Â裲Í×ÁÇ: ¥¡¼: Mplist, ÃÍ: ¼¡¤ÎÍ×ÁǤ«¤é¤Ê¤ë¥×¥í¥Ñ¥Æ¥£¥ê¥¹¥È
+ Â裱Í×ÁÇ: ¥¡¼: Mtext, ÃÍ: string
+ Â裲Í×ÁÇ: ¥¡¼: Msymbol, ÃÍ: xyz
+ Â裳Í×ÁÇ: ¥¡¼: Minteger, ÃÍ: -456
+@endverbatim
+*/
+
+/*
+Copyright (C) 2003, 2004
+ National Institute of Advanced Industrial Science and Technology (AIST)
+ Registration Number H15PRO112
+
+This file is part of the m17n database; a sub-part of the m17n
+library.
+
+The m17n library is free software; you can redistribute it and/or
+modify it under the terms of the GNU Lesser General Public License
+as published by the Free Software Foundation; either version 2.1 of
+the License, or (at your option) any later version.
+
+The m17n library is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+Lesser General Public License for more details.
+
+You should have received a copy of the GNU Lesser General Public
+License along with the m17n library; if not, write to the Free
+Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307, USA.
+*/