Extensible Markup Language ¡Ê¥¨¥¯¥¹¥Æ¥ó¥·¥Ö¥ë¥Þ¡¼¥¯¥¢¥Ã¥×¥é¥ó¥²¡¼¥¸¡¢
XML ¡¢
³ÈÄ¥²Äǽ¤Ê¥Þ¡¼¥¯ÉÕ¤±¸À¸ì ¡¢JIS X 4159:2002¡Ë ¤Ï¡¢¸ÄÊ̤ÎÌÜŪ¤Ë±þ¤¸¤¿
¥Þ¡¼¥¯¥¢¥Ã¥×¸À¸ì ·²¤òÁϤ뤿¤á¤ËÈÆÍÑŪ¤Ë»È¤¦¤³¤È¤¬¤Ç¤¤ë»ÅÍͤǤ¢¤ë¡£
[XML¤Ï¡¢ÈÆÍÑŪ¤Ë»È¤¦¤³¤È¤¬¤Ç¤¤ë]¥Þ¡¼¥¯¥¢¥Ã¥×¸À¸ì ¤Ç¤¢¤ë¤È¸ÀµÚ¤µ¤ì¤ë¤³¤È¤¬Â¿¤¤¡£¡£
World Wide Web Consortium (W3C) ¤Ë¤è¤ê´«¹ð ¡ÊºöÄê¡Ë ¤µ¤ì¤Æ¤¤¤ë¹ñºÝɸ½à¤Î¹½Â¤²½Ê¸½ñ¤Îµ»½Ñ¤Ç¤¢¤ë¡£
1998ǯ 2·î¤Ë XML 1.0 ¤¬´«¹ð¤µ¤ì¤¿¡£
2007ǯ¸½ºß¡¢W3C´«¹ð¤ÎºÇ¿·¥Ð¡¼¥¸¥ç¥ó¤Ï XML 1.1 ¤Ç¤¢¤ë¡£
XML¤Ï¸½ºß¡¢¹¤¯ÉáµÚ¤·¤Æ¤¤¤ëµ»½Ñ¤Ç¤¢¤ë¡£
³µÍ×
´ðÁÃŪ³µÇ°¤ÈÍøÍÑÌÜŪ
XML¤Ï¡¢¸ÄÊ̤ÎÌÜŪ¤Ë±þ¤¸¤¿
¥Þ¡¼¥¯¥¢¥Ã¥×¸À¸ì ·²¤òÁϤ뤿¤á¤ËÈÆÍÑŪ¤Ë»È¤¦¤³¤È¤¬¤Ç¤¤ë»ÅÍͤǤ¢¤ë¡£
¥Þ¡¼¥¯¥¢¥Ã¥×¸À¸ì¤È¤Ï¡¢
¥³¥ó¥Ô¥å¡¼¥¿¸À¸ì ¤Î°ì¼ï¤Ç¡¢
ʸ¾Ï ¤ÎÏÀÍýŪ¤Ê¹½Â¤¡ÊÃÊÍî¤Ê¤É¡Ë¤ä¸«±É¤¨¡Ê¥Õ¥©¥ó¥È¥µ¥¤¥º¤Ê¤É¡Ë¤Ë´Ø¤¹¤ë»ØÄê¤ò¡¢Ê¸¾Ï¤È¤È¤â¤Ë
¥Æ¥¥¹¥È¥Õ¥¡¥¤¥ë ¤Ëµ½Ò¤¹¤ë¤¿¤á¤Î¸À¸ì¤Ç¤¢¤ë¡£
XML¤Ï¡¢³ÈÄ¥²Äǽ¤Ê¸À¸ì¤Î°ì¤Ä¤ËʬÎव¤ì¤ë¤¬¡¢¤½¤ÎÍýͳ¤Ï¡¢XML¤ò»È¤¦¤³¤È¤Ç¡¢»ÈÍѼԤϼ«Ê¬¤¿¤Á¼«¿È¤ÇÊ£¿ô¤Î¥¿¥°¤òÄêµÁ¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¤«¤é¤Ç¤¢¤ë¡£
XML¤Îʸ̮¤Ë¤ª¤±¤ë¥¿¥°¤È¤Ï¡¢Ê¸½ñ¤ÎÃÇÊҤ˰ÕÌ£¤òÉղ乤뤿¤á¤Î°õ¤Ç¤¢¤ë¡£
XML¤ÎºÇ¤â½ÅÍפÊÌÜŪ¤Ï¡¢°Û¤Ê¤ë
¾ðÊó¥·¥¹¥Æ¥à ¤Î´Ö¤Ç¡¢ÆÃ¤Ë
¥¤¥ó¥¿¡¼¥Í¥Ã¥È ¤ò²ð¤·¤Æ¡¢¹½Â¤²½¤µ¤ì¤¿Ê¸½ñ¤ä¹½Â¤²½¤µ¤ì¤¿¥Ç¡¼¥¿¤Î¶¦Í¤ò¡¢Íưפˤ¹¤ë¤³¤È¤Ç¤¢¤ë
¡£
XML¤ò»È¤¦¤È¡¢Ê¸½ñ¤ò¹½Â¤²½¤·¤Æµ½Ò¤¹¤ë¤³¤È¤â¤Ç¤¤ë¤·¡¢
¥³¥ó¥Ô¥å¡¼¥¿ ¤Î¥Ç¡¼¥¿¤ò
ľÎó²½ ¡Ê¥·¥ê¥¢¥é¥¤¥º¡Ë ¤¹¤ë¤³¤È¤â¤Ç¤¤ë¡£
¥Ç¡¼¥¿¤òľÎ󲽤¹¤ëÍÑÅÓ¤ÇXML¤ò»È¤¦ºÝ¤Ë¤Ï¡¢XML¤Ï¡¢
JavaScript Object Notation (JSON) ¤ä
YAML ¤Ê¤É¤Î¡¢
¥Æ¥¥¹¥È ¤ò´ð¤Ë¤·¤¿Â¾¤ÎľÎ󲽸À¸ì¤ÈÈæ³Ó¹ÕÎ̤¹¤ë¤³¤È¤¬¤Ç¤¤ë
JavaScript Object Notation (JSON) ¤ÈYAML ¤Ï¡¢XML¤ÈÈæ¤Ù¤Æ¡¢Â¾¤Î¥Æ¥¥¹¥È ¤ò´ð¤Ë¤·¤¿Ä¾Î󲽸À¸ì¤È¤ÎÃæ¤Ç¤â¡¢°ìÈ̤ˡ¢·ÚÎ̤Ǥ¢¤ê¡¢¾éĹÀ¤Î¾¯¤Ê¤¤¤È¤¤¤¦¡¢ÆÃħ¤ò¤â¤Ä¤È¸ÀµÚ¤µ¤ì¤ë¤³¤È¤¬Â¿¤¤¡£
¤³¤Î¹àÌܤÎ#XML¤ËÂФ¹¤ë»Ù»ý¤ÈÈãȽ ¤ÎÀá¤ò»²¾È¡£
¡£
XML¤ò´ðÈפȤ¹¤ë¥Þ¡¼¥¯¥¢¥Ã¥×¸À¸ì¤È¥¹¥¡¼¥Þ¸À¸ì
XML¤Çʸ½ñ¤ÎÏÀÍýŪ¹½Â¤¤òµ¬Äꤹ¤ëÀ©Ìó¤òÄɲ乤뤳¤È¤Ë¤è¤Ã¤Æ¡¢XML¤òŬÍѤ·¤¿¥Þ¡¼¥¯¥¢¥Ã¥×¸À¸ì¤ò
¼ÂÁõ ¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¡£
XML¤òŬÍѤ·¤¿¥Þ¡¼¥¯¥¢¥Ã¥×¸À¸ì¤ÏÈó¾ï¤Ë¿¤¯Â¸ºß¤·¤Æ¤¤¤ë ¡Ê
#XML¤Î±þÍÑ ¤ÎÀá¤ò»²¾È¡Ë ¡£
Î㤨¤Ð¡¢
Extensible HyperText Markup Language (XHTML)
Extensible HyperText Markup Language (XHTML) ¤Ï¡¢¥Þ¡¼¥¯¥¢¥Ã¥×¸À¸ì HyperText Markup Language (HTML) ¤ò´ÊÁDz½¤·¤½¤Î°ì´ÓÀ¤ò²þÎɤ·¤è¤¦¤È¤¤¤¦»î¤ß¤Ç¤¢¤ë¡£¤Ê¤ª¡¢HTML¤Ï¡¢Standard Generalized Markup Language (SGML) ¤Ë´ð¤Å¤¤¤¿¥Þ¡¼¥¯¥¢¥Ã¥×¸À¸ì¤Ç¤¢¤ë¡£ ¡¢
DocBook ¡¢
RSS ¡¢
Mathematical Markup Language (MathML) ¡¢
ebXML ¡¢
Scalable Vector Graphics (SVG) ¡¢
MusicXML ¤Ê¤É¤¬¤¢¤ë¡£
¤µ¤é¤ËXML¤ò¡¢¤³¤Î¤è¤¦¤ÊŬÍÑ¥Þ¡¼¥¯¥¢¥Ã¥×¸À¸ì¤Î¤¿¤á¤Î
»ÅÍ͵½Ò¸À¸ì ¤¹¤Ê¤ï¤Á
¥¹¥¡¼¥Þ¸À¸ì ¤È¤·¤Æ¡¢»È¤¦¤³¤È¤¬¤Ç¤¤ë¡£
XML¤Çµ½Ò¤¹¤ë¥¹¥¡¼¥Þ¸À¸ì¤È¤·¤Æ¤Ï¡¢RELAX NG ¡¢W3C XML Schema ¤Ê¤É¤¬¤¢¤ë¡£
¥ª¡¼¥×¥ó¤Ê»ÅÍÍ
XML¤Ï¡¢Æ±¤¸¤¯ÈÆÍÑŪ¤Ë»È¤¦¤³¤È¤¬¤Ç¤¤ë¥Þ¡¼¥¯¥¢¥Ã¥×¸À¸ì¤Ç¤¢¤ë
Standard Generalized Markup Language (SGML) ¤Î¡¢´ÊÁDz½¤µ¤ì¤¿¥µ¥Ö¥»¥Ã¥È¤È¤·¤Æ¡¢¿Í´Ö¤Ë¤È¤Ã¤Æ¤âÈæ³ÓŪȽÆÉ¤·¤ä¤¹¤¤¤è¤¦¤Ë¡¢À߷פµ¤ì¤¿ ¡Ê
#Îò»Ë ¤ò»²¾È¡Ë ¡£
XML¤Î»ÅÍͤϡ¢XML¥ï¡¼¥¥ó¥°¥°¥ë¡¼¥×¤Ê¤É¤Ë¤è¤êÀ߷פ¬¹Ô¤ï¤ì¡¢
World Wide Web Consortium (W3C) ¤Ë¤è¤ê´«¹ð ¡ÊºöÄê¡Ë ¤µ¤ì¤Æ¤¤¤ë¡£
XML¤Ï̵½þ¤Ç»È¤¦¤³¤È¤¬¤Ç¤¤ë
¥ª¡¼¥×¥óɸ½à ¤Îµ»½Ñ¤Ç¤¢¤ë¡£
XML»ÅÍͤÎW3C´«¹ð¤Ç¤ÏXML¤Îʸˡ¤ÈXML¥×¥í¥»¥µ ¡ÊXML¥Ñ¡¼¥µ¡¢XMLʸ½ñ¤Î
¹½Ê¸²òÀÏ´ï ¡Ë ¤Î¤¿¤á¤ÎÍ×·ï¤òÄê¤á¤Æ¤¤¤ë¡£
1998ǯ 2·î¤Ë XML 1.0 ¤¬´«¹ð¤µ¤ì¤¿¡£
2007ǯ¸½ºß¡¢W3C´«¹ð¤ÎºÇ¿·¥Ð¡¼¥¸¥ç¥ó¤Ï XML 1.1 ¤Ç¤¢¤ë¡£
ÀµÅöÀ¿å½à¤Ë¤Ä¤¤¤Æ
XMLʸ½ñ¤ÎÀµÅöÀ¤Î¿å½à¤Ë¤Ï¡¢À°·Á¼°XMLʸ½ñ¤ÈÂÅÅö¤ÊXMLʸ½ñ¤Î¡¢2¤Ä¤Î¿å½à¤¬¤¢¤ë ¡Ê
#À°·Á¼°XMLʸ½ñ¤ÈÂÅÅö¤ÊXMLʸ½ñ ¤ò»²¾È¡Ë ¡£
XMLʸ½ñ¤Î¥Þ¡¼¥¯¥¢¥Ã¥×µ¬Â§¤Ë½¾¤Ã¤Æµ½Ò¤µ¤ì¤Æ¤¤¤ë¤³¤È¤À¤±¤¬ÌäÂê¤È¤µ¤ì¤ëʸ̮¤Ç¡¢¥¹¥¡¼¥Þ¸À¸ì¤ò»È¤ï¤º¤Ë¡¢XMLʸ½ñ¤Î¥Þ¡¼¥¯¥¢¥Ã¥×µ¬Â§¤Ë½¾¤Ã¤Æµ½Ò¤µ¤ì¤¿Ê¸½ñ¤ò¡¢¡ÖÀ°·Á¼°XMLʸ½ñ¡× (well-formed XML document) ¤È¤¤¤¦ ¡Ê
#XML¤Î¹½Ê¸¤ÈÀ°·Á¼°XMLʸ½ñ ¤ò»²¾È¡Ë ¡£
¤µ¤é¤Ë¡¢XMLʸ½ñ¤ò¤è¤ê¸·Ì©¤Ë¹½Â¤²½¤·¤¿Ê¸½ñ¤ä¥Ç¡¼¥¿¤È¤·¤Æ°·¤¤¤¿¤¤¾ì¹ç¤Ï¡¢XMLʸ½ñ¤Î¹½Â¤¤ò
¥¹¥¡¼¥Þ¸À¸ì ¤Ë¤è¤Ã¤ÆÄêµÁ¤¹¤ë¤³¤È¤¬¤Ç¤¡¢XML¥×¥í¥»¥µ¤Ç¤½¤ÎXMLʸ½ñ¡ÊXML¥¤¥ó¥¹¥¿¥ó¥¹¡Ë¤ËÂФ·¤Æ¤½¤Îʸ½ñ¹½Â¤¤Ë½¾¤Ã¤Æ¤¤¤ë¤³¤È¤ò¸¡¾Ú¤¹¤ë¡ÊÂÅÅöÀ¸¡¾Ú¤ò¹Ô¤¦¡Ë¤È¤¤¤¦¤è¤¦¤Ë¡¢XMLµ»½Ñ¤ò»È¤¦¤³¤È¤â¤Ç¤¤ë ¡Ê
#XMLʸ½ñ¤ÎÏÀÍýŪ¹½Â¤¤ÈÂÅÅö¤ÊXMLʸ½ñ ¤ò»²¾È¡Ë ¡£
XMLʸ½ñ¤ËÂФ·¤ÆÂÅÅöÀ¸¡¾Ú¤ò¹Ô¤¦¤³¤È¤Ë¤è¤ê¡¢½¾Íè
¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¥½¥Õ¥È¥¦¥§¥¢ ¤Ç¹Ô¤Ã¤Æ¤¤¿¡¢XMLʸ½ñ¤Î¹½Â¤¤Î¸¡ºº¤ä¡¢XMLʸ½ñ¤Ë´Þ¤Þ¤ì¤ë¥Ç¡¼¥¿¤ËÂФ¹¤ë
¥Ç¡¼¥¿·¿ ¤Î¥Á¥§¥Ã¥¯¤äÃͤÎÈϰϤΥÁ¥§¥Ã¥¯¤¬¡¢²Äǽ¤È¤Ê¤ë¡£
¥¹¥¡¼¥Þ¸À¸ì¤È¤·¤Æ¤Ï
Document Type Definition (DTD¡¢Ê¸½ñ·¿ÄêµÁ) ¡¢
W3C XML Schema ¡¢
RELAX NG ¡Ê
ʸ½ñ¥¹¥¡¼¥ÞÄêµÁ¸À¸ì : DSDL¡Ë¤Ê¤É¤¬¤¢¤ë¡£
XMLʸ½ñ¤Î¹½Â¤¤¬¥¹¥¡¼¥Þ¸À¸ì¤Ë¤è¤Ã¤ÆÄêµÁ¤µ¤ì¡¢XMLʸ½ñ¤ÎÂÅÅöÀ¤ò¸¡¾Ú¤¹¤ë
¥½¥Õ¥È¥¦¥§¥¢ ¤Ë¤è¤Ã¤ÆÂÅÅöÀ¤¬¸¡¾Ú¤µ¤ì¤¿XMLʸ½ñ¤Î¤³¤È¤ò¡ÖÂÅÅö¤ÊXMLʸ½ñ¡× (valid XML document) ¤È¤¤¤¦¡£
À°·Á¼°XMLʸ½ñ¤Ï¡¢ÂÅÅö¤ÊXMLʸ½ñ¤Ç¤¢¤ë¾ì¹ç¤È¡¢ÂÅÅö¤ÊXMLʸ½ñ¤Ç¤Ï¤Ê¤¤¾ì¹ç¤È¤¬¤¢¤ë¡£
¥¹¥¡¼¥Þ¸À¸ì¤òºÎÍѤ·¤ÆÂÅÅöÀ¸¡¾Ú¤ò¹Ô¤¦ÊýË¡¤ÇXML¤ò»È¤¦¤³¤È¤â¤Ç¤¤ë¤·¡¢¥¹¥¡¼¥Þ¸À¸ì¤òºÎÍѤ»¤ºÂÅÅöÀ¸¡¾Ú¤ò¹Ô¤ï¤Ê¤¤¤Ç¼ê·Ú¤ËXML¤ò»È¤¦¤³¤È¤â¤Ç¤¤ë¡£
Éý¹¤¤¿Í´Ö¸À¸ì¤Î¥µ¥Ý¡¼¥È
XML´«¹ð¤Ç¤Ï¡¢XML¥×¥í¥»¥µ¤¬¥µ¥Ý¡¼¥È¤¹¤Ù¤Ê¸»úÉ乿²½Êý¼° ¡Êʸ»ú¥³¡¼¥É ¡Ë¤È¤·¤ÆUTF-8 ¤ÈUTF-16 ¡ÊUnicode ¡Ë¤òÄê¤á¤Æ¤¤¤ë¤¿¤á¡¢±Ñ¸ì°Ê³°¤Î¸À¸ì¤â°·¤¤¤ä¤¹¤¯¤Ê¤Ã¤Æ¤¤¤ë ¡Ê#¿¸À¸ì´Ä¶¤Ç»È¤¦ ¤ò»²¾È¡Ë ¡£¤Þ¤¿¡¢UTF-8¤ÈUTF-16°Ê³°¤Îʸ»ú¥³¡¼¥É¡ÊUCS-4 ¡¢EUC-JP ¡¢Shift_JIS ¡¢EBCDIC ¤Ê¤É¡Ë¤òÍѤ¤¤ë¤³¤È¤â²Äǽ¤Ç¤¢¤ë[XML¥×¥í¥»¥µ¤òÍøÍѤ¹¤ëºÝ¤Ë¤Ï¡¢XMLʸ½ñ¤ÇÍѤ¤¤Æ¤¤¤ëʸ»ú¥³¡¼¥É¤ò¥µ¥Ý¡¼¥È¤·¤¿¤â¤Î¤òÁªÂò¤¹¤ë¤³¤È¤Ë¤Ê¤ë¡£]¡£
Êä´°µ»½Ñ
XML¤À¤±¤Ç¤ÏºÇÄã¸Â¤Î½ñ¼°¤·¤«·è¤á¤é¤ì¤Æ¤¤¤Ê¤¤¤¿¤á¡¢XML¤ÎÎϤò°ú¤½Ð¤¹³Æ¼ï¤Î´ØÏ¢µ»½Ñ¤¬ÊÌÅÓɸ½à²½¤µ¤ì¤Æ¤¤¤ë ¡Ê
#XML¤Î³ÈÄ¥ ¤ª¤è¤Ó
#XMLʸ½ñ¤ò¥×¥í¥°¥é¥à¤Ç½èÍý¤¹¤ë ¡¢
#XMLʸ½ñ¤ò»ë³ÐŪ¤Ëɽ¼¨¤¹¤ë ¡¢
#XML¥¤¥ó¥Õ¥©¥á¡¼¥·¥ç¥ó¥»¥Ã¥È ¤ò»²¾È¡Ë ¡£
¸½ºß¤â¿¤¯¤Î´ØÏ¢µ»½Ñ¤Îɸ½à²½ºî¶È¤¬¹Ô¤ï¤ì¤Æ¤¤¤ë¡£
Î㤨¤Ð¡¢
¥×¥í¥°¥é¥à ¤«¤éXMLʸ½ñ¤ò½èÍý¤¹¤ëÊýË¡¤È¤·¤Æ¡¢
Document Object Model (DOM) ¤ä
Simple API for XML (SAX) ¤Ê¤É¤Î
¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¥×¥í¥°¥é¥ß¥ó¥°¥¤¥ó¥¿¥Õ¥§¡¼¥¹ (API) ¤¬É¸½à²½¤µ¤ì¤Æ¤¤¤ë
[¾¤ÎÊýË¡¤ÇXMLʸ½ñ¤ò½èÍý¤¹¤ë¤³¤È¤â²Äǽ¤Ç¤¢¤ë]¡£
¤Þ¤¿¡¢XMLʸ½ñ¤Î¥¹¥¿¥¤¥ë¤ò»ØÄꤹ¤ëµ»½Ñ¡Ê¥¹¥¿¥¤¥ë¥·¡¼¥È ¡Ë¤È¤·¤Æ Extensible Stylesheet Language (XSL) ¤ä Cascading Style Sheets (CSS) ¤Ê¤É¤¬¤¢¤ë¡£
XML¤ÎÉáµÚ¤ÈXML¤Ø¤ÎÈãɾ
XML¤Ï¸½ºß¡¢¹¤¯ÉáµÚ¤·¤Æ¤¤¤ëµ»½Ñ¤Ç¤¢¤ë¤¬¡¢¤½¤Îµ»½ÑŪ¤ÊÍÍÑÀ¤Ê¤É¤Ë¤Ä¤¤¤Æ¡¢¹ÎÄêŪ¤Ëɾ²Á¤¹¤ë¿Í¡¹¤¬Â¿¤¤°ìÊý¤Ç¡¢ÈãȽŪ¤Ëɾ²Á¤¹¤ë¿Í¡¹¤â¿¤¤ ¡Ê#XML¤ËÂФ¹¤ë»Ù»ý¤ÈÈãȽ ¤ò»²¾È¡Ë ¡£
À°·Á¼°XMLʸ½ñ¤ÈÂÅÅö¤ÊXMLʸ½ñ
XMLʸ½ñ¤ÎÀµÅöÀ¤Î¿å½à¤Ë¤Ï¡¢À°·Á¼°XMLʸ½ñ¤ÈÂÅÅö¤ÊXMLʸ½ñ¤Î¡¢2¤Ä¤Î¿å½à¤¬¤¢¤ë¡£
¤Ê¤ªXMLʸ½ñ¤ËÂФ·¤Æ¡¢À°·Á¼°XMLʸ½ñ¤È¤·¤Æ¤Î¸¡ºº¤Î¤ß¤ò¹Ô¤¦XML¥×¥í¥»¥µ¤òÈ󸡾ÚXML¥×¥í¥»¥µ ¤È¤¤¤¤¡¢À°·Á¼°XMLʸ½ñ¤È¤·¤Æ¤Î¸¡ºº¤Ë²Ã¤¨¤ÆÂÅÅö¤ÊXMLʸ½ñ¤È¤·¤Æ¤Î¸¡ºº¤ò¹Ô¤¦XML¥×¥í¥»¥µ¤ò¸¡¾ÚXML¥×¥í¥»¥µ ¤È¤¤¤¦¡£
À°·Á¼°XMLʸ½ñ
À°·Á¼°XMLʸ½ñ (well-formed XML document) ¤Ï¡¢XML¤Î¹½Ê¸¤Îµ¬Â§¤Î¤¹¤Ù¤Æ¤Ë½àµò¤·¤Æ¤¤¤ë¡£Î㤨¤Ð¡¢Ê¸½ñÃæ¤Î¤¢¤ëÍ×ÁǤ¬³«»Ï¥¿¥°¤¬Í¤ë¤¬Âбþ¤¹¤ë½ªÎ»¥¿¥°¤¬·çÍ¤Æ¤¤¤ë¾ì¹ç¡¢¤½¤Îʸ½ñ¤ÏÀ°·Á¼° (well-formed) ¤Ç¤Ï¤Ê¤¤¡£À°·Á¼°¤Ç¤Ï¤Ê¤¤Ê¸½ñ¤ÏXMLʸ½ñ¤È¤Ï¤ß¤Ê¤µ¤ì¤Ê¤¤¡£È󸡾ÚXML¥×¥í¥»¥µ¤ª¤è¤Ó¸¡¾ÚXML¥×¥í¥»¥µ¤Ï¡¢À°·Á¼°¤Ç¤Ï¤Ê¤¤Ê¸½ñ¤ò½èÍý¤¹¤ë¤³¤È¤Ï¤Ç¤¤Ê¤¤ (½èÍý¤ò»î¤ß¤ë¤È¥¨¥é¡¼¤Ë¤Ê¤ë) ¡£
ÂÅÅö¤ÊXMLʸ½ñ
ÂÅÅö¤ÊXMLʸ½ñ (valid XML document) ¤Ï¡¢À°·Á¼°XMLʸ½ñ¤È¤·¤Æ¤Î¾ò·ï¤òËþ¤¿¤·¤Æ¤¤¤ë¤³¤È¤Ë²Ã¤¨¤Æ¡¢Ê¸½ñ¤ÎÏÀÍýŪ¹½Â¤¤òµ¬Äꤹ¤ë²¿¤é¤«¤Îµ¬Â§¤Ë½àµò¤·¤Æ¤¤¤ë¡£¤³¤Î¤è¤¦¤Êµ¬Â§¤Ï¡¢RELAX NG ¤ä XML Schema ¡¢Document Type Definition (DTD) ¤Ê¤É¤Î¥¹¥¡¼¥Þ¸À¸ì ¤ÇÄêµÁ¤µ¤ì¤¿¥¹¥¡¼¥Þ¤ÇÄê¤á¤ë¡£Î㤨¤Ð¡¢¤¢¤ëXMLʸ½ñ¤¬¥¹¥¡¼¥Þ¤ËÄêµÁ¤µ¤ì¤Æ¤¤¤Ê¤¤Í×ÁÇ (¥¿¥°) ¤ò´Þ¤ó¤Ç¤¤¤¿¾ì¹ç¡¢¸¡¾ÚXML¥×¥í¥»¥µ¤Ï¡¢¤½¤ÎXMLʸ½ñ¤ò½èÍý¤¹¤ë¤³¤È¤Ï¤Ç¤¤Ê¤¤¡£¸¡¾ÚXML¥×¥í¥»¥µ¤Ë¤è¤Ã¤Æ¸¡¾Ú¤µ¤ì¤¿XMLʸ½ñ¤Ï¡¢ÂÅÅö (valid) ¤Ç¤¢¤ë¤È°ÌÃ֤Ť±¤é¤ì¤ë¡£
XML¤Î¹½Ê¸¤ÈÀ°·Á¼°XMLʸ½ñ
À°·Á¼°XMLʸ½ñ¤¬Ëþ¤¿¤¹¤Ù¤¹½Ê¸¤Îµ¬Â§¤òÀâÌÀ¤¹¤ë¡£
À°·Á¼°XMLʸ½ñ¤È¤·¤Æ¤Î¾ò·ï¤¬Ëþ¤¿¤µ¤ì¤ë¤³¤È¤Î¤ß¤ò¹Íθ¤¹¤ë¾ì¹ç (¥¹¥¡¼¥Þ¸À¸ì¤ò»È¤ï¤º¤Ë¼ê·Ú¤ËXML¤ò»È¤¦¾ì¹ç) ¤Ë¤ª¤¤¤Æ¤â¡¢XML¤Ï¡¢ÂçÎ̤Îʸ½ñ¤ä¤â¤·¤¯¤ÏÌÚ¹½Â¤ ¤È¤·¤ÆÉ½¸½¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¥Ç¡¼¥¿¤ò³ÊǼ¤¹¤ë¤¿¤á¤Î¡¢°ìÈÌŪ¤ÊÏÈÁȤߤȤ·¤Æ¤ÎÌò³ä¤ò²Ì¤¿¤¹¤³¤È¤¬¤Ç¤¤ë¡£
XMLʸ½ñ¤Ï¡¢
Í×ÁÇ (element) ¤È
°À (attribute) ¤¬Ê£¿ô½¸¤Þ¤Ã¤Æ¡¢¹½À®¤µ¤ì¤Æ¤¤¤ë¡£
Í×ÁÇ¤ÏÆâÉô¤Ë»ÒÍ×ÁǤò´Þ¤à¤³¤È¤¬¤Ç¤¤ë¡£
°À¤ÏÍ×ÁǤËÉտ路¡¢Â°À¤ÎÆâÉô¤Ë»ÒÍ×ÁǤò´Þ¤à¤³¤È¤Ï¤Ç¤¤Ê¤¤¡£
Í×ÁǤϳ«»Ï¥¿¥°¤È½ªÎ»¥¿¥°¤ÇÆâÍÆ¤ò¶´¤à¤³¤È¤Çɽ¸½¤¹¤ë¡£
³«»Ï¥¿¥°¤Ï¡Ö<Í×ÁÇ̾>¡×¡¢½ªÎ»¥¿¥°¤Ï¡ÖÍ×ÁÇ̾>¡×¤Çµ½Ò¤¹¤ë¡£
°ì¤Ä¤ÎÍ×ÁǤòµ½Ò¤¹¤ë¤¿¤á¤Î´ðËÜŪ¤Ê¹½Ê¸¤ò¼¡¤Ë¼¨¤¹¡£
<Í×ÁÇ̾ °À="ÃÍ">ÆâÍÆÍ×ÁÇ̾>
¤³¤³¤Ç¡¢
<Í×ÁÇ̾ °À="ÃÍ"> ¤ò¤³¤ÎÍ×ÁǤγ«»Ï¥¿¥°¤È¤¤¤¤¡¢
Í×ÁÇ̾> ¤ò½ªÎ»¥¿¥°¤È¤¤¤¦¡£
¡ÖÆâÍÆ¡×¤Ï²¿¤é¤«¤Î¥Æ¥¥¹¥È¤Ç¤¢¤ë¡£
¼¡¤Ë¼¨¤¹Îã¤ÏÀ°·Á¼°XMLʸ½ñ¤Ç¤¢¤ë¡£
<½ñÀÒ ½ÐÈÇÆü="2007-10-31">¤³¤ì¤Ï½ñÀҤǤ¹.... ½ñÀÒ>
¤³¤ÎÎã¤Ï¡¢½ñÀҤȤ¤¤¦Í×ÁǤò°ì¤Ä¤â¤ÄXMLʸ½ñ¤Ç¤¢¤ë¡£
<½ñÀÒ> ¤¬½ñÀÒÍ×ÁǤγ«»Ï¥¿¥°¤Ç¤¢¤ê¡¢</½ñÀÒ> ¤¬½ñÀÒÍ×ÁǤνªÎ»¥¿¥°¤Ç¤¢¤ë¡£
¡Ö½ÐÈÇÆü="2007-10-31"¡×¤Ï½ñÀÒÍ×ÁǤΰÀ¤Ç¤¢¤ë¡£
¤³¤Î°À¤Î̾Á° ¡Ê°À̾¡Ë ¤Ï¡Ö½ÐÈÇÆü¡×¤Ç¤¢¤ê¡¢¤³¤Î°À¤ÎÃÍ ¡Ê°ÀÃÍ¡Ë ¤Ï "2007-10-31" ¤Ç¤¢¤ë¡£
¡Ö¤³¤ì¤Ï½ñÀҤǤ¹.... ¡×¤Ï¡¢½ñÀÒÍ×ÁÇ¤ÎÆâÍÆ¤Ç¤¢¤ë¡£
Í×ÁÇ¤ÎÆâÍÆ¤ò¹½À®¤¹¤ë¥Æ¥¥¹¥È¤Ï¤Þ¤¿¡¢¤µ¤é¤ËǤ°Õ¤Î¿ô¤ÎÍ×ÁǤò´Þ¤à¤³¤È¤¬¤Ç¤¤ë ¡Ê¤Ê¤ª¡¢¤³¤Î¤è¤¦¤Ë°ì¤Ä¤ÎÍ×ÁÇÆâ¤Ëʸ»úÎó¥Ç¡¼¥¿¤È»ÒÍ×ÁǤ¬º®ºß¤¹¤ë¤â¤Î¤ò¡¢¡Öº®¹çÆâÍÆ¡×¤È¸Æ¤Ö
[°ì¤Ä¤ÎÍ×ÁÇ¤ÎÆâÍÆ¤È¤·¤ÆÊ¸»úÎó¥Ç¡¼¥¿¤Î¤ß¤ò´Þ¤à¤â¤Î¤Ï¡¢º®¹çÆâÍÆ¤Ç¤Ï¤Ê¤¤¡£¤Þ¤¿ÆâÍÆ¤Î¤Ê¤¤¡Ö¶õÍ×Áǡפ⺮¹çÆâÍÆ¤Ç¤Ï¤Ê¤¤¡£°ì¤Ä¤ÎÍ×ÁÇ¤ÎÆâÍÆ¤¬¤¤¤¯¤Ä¤«¤Î»ÒÍ×ÁǤÀ¤±¤«¤é¹½À®¤µ¤ì¤ë¤â¤Î¤â¡¢º®¹çÆâÍÆ¤Ç¤Ï¤Ê¤¤¡£]¡Ë ¡£
¤¹¤Ê¤ï¤Á¡¢°ìÈÌŪ¤ÊXMLʸ½ñ¤Ï
ÌÚ¹½Â¤ ¤ò¤Ê¤¹¡£
¤³¤ÎÅÀ¤Ë¤ª¤¤¤Æ¡¢XML¤Ï
¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì LISP ¤Î
S¼° ¤È»÷¤Æ¤¤¤ë¡£
S¼°¤Ç¤âÌÚ¹½Â¤¤òµ½Ò¤¹¤ë¡£
S¼°¤ÎÌÚ¹½Â¤¤Î¤ª¤Î¤ª¤Î¤ÎÀá¤Ï¡¢¼«Ê¬¼«¿È¤Î¥×¥í¥Ñ¥Æ¥£¥ê¥¹¥È¤ò¤â¤Ä¤³¤È¤¬¤Ç¤¤ë¡£
Í×ÁÇ¤ÏÆâÉô¤ËÊ̤ÎÍ×ÁǤò´Þ¤à¤³¤È¤¬¤Ç¤¤ë¡£
¹½Â¤²½¤·¤¿XMLʸ½ñ¤ÎÎã¤ò¼¨¤¹¡£
<¥ì¥·¥Ô ̾Á°="¥Ñ¥ó" ½àÈ÷»þ´Ö="5ʬ" Ä´Íý»þ´Ö="3»þ´Ö">
<ÎÁÍý>´ðËÜŪ¤Ê¥Ñ¥óÎÁÍý>
<ºàÎÁ ÎÌ='3' ñ°Ì='¥«¥Ã¥×'>¾®ÇþÊ´ºàÎÁ>
<ºàÎÁ ÎÌ='0.25' ñ°Ì='¥ª¥ó¥¹'>¥¤¡¼¥¹¥ÈºàÎÁ>
<ºàÎÁ ÎÌ='1.5' ñ°Ì='¥«¥Ã¥×' ¾õÂÖ="²¹¤«¤¤">¿åºàÎÁ>
<ºàÎÁ ÎÌ="1" ñ°Ì="¥Æ¥£¡¼¥¹¥×¡¼¥ó">¿©±öºàÎÁ>
<Í×ÎÎ>
<¼ê½ç>Á´¤Æ¤ÎºàÎÁ¤ò°ì½ï¤Ë¤·¤Æº®¤¼¤Þ¤¹¡£¼ê½ç>
<¼ê½ç>½½Ê¬¤Ë¤³¤Í¤Þ¤¹¡£¼ê½ç>
<¼ê½ç>ÉÛ¤Çʤ¤¤¡¢ÃȤ«¤¤Éô²°¤Ç1»þ´Ö¤½¤Î¤Þ¤Þ¤Ë¤·¤Æ¤ª¤¤Þ¤¹¡£¼ê½ç>
<¼ê½ç>¤â¤¦°ìÅÙ¤³¤Í¤Þ¤¹¡£¼ê½ç>
<¼ê½ç>¥Ñ¥ó¾Æ¤¤ÎÍÆ´ï¤ËÆþ¤ì¤Þ¤¹¼ê½ç>
<¼ê½ç>ÉÛ¤Çʤ¤¤¡¢ÃȤ«¤¤Éô²°¤Ç1»þ´Ö¤½¤Î¤Þ¤Þ¤Ë¤·¤Æ¤ª¤¤Þ¤¹¡£¼ê½ç>
<¼ê½ç>¥ª¡¼¥Ö¥ó¤ËÆþ¤ì¤Æ²¹ÅÙ¤ò180¡î¤Ë¤·¤Æ30ʬ´Ö¾Æ¤¤Þ¤¹¡£¼ê½ç>
Í×ÎÎ>
¥ì¥·¥Ô>
Í×ÁǤΰÀ¤ÎÃͤϡ¢É¬¤º¥·¥ó¥°¥ë¥¯¥©¡¼¥È (') ¤«¥À¥Ö¥ë¥¯¥©¡¼¥È (") ¤Ç³ç¤é¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£
¤½¤·¤ÆÍ×ÁÇÆâ¤Ë¤¢¤ë°À¤Ï¡¢¸ß¤¤¤Ë°À̾¤¬°Û¤Ê¤Ã¤Æ¤¤¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£
XMLʸ½ñ¤Ç¤ÏÍ×ÁǤÏÀµ¤·¤¯Æþ¤ì»Ò¤Ë¤Ê¤Ã¤Æ¤¤¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£
Í×ÁǤϤ±¤Ã¤·¤Æ¥ª¡¼¥Ð¡¼¥é¥Ã¥×¤·¤Æ¤¤¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
Î㤨¤Ð¡¢¼¡¤Îʸ½ñ¤ÏÀ°·Á¼°XMLʸ½ñ¤Ç¤Ï¤Ê¤¤¡£
¤Ê¤¼¤Ê¤é ½ñ̾ Í×ÁÇ¤È Ãø¼Ô Í×ÁǤ¬¥ª¡¼¥Ð¡¼¥é¥Ã¥×¤·¤Æ¤¤¤ë¤«¤é¤Ç¤¢¤ë¡£
<½ñÀÒÌÜÏ¿> <½ñ̾>XMLÆþÌç<Ãø¼Ô>Åû°æ<½ñ̾>³¡¦XMLÆþÌç<Ãø¼Ô>¾®¾¾½ñ̾>Ãø¼Ô>½ñ̾>Ãø¼Ô> ½ñÀÒÌÜÏ¿>
¼¡¤Î2¤Ä¤Îʸ½ñ¤ÏÀ°·Á¼°XMLʸ½ñ¤Ç¤¢¤ë¡£
<½ñÀÒÌÜÏ¿> <½ñ̾>XMLÆþÌç½ñ̾> <Ãø¼Ô>Åû°æÃø¼Ô> <½ñ̾>³¡¦XMLÆþÌç½ñ̾> <Ãø¼Ô>¾®¾¾Ãø¼Ô> ½ñÀÒÌÜÏ¿>
<½ñÀÒÌÜÏ¿> <½ñ̾>XMLÆþÌç½ñ̾> <Ãø¼Ô>Åû°æ<½ñ̾>³¡¦XMLÆþÌç<Ãø¼Ô>¾®¾¾Ãø¼Ô>½ñ̾>Ãø¼Ô> ½ñÀÒÌÜÏ¿>
À°·Á¼°XMLʸ½ñ¤Ë¤ª¤¤¤Æ¤Ï¡¢XMLʸ½ñ¤ÏÀµ³Î¤Ë°ì¤Ä¤Î
¥ë¡¼¥ÈÍ×ÁÇ ¡Ê
ʸ½ñÍ×ÁÇ ; document element ¤È¤â¸Æ¤Ð¤ì¤ë¡Ë ¤ò¤â¤¿¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£
¥ë¡¼¥ÈÍ×ÁǤȤϡ¢XMLʸ½ñ¤ÎÍ×ÁǤγ¬Áع½Â¤¤Ë¤ª¤¤¤ÆºÇ¾å°Ì¤ÎÍ×ÁǤΤ³¤È¤ò¤¤¤¦¡£
ºÇ¾å°Ì¤ÎÍ×ÁǤϰì¤Ä¤Ç¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£
ºÇ¾å°Ì¤ÎÍ×ÁǤ¬Ê£¿ô¤¢¤ëʸ½ñ¤Ï¡¢À°·Á¼°XMLʸ½ñ¤Ç¤Ï¤Ê¤¤¡£
À°·Á¼°XMLʸ½ñ¤¬°ì¤Ä¤Î¥ë¡¼¥ÈÍ×ÁǤò¤â¤¿¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¤È¤¤¤¦¾ò·ï¤¬°ÕÌ£¤¹¤ë¤³¤È¤Ï¡¢À°·Á¼°XMLʸ½ñ¤Î¥Æ¥¥¹¥È¤Ï¡¢¥ë¡¼¥ÈÍ×ÁǤγ«»Ï¥¿¥°¤ÈÂбþ¤¹¤ë½ªÎ»¥¿¥°¤Î´Ö¤Ë¡¢¼ý¤á¤é¤ì¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¤È¤¤¤¦¤³¤È¤Ç¤¢¤ë¡£
¥ë¡¼¥ÈÍ×ÁǤγ«»Ï¥¿¥°¤È½ªÎ»¥¿¥°¤Î´Ö¤Ë¼ý¤á¤é¤ì¤¿¥Æ¥¥¹¥È¤Ï¡¢Ç¤°Õ¤Î¿ô¤ÎÍ×ÁǤäʸ»úÎó¥Ç¡¼¥¿¤ò´Þ¤à¤³¤È¤¬¤Ç¤¤ë¡£
¥ë¡¼¥ÈÍ×ÁǤÎÁ°¤Ë¡¢É¬Íפ˱þ¤¸¤Æ¡¢
XMLÀë¸À (XML declaration) ¤ò¤ª¤¯¤³¤È¤¬¤Ç¤¤ë¡£
¤³¤ÎXMLÀë¸À¤Ï¡¢XML¤Î¤É¤Î¥Ð¡¼¥¸¥ç¥ó¤¬»È¤ï¤ì¤Æ¤¤¤ë¤« ¡Ê¸½»þÅÀ¤Ç¤Ï¥Ð¡¼¥¸¥ç¥ó1.0¤Ç¤¢¤ë¤³¤È¤¬Â¿¤¤¡Ë ¤Ê¤É¤ò¼¨¤¹¡£
XMLÀë¸À¤Ç¤Ï¡¢XML¤Î¥Ð¡¼¥¸¥ç¥ó¤Î¾¤Ë¡¢
ʸ»úÉ乿²½Êý¼° ¡Ê
ʸ»ú¥³¡¼¥É ¡Ë ¤Î»ØÄê¤ä¡¢Â¾¤ÎXMLʸ½ñ¤È¤Î°Í¸´Ø·¸¤Ë¤Ä¤¤¤Æ¤Î»ØÄê¤ò¡¢¹Ô¤¦¤³¤È¤â¤Ç¤¤ë¡£
XMLʸ½ñ¤Îʸ»úÉ乿²½Êý¼°¤¬UTF-8 ¤«UTF-16 ¤Î¾ì¹ç¤Ï¡¢XMLÀë¸À¤ò¤ª¤¤¤Æ¤â¤è¤¤¤·¡¢XMLÀë¸À¤ò¤ª¤«¤Ê¤¯¤Æ¤â¤è¤¤¡£
XMLʸ½ñ¤Îʸ»úÉ乿²½Êý¼°¤¬UTF-8¤Ç¤âUTF-16¤Ç¤â¤Ê¤¤¾ì¹ç¤Ï¡¢XMLÀë¸À¤ò¤ª¤¤¤ÆÊ¸»úÉ乿²½Êý¼°¤òÌÀ¼¨¤¹¤ëɬÍפ¬¤¢¤ë¡£
XMLÀë¸À¤ò´Þ¤ó¤ÀXMLʸ½ñ¤ÎÎã¤ò¼¨¤¹¡£
<½ñÀÒ ½ÐÈÇÆü="2007-10-31">¤³¤ì¤Ï½ñÀҤǤ¹.... ½ñÀÒ>
XML»ÅÍͤǤϡ¢
XML¥×¥í¥»¥µ ¡ÊXML¥Ñ¡¼¥µ¡¢XMLʸ½ñ¤Î
¹½Ê¸²òÀÏ´ï ¡Ë ¤¬¡¢
Unicode ¤Îʸ»úÉ乿²½Êý¼°¤Ç¤¢¤ë
UTF-8 ¤ª¤è¤Ó
UTF-16 ¤Çµ½Ò¤µ¤ì¤¿XMLʸ½ñ¤ò½èÍý¤Ç¤¤ë¤³¤È¤ò¡¢
ɬ¿Ü ¾ò·ï¤È¤·¤Æ¤¤¤ë ¡Ê
UCS-4 ¤Ïɬ¿Ü¾ò·ï¤Ç¤Ï¤Ê¤¤¡Ë ¡£
XML¥×¥í¥»¥µ¤Ï¡¢UTF-8¤ª¤è¤ÓUTF-16¤Î¾¤Ë¤â¡¢¤¤¤¯¤Ä¤«¤ÎǤ°Õ¤Îʸ»úÉ乿²½Êý¼°¤Îʸ½ñ¤ò½èÍý¤Ç¤¤ë¤è¤¦¤Ë¤·¤ÆÎɤ¤¡£
Î㤨¤Ð¡¢UCS-4 ¡¢EUC-JP ¡¢Shift_JIS ¡¢EBCDIC ¤Ê¤É¤Îʸ»úÉ乿²½Êý¼°¤Îʸ½ñ¤ò½èÍý¤Ç¤¤ëXML¥×¥í¥»¥µ¤¬¡¢¹¤¯ÉáµÚ¤·¡¢»È¤ï¤ì¤Æ¤¤¤ë¡£
¥³¥á¥ó¥È ¤ÏXMLʸ½ñ¤ÎÌÚ¹½Â¤¤Î¤É¤³¤Ë¤Ç¤â¤ª¤¯¤³¤È¤¬¤Ç¤¤ë¡£
¥³¥á¥ó¥È¤Ï¡¢"<!--" ¤Ç»Ï¤Þ¤ê¡¢"-->" ¤Ç½ª¤ï¤ë¡£
¤Ê¤ª¡¢¥³¥á¥ó¥ÈÆâ¤Ë "--" ¤ò´Þ¤à¤³¤È¤Ï¤Ç¤¤Ê¤¤¡£
¥³¥á¥ó¥È¤ò´Þ¤àXMLʸ½ñ¤ÎÎã¤ò¼¨¤¹¡£
<½ñÀÒ ½ÐÈÇÆü="2007-10-31">
¤³¤ì¤Ï½ñÀҤǤ¹....
½ñÀÒ>
ÆâÍÆ¤Î¤Ê¤¤Í×ÁǤò
¶õÍ×ÁÇ (empty element) ¤È¤¤¤¦¡£
XML¤Ç¤Ï¡¢¶õÍ×ÁǤòɽ¸½¤¹¤ë¤¿¤á¤ËÆÃÊ̤ʹ½Ê¸¤ò»È¤¦¤³¤È¤¬¤Ç¤¤ë¡£
³«»Ï¥¿¥°¤ò½ñ¤¤½¤Îľ¸å¤Ë½ªÎ»¥¿¥°¤ò½ñ¤¯¤³¤È¤â¤Ç¤¤ë¤¬¡¢¤½¤ÎÂå¤ï¤ê¤Ë¶õÍ×ÁǤΥ¿¥°¤ò»È¤¦¤³¤È¤¬¤Ç¤¤ë¤Î¤Ç¤¢¤ë¡£
¶õÍ×ÁÇ¥¿¥°¤Ï³«»Ï¥¿¥°¤È»÷¤Æ¤¤¤ë¤¬¡¢ÊĤ¸³ç¸Ì¤ÎľÁ°¤Ë¥¹¥é¥Ã¥·¥å¤ò¤ª¤¯¡£
¼¡¤Î3¤Ä¤ÎÎã¤Ï¡¢XML¤Ç¤ÏƱÅù¤Ç¤¢¤ë¡£
¶õÍ×ÁÇ¥¿¥°¤Ï°À¤ò´Þ¤à¤³¤È¤¬¤Ç¤¤ë¡£
<¾ðÊó Ãø¼Ô="¾®¾¾º¸µþ" ʬÎà="¥µ¥¤¥¨¥ó¥¹¥Õ¥£¥¯¥·¥ç¥ó" ÆüÉÕ="2009-01-01"/>
¿¸À¸ì´Ä¶¤Ç»È¤¦
XMLʸ½ñ¤Ç¤Ï¤É¤Î
Unicode ¤Îʸ»ú¤â ¡ÊXML¤ÇÆÃÊ̤ʰÕÌ£¤ò¤â¤Ä¡¢³«¤»³³ç¸Ì "<" ¤Î¤è¤¦¤Êʸ»ú¤ò½ü¤¤¤Æ¡Ë ¡¢Í×ÁÇ̾¤È¤·¤Æ¡¢Â°À̾¤È¤·¤Æ¡¢¥³¥á¥ó¥ÈÆâÍÆ¤È¤·¤Æ¡¢Ê¸»ú¥Ç¡¼¥¿¤È¤·¤Æ¡¢
½èÍýÌ¿Îá ¡Ê¸å½Ò¡Ë ¤È¤·¤Æ¡¢Ä¾Àܤ˻Ȥ¦¤³¤È¤¬¤Ç¤¤ë¡£
¤³¤Î¤¿¤á¡¢´Á»ú ¤È¥¥ê¥ëʸ»ú ¤ò¶¦¤Ë´Þ¤à¼¡¤Îʸ½ñ¤â¡¢À°·Á¼°XMLʸ½ñ¤Ç¤¢¤ë¡£
<²ä¸ì>§¥§Ñ§ß§ß§í§Ö²ä¸ì>
ʸ½ñ·¿Àë¸À
XMLʸ½ñ ¡Ê¤¢¤ë¤¤¤Ï
SGML ʸ½ñ¡¢
HTML ¥¦¥§¥Ö¥Ú¡¼¥¸ ¤ò´Þ¤à¡Ë ¤Ë¤ª¤¤¤Æ¡¢
ʸ½ñ·¿Àë¸À ¡Ê
DOCTYPEÀë¸À ¡¢Document Type Declaration¡Ë ¤Ï¡¢¤½¤Îʸ½ñ¤òÆÃÄê¤Î
Document Type Definition (DTD) ¤Î¥¹¥¡¼¥Þ¤È´ØÏ¢¤Å¤±¤ë¤³¤È¤òµ½Ò¤¹¤ë¤â¤Î¤Ç¤¢¤ë¡£
¤Ê¤ª¡¢Document Type Definition (DTD) ¤Ï¡¢XML¤Ç»È¤¦¤³¤È¤¬¤Ç¤¤ë
¥¹¥¡¼¥Þ¸À¸ì ¤Î°ì¤Ä¤Ç¤¢¤ë¡£
ʸ½ñ·¿Àë¸À¤Ï¡¢¤½¤Îʸ½ñ¤¬ÆÃÄê¤Î¥¹¥¡¼¥Þ¤Ë½àµò¤·¤Æ¤¤¤ë¤³¤È¤òÀë¸À¤¹¤ë¡£
XMLʸ½ñ¤Ç¤Ïʸ½ñ·¿Àë¸À¤òµ½Ò¤·¤Æ¤â¤è¤¤¤·¡¢µ½Ò¤·¤Ê¤¯¤Æ¤â¤è¤¤¡£
DTD¤ò¥¹¥¡¼¥Þ¸À¸ì¤È¤·¤ÆÂÅÅöÀ¸¡¾Ú¤ò¹Ô¤¦¤³¤È¤òÁÛÄꤷ¤Æ¤¤¤ë¤Î¤Ç¤¢¤ì¤Ð¡¢Ê¸½ñ·¿Àë¸À¤Îµ½Ò¤Ïɬ¿Ü¤È¤Ê¤ë¤Ç¤¢¤í¤¦¡£
DTD¤ÇÂÅÅöÀ¸¡¾Ú¤ò¹Ô¤ï¤Ê¤¤¾ì¹ç¤Ç¤â¡¢¸å½Ò¤¹¤ë¼ÂÂλ²¾È ¤Ê¤É¤òʸ½ñÃæ¤Ç»È¤¦¤Î¤Ç¤¢¤ì¤Ð¡¢Ê¸½ñ·¿Àë¸À¤Ë¤ª¤¤¤ÆÊ¸½ñÃæ¤Ç»È¤¦¼ÂÂΤòÀë¸À¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¡£
ʸ½ñ·¿Àë¸À¤Ï¡¢¤½¤Îʸ½ñ¤¬ÆÃÄê¤Î¥¹¥¡¼¥Þ¤Ë½àµò¤·¤Æ¤¤¤ë¤³¤È ¡ÊÂÅÅö¤ÊXMLʸ½ñ¤Ç¤¢¤ë¤³¤È¡Ë ¤ò¡¢Êݾڤ·¤Æ¤¤¤ë¤ï¤±¤Ç¤Ï¤Ê¤¤¡£
ʸ½ñ·¿Àë¸À¤Ëµ¤µ¤ì¤¿¥¹¥¡¼¥Þ¤Ë½àµò¤·¤Æ¤¤¤ë¤«¤É¤¦¤«¤òȽÃǤ¹¤ë¤Ë¤Ï¡¢¸¡¾ÚXML¥×¥í¥»¥µ¤Ç¤½¤Îʸ½ñ¤ò¸¡¾Ú¤¹¤ëɬÍפ¬¤¢¤ë¡£
ʸ½ñ·¿Àë¸À¤Î°ìÈÌŪ¤Ê¹½Ê¸¤Ï¼¡¤Î¤È¤ª¤ê¤Ç¤¢¤ë¡£
]>
¤³¤³¤Ç³°Éô¥µ¥Ö¥»¥Ã¥È ¤È¤Ï¡¢¤½¤ÎXMLʸ½ñ¤ÎDTD¤ò¹½À®¤¹¤ë ¡ÊÍ×ÁǤη¿¤ÎÀë¸À¡¢¸å½Ò¤¹¤ë¼ÂÂΤÎÀë¸À¤Ê¤É¤Î¡Ë Àë¸À·²¤Î¤¦¤Á¡¢ÊÌ¥Õ¥¡¥¤¥ë¤Ëµ½Ò¤µ¤ì¤¿Àë¸À·²¤Î¤³¤È¤Ç¤¢¤ë¡£¤Þ¤¿ÆâÉô¥µ¥Ö¥»¥Ã¥È ¤È¤Ï¡¢¤½¤ÎXMLʸ½ñ¤ÎDTD¤ò¹½À®¤¹¤ëÀë¸À·²¤Î¤¦¤Á¡¢Ê¸½ñ·¿Àë¸ÀÆâ¤ËľÀܵ½Ò¤µ¤ì¤¿Àë¸À·²¤Î¤³¤È¤Ç¤¢¤ë[³ô¼°²ñ¼ÒÆüËÜ¥æ¥Ë¥Æ¥Ã¥¯¡¢Ã滳´´ÉÒ¡¢±ü°æ¹¯¹°¡¢2001ǯ¡¢p.132]¡£
XHTML 1.0 Strict ¤Ë½àµò¤·¤¿XMLʸ½ñ¤Ç¤Îʸ½ñ·¿Àë¸À¤Ï¡¢¼¡¤Î¤È¤ª¤ê¤Ç¤¢¤ë¡£
XMLʸ½ñ¤Ë¤ª¤¤¤Æ¤Ï¡¢¥ë¡¼¥ÈÍ×ÁǤ¬¤½¤Îʸ½ñ¤ÎºÇ½é¤ÎÍ×ÁǤǤ¢¤ë ¡ÊÎ㤨¤Ð¡¢XHTML¤Ç¤Ï¥ë¡¼¥ÈÍ×ÁǤÏ
html ¤Ç¤¢¤ë¡Ë ¡£
SYSTEM ¥¡¼¥ï¡¼¥É¤È
PUBLIC ¥¡¼¥ï¡¼¥É¤Ï¡¢¤½¤Îʸ½ñ·¿ ¡Êʸ½ñ¤Î¹½Â¤¡Ë ¤Î¼ïÎà¤ò»ØÄꤹ¤ë¡£
°ìÈ̤˹¤¯ÃΤé¤ì¤Æ¤¤¤Ê¤¤DTD¤ò»È¤¦¾ì¹ç¤Ï¡¢
SYSTEM ¥¡¼¥ï¡¼¥É¤ò»È¤¦¡£
°ìÈ̤˹¤¯ÃΤé¤ì¤Æ¤¤¤ëDTD¤ò»È¤¦¾ì¹ç ¡ÊXHTML¤Ê¤É¡Ë ¤Ï¡¢PUBLIC ¥¡¼¥ï¡¼¥É¤ò»È¤¦¡£
SYSTEM ¥¡¼¥ï¡¼¥É¤ò»È¤¦ºÝ¤Ï¡¢¤½¤Î¸å¤Ë³¤±¤Æ¡¢¤½¤Îʸ½ñ¤¬½àµò¤¹¤ëDTD¤Î¥Õ¥¡¥¤¥ë¤ÎURI ¤ò¡¢³°Éô¥µ¥Ö¥»¥Ã¥È»²¾È¤È¤·¤Æµ½Ò¤¹¤ë¡£
PUBLIC ¥¡¼¥ï¡¼¥É¤ò»È¤¦ºÝ¤Ï¡¢¤½¤Î¸å¤Ë³¤±¤Æ¡¢¤½¤Îʸ½ñ¤¬½àµò¤¹¤ëDTD¤Î¸ø³«¼±ÊÌ»Ò (public identifier) ¤ò»ØÄꤷ¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤ ¡ÊÎ㤨¤Ð XHTML 1.0 ¤Î¸ø³«¼±Ê̻Ҥϡ¢"-//W3C//DTD XHTML 1.0 Strict//EN" ¤Ç¤¢¤ë¡Ë ¡£¸ø³«¼±Ê̻Ҥòµ½Ò¤·¤¿¸å¤Ë³¤±¤Æ¡¢SYSTEM ¥¡¼¥ï¡¼¥É¤ò»È¤¦¾ì¹ç¤ÈƱÍͤˡ¢¤½¤Îʸ½ñ¤¬½àµò¤¹¤ëDTD¤Î¥Õ¥¡¥¤¥ë¤ÎURI¤ò¡¢³°Éô¥µ¥Ö¥»¥Ã¥È»²¾È¤È¤·¤Æµ½Ò¤¹¤ë¡£
ÆâÉô¥µ¥Ö¥»¥Ã¥È¤ÏɬÍפ˱þ¤¸¤Æµ½Ò¤¹¤ë¡£
ÆâÉô¥µ¥Ö¥»¥Ã¥È¤È¤·¤Æ¡¢DTD¤Î°ìÉôʬ¤â¤·¤¯¤ÏDTD¤ÎÁ´ÂΤòµ½Ò¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¡£
¤Ê¤ª¡¢ÆâÉô¥µ¥Ö¥»¥Ã¥È¤È¤·¤ÆDTD¤ÎÁ´ÂΤòµ½Ò¤¹¤ë¾ì¹ç¤Ï¡¢SYSTEM¥¡¼¥ï¡¼¥É¡¦PUBLIC¥¡¼¥ï¡¼¥É¡¦³°Éô¥µ¥Ö¥»¥Ã¥È»²¾È¤Ï¡¢¤¤¤º¤ì¤âµ½Ò¤·¤Ê¤¤¡£
¼ÂÂλ²¾È
¼ÂÂλ²¾È (entity reference) ¤Ï¡¢¼ÂÂΤòɽ¸½¤¹¤ë¥×¥ì¡¼¥¹¥Û¥ë¥À¤Ç¤¢¤ë¡£
XML¤Ë¤ª¤±¤ë
¼ÂÂÎ (entity) ¤È¤Ï¡¢
SGML ¤Ë¤ª¤±¤ë¼ÂÂÎ¤ÈÆ±¤¸¤è¤¦¤Ë¡¢Ì¾Á°¤ÎÉÕ¤±¤é¤ì¤¿¥Ç¡¼¥¿¤ÎËÜÂΤǤ¢¤ë¡£
¶ñÂÎŪ¤Ë¤Ï¡¢¥Õ¥¡¥¤¥ë¤â¤·¤¯¤ÏÃÖ´¹Ê¸»úÎó¤Î¤è¤¦¤Ë¡¢²¿¤é¤«¤Î·Á¤ÇXMLʸ½ñ¤Î°ìÉô¤È¤Ê¤ë¥Ç¡¼¥¿¤ò³ÊǼ¤·¤Æ¤¤¤ë¤â¤Î¤Î¤³¤È¤Ç¤¢¤ë
[³ô¼°²ñ¼ÒÆüËÜ¥æ¥Ë¥Æ¥Ã¥¯¡¢Ã滳´´ÉÒ¡¢±ü°æ¹¯¹°¡¢2001ǯ¡¢p.139]¡£
ÃÖ´¹Ê¸»úÎó¤ò»È¤¦»öÎã¤È¤·¤Æ¤Ï¡¢¼¡¤Î¤è¤¦¤Ê¾ì¹ç¤¬¤¢¤ë¡£
¥¡¼¥Ü¡¼¥É¤«¤é´Êñ¤Ë¤ÏÆþÎϤǤ¤Ê¤¤Ê¸»ú¤òXMLʸ½ñÃæ¤Ëɽ¸½¤·¤¿¤¤¾ì¹ç¡£
·è¤Þ¤Ã¤¿Ã±¸ì¤ÎʤӤ¬XMLʸ½ñÃæ¤Ë²¿ÅÙ¤â½Ð¸½¤¹¤ë¾ì¹ç¡£
¼ÂÂλ²¾È¤Î¹½À®¤Ï¡¢¤Þ¤ººÇ½é¤Ë¥¢¥ó¥Ñ¥µ¥ó¥É ("&") ¤¬¤¢¤ê¡¢¤½¤Î¸å¤Ë¼ÂÂΤÎ̾Á°¤¬Â³¤¡¢¥»¥ß¥³¥í¥ó (";") ¤Ç½ª¤ï¤ë¡£
XML¤Ë¤Ï¡¢»öÁ°Àë¸À¤µ¤ì¤¿¼ÂÂΤȤ·¤Æ¼¡¤Îɽ¤Ë¼¨¤¹5¤Ä¤Î¼ÂÂΤ¬¤¢¤ë¡£
¼ÂÂλ²¾È ¼ÂÂÎ ¼ÂÂΤÎÀâÌÀ
& & ¥¢¥ó¥Ñ¥µ¥ó¥É (ampersand)
< < ¾®¤Ê¤ê (less than)
> > Âç¤Ê¤ê (greater than)
' ' ¥¢¥Ý¥¹¥È¥í¥Õ¥£ (apostrophe)
" " ¥¯¥©¡¼¥Æ¡¼¥·¥ç¥ó¥Þ¡¼¥¯ (quotation mark)
¡ÖAT&T¡×¤Î̾Á°¤Ç¥¢¥ó¥Ñ¥µ¥ó¥É ¤òɽ¸½¤¹¤ë¤¿¤á¤Ë¡¢»öÁ°Àë¸À¤µ¤ì¤¿XML¤Î¼ÂÂΤò»È¤¦Îã¤ò¼¨¤¹¡£
<²ñ¼Ò̾¾Î>AT&T²ñ¼Ò̾¾Î>
»öÁ°Àë¸À¤µ¤ì¤¿¼ÂÂΰʳ°¤Î¼ÂÂΤòÀë¸À¤¹¤ëɬÍפ¬¤¢¤ë¾ì¹ç¡¢XMLʸ½ñ¤Î Document Type Definition ¡ÊDTD¡¢Ê¸½ñ·¿ÄêµÁ¡Ë ¤ÎÆâÉô¤ÇÀë¸À¤¹¤ë¡£
XMLʸ½ñ¤ÎÆâÉô¤ËÄêµÁ¤µ¤ì¤¿DTD¤ò»È¤Ã¤Æ¡¢ÃÖ´¹Ê¸»úÎó¤È¤·¤Æ¤Î¼ÂÂΤòÀë¸À¤·¤Æ¡¢¼ÂÂλ²¾È¤ò»È¤¦Îã¤ò¼¡¤Ë¼¨¤¹¡£
Àë¸À¤µ¤ì¤¿¼ÂÂΤϡ¢°ì¤Ä¤Îʸ»ú¤Ç¤¢¤Ã¤Æ¤âÎɤ¤¤·¡¢¥Æ¥¥¹¥È¤ÎÃÇÊҤǤ¢¤Ã¤Æ¤âÎɤ¤¤·¡¢Â¾¤Î¼ÂÂΤؤλ²¾È¤ò´Þ¤à¥Æ¥¥¹¥È¤Ç¤¢¤Ã¤Æ¤âÎɤ¤¡£
]>
<Îã>
©right-notice;
Îã>
XML¤Ë½àµò¤·¤¿¥Ö¥é¥¦¥¶ ¤ò»È¤¦¤È¡¢Àè¤ÎXMLʸ½ñ¤Ï¼¡¤Î¤è¤¦¤Ëɽ¼¨¤µ¤ì¤ë¡£
Copyright © 2007 Ê¿À®¿·Êó¼Ò
¥Õ¥¡¥¤¥ë¤Î¼ÂÂΤò»²¾È¤¹¤ëXMLʸ½ñ¤ÎÎã¤ò¼¨¤¹¡£
]>
<ʸ¾Ï>
<ʸ>À±¿·°ì¤ÏSFºî²È¤Ç¤¢¤ë¡£Ê¸>
<ʸ>¾®¾¾º¸µþ¤ÏSFºî²È¤Ç¤¢¤ë¡£Ê¸>
&tsutsui-yasutaka;
ʸ¾Ï>
¤Ê¤ª¡¢ÊÌ¥Õ¥¡¥¤¥ë another-file.xml ¤Ë¤Ï¼¡¤ÎÆâÍÆ¤¬µ¤µ¤ì¤Æ¤¤¤ë¤³¤È¤È¤¹¤ë¡£
<ʸ>Åû°æ¹¯Î´¤ÏSFºî²È¤Ç¤¢¤ë¡£Ê¸>
XML¤Ë½àµò¤·¤¿¥Ö¥é¥¦¥¶¤Ç¤³¤ÎXMLʸ½ñ¤òɽ¼¨¤¹¤ë¤È¡¢¼¡¤Î¤è¤¦¤Ë¤Ê¤ë¡£
À±¿·°ì¤ÏSFºî²È¤Ç¤¢¤ë¡£¾®¾¾º¸µþ¤ÏSFºî²È¤Ç¤¢¤ë¡£Åû°æ¹¯Î´¤ÏSFºî²È¤Ç¤¢¤ë¡£
ʸ»ú»²¾È
ʸ»ú»²¾È (character reference) ¤Ï¡¢Ê¸»ú¤òXMLʸ½ñÆâ¤Ç¥³¡¼¥ÉÈÖ¹æ¤ò»ØÄꤷ¤Æµ½Ò¤¹¤ëµË¡¤Ç¤¢¤ë¡£
ʸ»ú»²¾È¤Ï¡¢¼ÂÂλ²¾È¤È»÷¤Æ¤¤¤ë¤¬¡¢¼ÂÂλ²¾È¤Ç¤Ï̾Á°¤ò»È¤¦¤Î¤ËÂФ·¡¢Ê¸»ú»²¾È¤Ç¤Ï¤½¤ÎÉôʬ¤Ç»Ï¤á¤Ë "#" ʸ»ú¤òµ½Ò¤·Â³¤±¤Æ¿ô»ú¤òµ½Ò¤¹¤ë¡£
ʸ»ú»²¾È¤Ç»È¤¦¿ô»ú¤Ï¡¢
É乿²½Ê¸»ú½¸¹ç ¤Î¹ñºÝµ¬³Ê¤Ç¤¢¤ë
ISO/IEC 10646 (¤ª¤è¤Ó
Unicode ) ¤Î¥³¡¼¥ÉÈÖ¹æ¤Ç¤¢¤ë¡£
ʸ»ú»²¾È¤Ç»È¤¦¤³¤È¤¬¤Ç¤¤ë¿ô»ú¤Ï¡¢½½¿Ê¿ô¤Ç¤¢¤ë¤« "
x" ¤òÁ°¤Ë¤Ä¤±¤¿½½Ï»¿Ê¿ô¤Ç¤¢¤ë¡£
ʸ»ú»²¾È¤Ï¡¢¼ÂÂλ²¾È¤È¤Ï°Û¤Ê¤ê¡¢»öÁ°Àë¸À¤µ¤ì¤Æ¤¤¤ë¤ï¤±¤Ç¤â¤Ê¤¯¡¢XMLʸ½ñ¤ÎDTDÆâÉô¤ÇÀë¸À¤µ¤ì¤Æ¤¤¤ë¤ï¤±¤Ç¤â¤Ê¤¤¡£
ʸ»ú»²¾È¤Ï¡¢´Êñ¤Ë¤ÏÉ乿²½¤Ç¤¤Ê¤¤Ê¸»ú¤òɽ¸½¤¹¤ë¤¿¤á¤Ë»È¤ï¤ì¤ë¤³¤È¤¬Â¿¤¤¡£
Î㤨¤Ð¡¢
²¤½£ ¤Î¥³¥ó¥Ô¥å¡¼¥¿¾å¤ÇºîÀ®¤¹¤ëXMLʸ½ñ¤Ç
¥¢¥é¥Ó¥¢¸ì ¤Îʸ»ú¤ò»È¤¦¾ì¹ç¤Ê¤É¤Ç¤¢¤ë¡£
¡ÖAT&T¡×¤ÎÎã¤ÎÆâ¤Î¥¢¥ó¥Ñ¥µ¥ó¥É¤Ï¡¢¤³¤Î¾ì¹ç¤Ë»÷¤Æ¤¤¤ë¤È¤â¤¤¤¨¤ë¡£
½½¿Ê¿ô¤Î38¤È½½Ï»¿Ê¿ô¤Î26¤Ï¡¢¶¦¤Ë ISO/IEC 10646 ¤Î "&" ʸ»ú¤Î¥³¡¼¥ÉÈÖ¹æ¤Ç¤¢¤ë¡£
¤Ä¤Þ¤ê¡ÖAT&T¡×¤ÏXMLʸ½ñ¤Ç¤Ï¼¡¤Î¤è¤¦¤Ëµ½Ò¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¡£
<²ñ¼Ò̾¾Î>AT&T²ñ¼Ò̾¾Î>
<²ñ¼Ò̾¾Î>AT&T²ñ¼Ò̾¾Î>
½èÍýÌ¿Îá
½èÍýÌ¿Îá (processing instruction) ¤Ï¡¢XMLʸ½ñ¤Î¹½À®Í×ÁǤǤ¢¤ê¡¢XMLʸ½ñ¤ò°·¤¦¥½¥Õ¥È¥¦¥§¥¢ ¤ËÂФ¹¤ë²¿¤é¤«¤Î½èÍý¤ò¹Ô¤¦Ì¿Îá¤ò¡¢µ½Ò¤¹¤ë¤â¤Î¤Ç¤¢¤ë¡£
¼¡¤Ë½èÍýÌ¿Îá¤Î¹½Ê¸¤ò¼¨¤¹¡£
½èÍýÌ¿Î᥿¡¼¥²¥Ã¥È ½èÍýÆâÍÆ?>
½èÍýÌ¿Îá¤Ï ?> ¤Îʸ»úÎó¤ò½ü¤Ç¤°Õ¤Î½èÍýÆâÍÆ¤òµ½Ò¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¡£
½èÍýÌ¿Îá¤Ë¤Ï¡¢½èÍýÆâÍÆ¤È¤·¤Æµ¼»÷°À (pseudo attribute) ¤òµ½Ò¤¹¤ë¤³¤È¤¬¤¢¤ë¡£
µ¼»÷°À¤Ï¡¢µ½Ò¤Î¤·¤«¤¿¤¬Â°À̾¤È°ÀÃͤΥڥ¢¤Ë»÷¤Æ¤¤¤ë¡£
¤·¤«¤·XML¥×¥í¥»¥µ¤Ïµ¼»÷°À¤ò¡¢Â°À¤È¤·¤Æ²ò¼á¤»¤º¡¢½èÍýÌ¿Îá¤Î½èÍýÆâÍÆ¤È¤·¤Æ²ò¼á¤¹¤ë¡£
µ¼»÷°À¤ò»È¤Ã¤¿½èÍýÌ¿Îá¤ÎÎã¤ò¼¡¤Ë¼¨¤¹¡£
¤³¤ì¤ÏXMLʸ½ñ¤Ë¥«¥¹¥±¡¼¥Ç¥£¥ó¥°¥¹¥¿¥¤¥ë¥·¡¼¥È (CSS) ¤È´ØÏ¢¤Å¤±¤ë¤È¤¤¤¦½èÍýÌ¿Îá¤Ç¤¢¤ë¡£
¤¢¤ëXMLʸ½ñÆâ¤Ëµ½Ò¤µ¤ì¤¿ÆÃÄê¤Î½èÍýÌ¿Îá¤Ë¤Ä¤¤¤Æ¡¢¤½¤Î½èÍýÌ¿Îá¤Î°Õ¿Þ¤·¤¿¤È¤ª¤ê¤Î½èÍý¤ò¼Â¹Ô¤¹¤ë¤¿¤á¤Ë¤Ï¡¢¤½¤ÎXMLʸ½ñ¤ò½èÍý¤¹¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¥½¥Õ¥È¥¦¥§¥¢Â¦¤¬¤½¤Î½èÍýÌ¿Îá¤ËÂбþ¤¹¤ëɬÍפ¬¤¢¤ë¡£
CDATA¥»¥¯¥·¥ç¥ó
XMLʸ½ñ ¡Ê¤ª¤è¤ÓSGMLʸ½ñ¡Ë ¤Ë¤ª¤¤¤Æ
CDATA¥»¥¯¥·¥ç¥ó ¤È¤Ï¡¢Ê¸»úÎó¥Ç¡¼¥¿¤Î¤ß¤Ç¹½À®¤µ¤ì¤Æ¤ª¤ê¥Þ¡¼¥¯¥¢¥Ã¥×¤µ¤ì¤¿¥Ç¡¼¥¿¤Ï´Þ¤Þ¤ì¤Æ¤¤¤Ê¤¤¤È¡¢XML¥×¥í¥»¥µ¤¬²ò¼á¤¹¤ë¤è¤¦¥Þ¡¼¥¯¤µ¤ì¤¿¡¢Í×ÁÇ¤ÎÆâÍÆ¤ò¹½À®¤¹¤ëʸ»úÎó¥Ç¡¼¥¿¤Î°ìÉô¤Ç¤¢¤ë¡£
CDATA¥»¥¯¥·¥ç¥ó¤Ï¡¢Ê¸»úÎó¥Ç¡¼¥¿¤òɽ¸½¤¹¤ë¤¿¤á¤Îñ¤Ê¤ëÂåÂØ¹½Ê¸¤Ç¤¢¤ë¡£
CDATA¥»¥¯¥·¥ç¥ó¤È¤·¤ÆÀë¸À¤µ¤ì¤¿Ê¸»úÎó¥Ç¡¼¥¿¤È¡¢"<" ¤È "&" ¤ò "<" ¤È "&" ¤Çɽ¸½¤¹¤ëÄ̾ï¤Î¹½Ê¸¤Çµ½Ò¤·¤¿Ê¸»úÎó¥Ç¡¼¥¿¤È¤Î´Ö¤Ë¡¢°Ọ̃Ū¤Ê°ã¤¤¤Ï¤Ê¤¤¡£
CDATA¥»¥¯¥·¥ç¥ó¤Î¹½Ê¸¤È²ò¼á
CDATA¥»¥¯¥·¥ç¥ó¤Ï¼¡¤Îµ½Ò¤Ç»Ï¤Þ¤ë¡£
<![CDATA[
¤½¤·¤ÆCDATA¥»¥¯¥·¥ç¥ó¤ÎÆâÍÆ¤¬Â³¤¡¢¼¡¤Îµ½Ò¤¬ºÇ½é¤Ë½Ð¸½¤·¤¿¤È¤³¤í¤ÇCDATA¥»¥¯¥·¥ç¥ó¤Ï½ª¤ï¤ë¡£
]] >
CDATA¥»¥¯¥·¥ç¥ó¤ÎÆâÍÆ¤Îʸ»úÎó¤ÏÁ´¤ÆÊ¸»úÎó¥Ç¡¼¥¿¤È¤·¤Æ²ò¼á¤µ¤ì¡¢¥Þ¡¼¥¯¥¢¥Ã¥×¤ä¼ÂÂλ²¾È¤äʸ»ú»²¾È¤È¤·¤Æ²ò¼á¤µ¤ì¤ë¤³¤È¤Ï¤Ê¤¤¡£
¼¡¤ÎÎã¤Ç¡ÖÁ÷¿®¼Ô¡×¤Î³«»Ï¥¿¥°¤È½ªÎ»¥¿¥°¤Ï¥Þ¡¼¥¯¥¢¥Ã¥×¤È¤·¤Æ²ò¼á¤µ¤ì¤ë¡£
<Á÷¿®¼Ô>À±¿·°ì</Á÷¿®¼Ô>
¤·¤«¤·¼¡¤Î¤è¤¦¤Ëµ½Ò¤·¤¿¾ì¹ç¤Ï¡¢
<![CDATA[<Á÷¿®¼Ô>À±¿·°ì</Á÷¿®¼Ô>]] >
¼¡¤Î¤è¤¦¤Ëµ½Ò¤·¤¿¤â¤Î¤ÈƱÅù¤Ë²ò¼á¤µ¤ì¤ë¡£
<Á÷¿®¼Ô>À±¿·°ì</Á÷¿®¼Ô>
¤¹¤Ê¤ï¤Á¡¢¡ÖÁ÷¿®¼Ô¡×¥¿¥°¤Ï¡ÖÀ±¿·°ì¡×¤Îʸ»úÎó¤ÈƱÎó¤Ë°ÌÃ֤Ť±¤é¤ì¡¢¤¤¤º¤ì¤âʸ»úÎó¥Ç¡¼¥¿¤È¤·¤Æ²ò¼á¤µ¤ì¤ë¡£
ʸ»ú»²¾È
𠤬Í×ÁÇ¤ÎÆâÍÆ¤Ç½Ð¸½¤·¤¿¾ì¹ç¤Ï¡¢°ì¤Ä¤Î
Unicode ʸ»ú ("ð") ¤È¤·¤Æ²ò¼á¤µ¤ì¤ë¡£
¤·¤«¤·CDATA¥»¥¯¥·¥ç¥óÆâ¤Ç½Ð¸½¤·¤¿¾ì¹ç¤Ï¡¢8¤Ä¤Îʸ»ú¤«¤é¤Ê¤ëʸ»úÎó¤È¤·¤Æ²ò¼á¤µ¤ì¤ë¡£
¤¹¤Ê¤ï¤Á¡¢¥¢¥ó¥Ñ¥µ¥ó¥É¡¢#¥Þ¡¼¥¯¡¢Ê¸»úx¡¢¿ô»ú0¡¢¿ô»ú0¡¢Ê¸»úF¡¢¿ô»ú0¡¢¥»¥ß¥³¥í¥ó¤Î8¤Ä¤Îʸ»ú¤«¤é¤Ê¤ëʸ»úÎó¤È¤·¤Æ²ò¼á¤µ¤ì¤ë¡£
À°·Á¼°XMLʸ½ñ¤ò½ñ¤¯¤¿¤á¤Ë
À°·Á¼°XMLʸ½ñ¤Ï¡¢¤È¤ê¤ï¤±¡¢¼¡¤Ë¼¨¤¹µ¬Â§¤ËŬ¹ç¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£
¶õÍ×ÁǤǤϤʤ¤Í×ÁǤϳ«»Ï¥¿¥°¤È½ªÎ»¥¿¥°¤ÎξÊý¤Ë¤è¤Ã¤Æ¶³¦¤¬Äê¤á¤é¤ì¤ë¡£
¶õÍ×ÁǤ϶õÍ×ÁÇ¥¿¥° ¡Ê¼«Ê¬¼«¿È¤Ç³«»Ï¥¿¥°¤È½ªÎ»¥¿¥°¤Î2¤Ä¤Îµ¡Ç½¤ò·ó¤Í¤ë¥¿¥°¡Ë ¤Çµ½Ò¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¡£Î㤨¤Ð <»ä¤Ï¶õ¤Ç¤¹/> ¤Î¤è¤¦¤Ëµ½Ò¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¡£¤³¤ÎÎã¤Ï <»ä¤Ï¶õ¤Ç¤¹></»ä¤Ï¶õ¤Ç¤¹> ¤È°Ọ̃Ū¤ËƱÅù¤Ç¤¢¤ë¡£
°ÀÃͤÏÁ´¤Æ¥·¥ó¥°¥ë¥¯¥©¡¼¥È (') ¤«¥À¥Ö¥ë¥¯¥©¡¼¥È (") ¤Î¤¤¤º¤ì¤«¤Ç³ç¤ë¡£¥·¥ó¥°¥ë¥¯¥©¡¼¥È¤Ç»Ï¤á¤é¤ì¤¿Â°ÀÃͤϥ·¥ó¥°¥ë¥¯¥©¡¼¥È¤Ç½ª¤ï¤ê¡¢¥À¥Ö¥ë¥¯¥©¡¼¥È¤Ç»Ï¤á¤é¤ì¤¿Â°ÀÃͤϥÀ¥Ö¥ë¥¯¥©¡¼¥È¤Ç½ª¤ï¤ë¡£
¥¿¥°¤ÏÆþ¤ì»Ò¤Î¹½Â¤¤ò¤È¤ë¤³¤È¤¬¤Ç¤¤ë¡£¤¿¤À¤·¥¿¥°¤¬¥ª¡¼¥Ð¡¼¥é¥Ã¥×¤·¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£¥ë¡¼¥ÈÍ×ÁǤǤϤʤ¤Í×ÁǤΤª¤Î¤ª¤Î¤Ï¡¢É¬¤ºÊ̤ÎÍ×ÁǤ˴ޤޤì¤ë¡£
XMLʸ½ñ¤ÏÀë¸À¤µ¤ì¤¿Ê¸»úÉ乿²½Êý¼° ¡Êʸ»ú¥³¡¼¥É ¡Ë ¤Ë¤·¤¿¤¬¤Ã¤Æµ½Ò¤µ¤ì¤ë¡£Ê¸»úÉ乿²½Êý¼°¤Ï¡¢XMLʸ½ñ¤¬HTTP ¤ò²ð¤·¤ÆÅ¾Á÷¤µ¤ì¤ë¾ì¹ç¤Ë "Content-Type" ¥Ø¥Ã¥À¤ò¤Ä¤±¤ë¤è¤¦¤Ë°ÅÌÛŪ¤ËXMLʸ½ñ¤Î³°Éô¤Ç»ØÄꤷ¤Æ¤âÎɤ¤¤·¡¢XMLʸ½ñ¤ÎÆâÉô¤Çʸ½ñ¤ÎÀèÆ¬¤ÎXMLÀë¸ÀÆâ¤ÇÀë¸À¤·¤Æ¤âÎɤ¤¡£¤³¤Î¤è¤¦¤ÊÀë¸À¤¬¤Ê¤¤¾ì¹ç¡¢Unicode ¤Îʸ»úÉ乿²½Êý¼°¤¬»È¤ï¤ì¤Æ¤¤¤ë¤È²¾Äꤵ¤ì¤ë¡£XMLʸ½ñ¤ÎºÇ½é¤Î¥Ð¥¤¥È ¤ò¤ß¤Æ¡¢UTF-16 ¤Î¥Ð¥¤¥È¥ª¡¼¥À¡¼¥Þ¡¼¥¯¤È¹çÃפ¹¤ì¤ÐUTF-16¤Ç¤¢¤ë¤È²¾Äꤹ¤ë¡£¹çÃפ·¤Ê¤¤¾ì¹ç¤ÏUTF-8 ¤Ç¤¢¤ë¤È²¾Äꤹ¤ë¡£
Í×ÁǤÎ̾Á°¤Ç¤Ï¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È¤ÎÂçʸ»ú¤È¾®Ê¸»ú¤È¤¬¶èÊ̤µ¤ì¤ë¡£
Î㤨¤Ð¡¢¼¡¤ÎÎã¤ÏÀ°·Á¼°¤Ç¤¢¤ë¡£
<Abc> ...
</Abc>
¤·¤«¤·¼¡¤ÎÎã¤ÏÀ°·Á¼°¤Ç¤Ï¤Ê¤¤¡£
<ABC> ...
</abc>
XMLʸ½ñ¤Î¥¹¥¡¼¥Þ¤òÀ߷פ¹¤ëºÝ¤Ë¡¢XML¤ÎÍ×ÁǤÎ̾Á°¤òÃí°Õ¿¼¤¯ÁªÂò¤¹¤ë¤È¡¢¤½¤Î¥¹¥¡¼¥Þ¤Ë½àµò¤·¤¿XMLʸ½ñ¤Î¥Ç¡¼¥¿¤Î°ÕÌ£¤ò¡¢Âè»°¼Ô¤ËÅÁ¤¨¤ë¤¿¤á¤Ë͸ú¤Ç¤¢¤í¤¦¡£
XML¤ÎÍ×ÁǤÎ̾Á°¤òÃí°Õ¿¼¤¯ÁªÂò¤¹¤ë¤³¤È¤Ë¤è¤ê¡¢¤½¤Î¥¹¥¡¼¥Þ¤Ë½àµò¤·¤¿XMLʸ½ñ¤Ï¡¢¿Í´Ö¤Ë¤È¤Ã¤ÆÆÉ¤ß¤ä¤¹¤¤¤â¤Î¤È¤Ê¤ë¡£
XML¤ÎÍ×ÁǤȰÀ¤Î̾Á°¤ò¡¢ÂΤ¬Ì¾¤òɽ¤¹¤è¤¦¤ËÃí°Õ¿¼¤¯ÁªÂò¤¹¤ë¤³¤È¤Ç¡¢¿Í´Ö¤¬XMLʸ½ñ¤òÆÉ¤àºÝ¤Ë¡¢Í×ÁǤȰÀ¤Î°ÕÌ£¤ò¡¢³°Éô¤ÎÀâÌÀʸ½ñ¤ò»²¾È¤¹¤ë¤³¤È¤Ê¤¯¡¢¤è¤ê¤è¤¯Íý²ò¤Ç¤¤ë¤è¤¦¤Ë¤Ê¤ë¡£
¤¿¤À¤·¤³¤Î¤è¤¦¤Ë¤¹¤ë¤³¤È¤Ï¡¢XMLʸ½ñ¤Î¾éĹÀ¤¬Áý¤¨¤ë¤³¤È¤Ç¤â¤¢¤ë¡£
¿Í¤Ë¤è¤Ã¤Æ¤Ï¡¢XMLʸ½ñ¤ò½ñ¤¯ºÝ¤ÎÏ«ÎϤ¬Áý¤¨¤ë¤³¤È¤ò¡¢¹¥¤Þ¤Ê¤¤¾ì¹ç¤¬¤¢¤ë¡£
¤Þ¤¿¥Õ¥¡¥¤¥ë¥µ¥¤¥º¤âÂ礤¯¤Ê¤ë¤³¤È¤Ë¤Ê¤ë¡£
¤¿¤À¤·°µ½Ìµ»½Ñ ¤òXMLʸ½ñ¤ËŬÍѤ·¤Æ¥Õ¥¡¥¤¥ë¥µ¥¤¥º¤ò¾®¤µ¤¯¤¹¤ë¤³¤È¤Ï²Äǽ¤Ç¤¢¤ë¡£
À°·Á¼°XMLʸ½ñ¤òÀµ³Î¤Ë½ñ¤¯¤¿¤á¤Ë¤Ï¡¢¤³¤³¤Þ¤Ç½Ò¤Ù¤¿¤³¤È¤è¤ê¤º¤Ã¤È¿¤¯¤Îµ¬Â§¤Ë¤·¤¿¤¬¤¦É¬Íפ¬¤¢¤ë¡£
Î㤨¤Ð¡¢
XML̾Á°¶õ´Ö ¤ò»È¤¦¤³¤È¤ä¡¢XML¤Ç¤Î¡Ö̾Á°¡×¤È¤·¤Æ»È¤¦¤³¤È¤¬¤Ç¤¤ëÀµ³Î¤Êʸ»ú½¸¹ç¤ò»È¤Ã¤Æ¡¢XMLʸ½ñ¤ò½ñ¤¯¤³¤È¤Ê¤É¤Ç¤¢¤ë¡£
¤È¤Ï¤¤¤¨¡¢¤³¤³¤Þ¤Ç½Ò¤Ù¤¿À°·Á¼°Ê¸½ñ¤Ë´Ø¤¹¤ë³µÎ¬¤òÍý²ò¤·¤Æ¤ª¤±¤Ð¡¢Â¿¤¯¤ÎXMLʸ½ñ¤òÆÉ¤ßÍý²ò¤·¤¢¤ë¤¤¤Ï¿¤¯¤ÎXMLʸ½ñ¤ò½ñ¤¯¤¿¤á¤ËɬÍפʴðÁäϡ¢¿È¤Ë¤Ä¤¤¤¿¤È¤¤¤¨¤ë¡£
¼«Æ°Åª¤Ë¸¡ºº¤¹¤ë
XMLʸ½ñ¤ÎÀµÅöÀ¤ò¼«Æ°Åª¤Ë¸¡ºº¤¹¤ë¤¿¤á¤ÎÊýË¡¤òÀâÌÀ¤¹¤ë¡£
¤¢¤ëXMLʸ½ñ¤¬¡¢À°·Á¼°XMLʸ½ñ¤È¤·¤Æ¤Î¾ò·ï¤Î¤ß¤òËþ¤¿¤·¤¿Ê¸½ñ¤Ç¤¢¤ë¤«¡¢¤½¤ì¤È¤âÂÅÅö¤ÊXMLʸ½ñ¤È¤·¤Æ¤Î¾ò·ï¤ò¤âËþ¤¿¤·¤¿Ê¸½ñ¤Ç¤¢¤ë¤«¤ò¡¢È½Ê̤¹¤ë¤³¤È¤Ï¡¢Èæ³ÓÅªÍÆ°×¤Ç¤¢¤ë¡£
¤È¤¤¤¦¤Î¤â¡¢À°·Á¼°XMLʸ½ñ¤Ç¤¢¤ë¤¿¤á¤Îµ¬Â§¤È¡¢XML¤ÎÂÅÅöÀ¸¡¾Ú¤Î¤·¤¯¤ß¤Ë¤Ä¤¤¤Æ¤Ï¡¢XMLʸ½ñ¤ò°·¤¦¥Ä¡¼¥ë¤Î
°Ü¿¢À ¤ò¹Íθ¤·¤ÆÀ߷פµ¤ì¤Æ¤¤¤ë¤«¤é¤Ç¤¢¤ë¡£
¤³¤ÎÀß·×Êý¿Ë¤Ï¡¢XMLʸ½ñ¤ò°·¤¦¥Ä¡¼¥ë¤Ç¤¢¤ì¤Ð¡¢¤É¤Î¤è¤¦¤ÊXMLʸ½ñ¤Ç¤â°·¤¦¤³¤È¤¬¤Ç¤¤ë¤È¤¤¤¦¤³¤È¤Ç¤¢¤ë¡£
ÆÈΩ¤·¤¿¥Ä¡¼¥ë¤ò»È¤¤¡¢XMLʸ½ñ¤ÎÀµÅöÀ¤ò¼«Æ°Åª¤Ë¸¡ºº¤¹¤ëÎã¤ò¼¨¤¹¡£
irb> require "rexml/document"
irb> include REXML
irb> doc = Document.new(File.new("test.xml")).root
XMLʸ½ñ¤ÎÏÀÍýŪ¹½Â¤¤ÈÂÅÅö¤ÊXMLʸ½ñ
ÂÅÅö¤ÊXMLʸ½ñ¤Ë¤Ä¤¤¤Æ¾Ü¤·¤¯ÀâÌÀ¤¹¤ë¡£
XML¤Ç¤Ï¡¢Í×ÁǤË̾Á°¤òÉÕ¤±¤ë¤³¤È¤¬¤Ç¤¡¢³¬Áع½Â¤¤ò¤È¤ë¤³¤È¤¬¤Ç¤¡¢
¥¹¥¡¼¥Þ¸À¸ì (
Document Type Definition ¤Ê¤É) ¤Ë¤è¤êÍÑÅӤ˱褦¤è¤¦¤ËÄêµÁ¤µ¤ì¤¿¥¹¥¡¼¥Þ¤ò»È¤¦¤³¤È¤ÇÍ×ÁǤȰÀ¤Î°ÕÌ£¤ò¸ø³«¤·ÀâÌÀ¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¡£
XML¤Î¤³¤¦¤·¤¿ÆÃħ¤Ë¤è¤ê¡¢ÌÜŪ¤Ë±þ¤¸¤¿XML¤Ë½àµò¤·¤¿¥Þ¡¼¥¯¥¢¥Ã¥×¸À¸ì ¤òÁϤ뤿¤á¤Î¡¢¹½Ê¸Åª¤Ê´ðÁä¬À®¤êΩ¤Ã¤Æ¤¤¤ë¡£
¥¹¥¡¼¥Þ¤Ï¡¢À©Ìó¤Î½¸¹ç¤òµ½Ò¤¹¤ë¤³¤È¤Ë¤è¤ê¡¢XMLʸ½ñ¤Î¹½Ê¸¾å¤Îµ¬Â§¤òñ¤ËÊ䤹¤ë¤Î¤ß¤Ç¤¢¤ë¡£
¥¹¥¡¼¥Þ¤Ï¡¢Â¿¤¯¤Î¾ì¹ç¡¢Í×ÁǤȰÀ¤Î̾Á°¤ò¸ÂÄꤷ¡¢³ÆÍ×ÁǤ¬ÆâÍÆ¤È¤¹¤ë¤â¤Î¤Î³¬Áع½Â¤¤òµ¬Äꤷ¡¢Â°À¤ÎÆâÍÆ¤òµ¬Äꤹ¤ë¡£
Î㤨¤Ð¡¢¡ÖÃÂÀ¸Æü¡×¤È¤¤¤¦Ì¾Á°¤ÎÍ×ÁǤǤϡ¢¡Ö·î¡×¤È¤¤¤¦Ì¾Á°¤Î°ì¤Ä¤ÎÍ×ÁÇ¤È¡ÖÆü¡×¤È¤¤¤¦Ì¾Á°¤Î°ì¤Ä¤ÎÍ×ÁǤò¤â¤Ä¤³¤È¤¬¤Ç¤¡¢¡Ö·î¡×Í×ÁÇ¤È¡ÖÆü¡×Í×ÁǤΤ½¤ì¤¾¤ì¤Ïʸ»úÎó¥Ç¡¼¥¿¤Î¤ß¤ò¤â¤Ä¤³¤È¤¬¤Ç¤¤ë¡£
¥¹¥¡¼¥Þ¤ËÄêµÁ¤µ¤ì¤¿À©Ìó¤Ë¤Ï¡¢
¥Ç¡¼¥¿·¿ ¤Î³ä¤êÅö¤Æ¤ò´Þ¤à¤³¤È¤¬¤Ç¤¤ë¾ì¹ç¤¬¤¢¤ë¡£
¥Ç¡¼¥¿·¿¤ò³ä¤êÅö¤Æ¤ë¤³¤È¤Ë¤è¤ê¡¢¥Ç¡¼¥¿·¿¤¬³ä¤êÅö¤Æ¤é¤ì¤¿¾ðÊ󤬤ɤΤ褦¤Ë½èÍý¤Ç¤¤ë¤«¤ò¡¢µ¬Äꤹ¤ë¤³¤È¤¬¤Ç¤¤ë¡£
Î㤨¤Ð¡¢¡Ö·î¡×Í×ÁǤÎʸ»úÎó¥Ç¡¼¥¿¤Ï¡¢¤½¤ÎXMLʸ½ñ¤ÇºÎÍѤ·¤¿¥¹¥¡¼¥Þ¸À¸ì¤Îµ¡Ç½¤Ë½àµò¤·¤Æ¡¢¡Ö1¡×¤«¤é¡Ö12¡×¤Þ¤Ç¤Î¿ô»ú¤Î¤ß¤¬ÂÅÅö¤Ç¤¢¤ë¤È¤¤¤¦·Á¤Ç¡¢ÄêµÁ¤¹¤ë¤³¤È¤¬¤Ç¤¤ë²ÄǽÀ¤¬¤¢¤ë¡£
¤³¤³¤Ç¥¹¥¡¼¥Þ¸À¸ì¤Î (¥Ç¡¼¥¿·¿¤Ë´Ø¤¹¤ë) µ¡Ç½¤È¤Ï¡¢¤ª¤½¤é¤¯ÆÃÄê¤ÎÊýË¡¤Ç·Á¼°¤Ë¤·¤¿¤¬¤Ã¤Æµ½Ò¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¤È¤¤¤¦¤³¤È¤À¤±¤Ç¤Ê¤¯¡¢Ê̤Υǡ¼¥¿·¿¤ÎÃͤǤ¢¤ë¤«¤Î¤è¤¦¤Ë½èÍý¤µ¤ì¤ë¤³¤È¤ò̤Á³¤ËËɤ°¤³¤È¤ò¡¢°ÕÌ£¤¹¤ë¡£
²¿¤é¤«¤Î¥¹¥¡¼¥Þ¤Ë½àµò¤·¤¿XMLʸ½ñ¤Ï¡¢À°·Á¼°¤Ç¤¢¤ë¤È¤¤¤¦¤³¤È¤Ë²Ã¤¨¤Æ¡¢ÂÅÅö (valid) ¤Ç¤¢¤ë¤È¤¤¤¦¤³¤È¤¬¤Ç¤¤ë¡£
XML¤Î¥¹¥¡¼¥Þ¤Ï¡¢XML¤Îʸ½ñ·¿ (ʸ½ñ¤Î¼ïÎࡢʸ½ñ¤ÎÏÀÍýŪ¹½Â¤) ¤òµ½Ò¤·¤¿¤â¤Î¤Ç¤¢¤ë¡£
¿¤¯¤Î¾ì¹ç¥¹¥¡¼¥Þ¤Ï¡¢¤½¤Îʸ½ñ¤Î¹½Â¤¤ÈÆâÍÆ¤Ë´Ø¤¹¤ëÀ©Ìó¤È¤¤¤¦·Á¤Çɽ¸½¤µ¤ì¤ë¡£
XML¤Î¥¹¥¡¼¥Þ¤Ï¡¢XML»ÅÍͤǵ¬Äꤵ¤ì¤Æ¤¤¤ë¡¢À°·Á¼°XMLʸ½ñ¤È¤·¤Æ¤Î´ðËÜŪ¤ÊÀ©Ìó¤Ë²Ã¤¨¡¢¤½¤ì°Ê¾å¤ÎÀ©Ìó¤òXMLʸ½ñ¤Ë²Ý¤¹¤³¤È¤¬¤Ç¤¤ë¡£
XML¤Î¥¹¥¡¼¥Þ¸À¸ì¤Ï¡¢É¸½àµ¬³Ê¤Î¤â¤Î¤â¥×¥í¥×¥é¥¤¥¨¥¿¥ê¤Ê¤â¤Î¤â´Þ¤á¤Æ¡¢¤³¤¦¤·¤¿¥¹¥¡¼¥Þ¤òɽ¸½¤¹¤ë¤È¤¤¤¦ÌÜŪ¤Î¤â¤È¡¢¿ô¿¤¯Â¸ºß¤·¤Æ¤¤¤ë¡£
¤¤¤¯¤Ä¤«¤Î¥¹¥¡¼¥Þ¸À¸ì¤Ç¤Ï¡¢¥¹¥¡¼¥Þ¼«¿È¤òXMLʸ½ñ¤È¤·¤Æµ½Ò¤¹¤ë¡£
¥¹¥¡¼¥Þ¸À¸ì¤Îµ½ÒǽÎϤϥ¹¥¡¼¥Þ¸À¸ì¤´¤È¤Ë¤µ¤Þ¤¶¤Þ¤Ç¤¢¤ë¡£
Î㤨¤Ð¥¹¥¡¼¥Þ¸À¸ì¤Î°ì¤Ä¤Ç¤¢¤ë Document Type Definition (DTD) ¤Ç¤Ï¡¢XMLʸ½ñ¤¬¤È¤ë¤Ù¤¹½Â¤¤Î¼ç¤Êµ¬Â§¤È¤·¤Æ¡¢¤½¤ÎDTD¤Ë½àµò¤·¤¿XMLʸ½ñ¤Ç»È¤¦¤³¤È¤¬¤Ç¤¤ëÍ×ÁǤÎ̾Á°¡¢Í×ÁÇ¤ÎÆâÍÆ¥â¥Ç¥ë¡¢Í×ÁǤǻØÄê¤Ç¤¤ë°À¤Î̾Á°¡¢Â°À¤ÎÃͤΥǡ¼¥¿·¿¤ò¡¢µ½Ò¤¹¤ë¤³¤È¤¬¤Ç¤¤ë[³ô¼°²ñ¼ÒÆüËÜ¥æ¥Ë¥Æ¥Ã¥¯¡¢Ã滳´´ÉÒ¡¢±ü°æ¹¯¹°¡¢2001ǯ¡¢pp.28-29]¡£
¤Ê¤ª¡¢Í×ÁÇ¤ÎÆâÍÆ¥â¥Ç¥ë ¤È¤Ï¡¢Í×ÁÇ¤ÎÆâÍÆ¤Ë½Ð¸½²Äǽ¤ÊÍ×ÁǤä¥Ç¡¼¥¿¤È¤½¤Î½çÈÖ¡¢¤ª¤è¤ÓÍ×ÁǤνи½²ó¿ô¤òµ¬Äꤷ¤¿¤â¤Î¤Î¤³¤È¤ò¤¤¤¦[³ô¼°²ñ¼ÒÆüËÜ¥æ¥Ë¥Æ¥Ã¥¯¡¢Ã滳´´ÉÒ¡¢±ü°æ¹¯¹°¡¢2001ǯ¡¢p.29]¡£
Standard Generalized Markup Language (SGML) ¤äXML¤Ê¤É¤ÎÈÆÍÑŪ¤Ê¥Ç¡¼¥¿µ½Ò¸À¸ì¤¬À¤¤Ë½Ð¤ëÁ°¤Ï¡¢¥½¥Õ¥È¥¦¥§¥¢À߷׼Ԥϡ¢Ê£¿ô¤Î
¥×¥í¥°¥é¥à ¤Î´Ö¤Ç¥Ç¡¼¥¿¤Î¼õ¤±ÅϤ·¤ò¤¹¤ë¤¿¤á¤Ë¡¢¼«Ê¬¼«¿È¤Ç
¥Õ¥¡¥¤¥ë¥Õ¥©¡¼¥Þ¥Ã¥È ¤òÄêµÁ¤¹¤ë¤«¡¢¤Á¤ç¤Ã¤È¤·¤¿
¥³¥ó¥Ô¥å¡¼¥¿¸À¸ì ¤òÄêµÁ¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤«¤Ã¤¿¡£
¤³¤Î¤¿¤á¼õ¤±ÅϤ·¤¹¤ë¥Ç¡¼¥¿¤Î¾ÜºÙ¤Ê»ÅÍͤ䤽¤Î¾¤Îʸ½ñ¤ò½ñ¤«¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤«¤Ã¤¿¤·¡¢Ê¸½ñ¤Î½ñ¤¼ê¤òÊÌÅӤ˳ÎÊݤ·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¤³¤È¤â¤¢¤Ã¤¿¡£
XML¤¬°ìÄê¤Î¹½Â¤¤ò¤â¤Á¸·Ì©¤Ê¹½Ê¸²òÀϤε¬Â§¤ò¤â¤Ä¤³¤È¤Ç¡¢¥½¥Õ¥È¥¦¥§¥¢À߷׼ԤϹ½Ê¸²òÀϤòɸ½àŪ¤Ê
¥½¥Õ¥È¥¦¥§¥¢ ¥Ä¡¼¥ë (ÂÅÅöÀ¸¡¾Ú´ï¡¢¥Ð¥ê¥Ç¡¼¥¿) ¤ËǤ¤»¤ë¤³¤È¤¬¤Ç¤¤ë¡£
¤½¤·¤ÆXML¤Ë¤Ï¡¢ÍÑÅÓ¤ËÆÃͤθÀ¸ì¤ò³«È¯¤¹¤ë¤¿¤á¤Î°ìÈÌŪ¤Ê¡¢
¥Ç¡¼¥¿¥â¥Ç¥ë »Ø¸þ¤ÎÏÈÁȤߤ¬¤¢¤ë¡£
¤³¤Î¤¿¤á¥½¥Õ¥È¥¦¥§¥¢³«È¯¼Ô¤Ï¡¢Èæ³ÓŪ¹â¿å½à¤ÎÃê¾ÝÅ٤ˤª¤¤¤Æ¡¢¼«Ê¬¤¿¤Á¤¬°·¤¦¥Ç¡¼¥¿¤Îµ¬Â§¤Î³«È¯¤ËÀìǰ¤¹¤ë¤À¤±¤Ç¤è¤¤¡£
XMLʸ½ñ¤ò¥¹¥¡¼¥Þ¤Ë¾È¤é¤·¤ÆÂÅÅöÀ¸¡¾Ú¤ò¹Ô¤¦¤¿¤á¤Î¡¢½½Ê¬¤Ë¥Æ¥¹¥È¤µ¤ì¤¿¥Ä¡¼¥ë¤¬¡¢¿ô¿¤¯Â¸ºß¤·¤Æ¤¤¤ë¡£
XMLʸ½ñ¤ò¥¹¥¡¼¥Þ¤Ë¾È¤é¤·¤ÆÂÅÅöÀ¸¡¾Ú¤ò¹Ô¤¦¤¿¤á¤Î¥Ä¡¼¥ë¤ò¡¢ÂÅÅöÀ¸¡¾Ú´ï (¥Ð¥ê¥Ç¡¼¥¿) ¤È¤¤¤¦¡£
ÂÅÅöÀ¸¡¾Ú´ï¤Ï¡¢¥¹¥¡¼¥Þ¤Ëɽ¸½¤µ¤ì¤¿À©Ìó¤ËXMLʸ½ñ¤¬½àµò¤·¤Æ¤¤¤ë¤«¤Ë¤Ä¤¤¤Æ¡¢¼«Æ°Åª¤ËÂÅÅöÀ¸¡¾Ú¤ò¹Ô¤¦¡£
ÂÅÅöÀ¸¡¾Ú´ï¤Ï¡¢XML¥×¥í¥»¥µ (XML¥Ñ¡¼¥µ) ¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ë¤³¤È¤â¤¢¤ì¤Ð¡¢XML¥×¥í¥»¥µ¤È¤ÏÊ̤ËÄ󶡤µ¤ì¤Æ¤¤¤ë¤³¤È¤â¤¢¤ë¡£
¤³¤ì¤Þ¤Ç¤Ë½Ò¤Ù¤¿¥¹¥¡¼¥Þ¤Î»È¤¤Êý¤È¤ÏÊ̤λȤ¤Êý¤â¸ºß¤¹¤ë¡£
Î㤨¤Ð¡¢XML¥¨¥Ç¥£¥¿¤Ï¡¢XMLʸ½ñ¤ÎÊÔ½¸¤ò»Ù±ç¤¹¤ë¤¿¤á¤Ë¥¹¥¡¼¥Þ¤ò»È¤¦¤³¤È¤¬¤Ç¤¤ë¡£
¤³¤¦¤·¤¿XML¥¨¥Ç¥£¥¿¤Ç¤Ï¡¢ÂÅÅö¤ÊÍ×ÁÇ̾¤äÂÅÅö¤Ê°À̾¤òÄ󼨤¹¤ë¤³¤È¤Ê¤É¤¬¤Ç¤¤ë¡£
Document Type Definition (DTD)
XML¤Î¤¿¤á¤ÎºÇ¤âÎò»Ë¤Î¸Å¤¤¥¹¥¡¼¥Þ¸À¸ì¤Ï
Document Type Definition (DTD¡¢Ê¸½ñ·¿ÄêµÁ) ¤Ç¤¢¤ë¡£
DTD¤Ï¡¢XML¤ÎÁ°¿È¤Ç¤¢¤ë
SGML ¤«¤é°ú¤·Ñ¤¬¤ì¤¿¡£
DTD¤Ï XML 1.0 ɸ½à¤Ë´Þ¤á¤é¤ì¤Æ¤¤¤ë¤¿¤á¡¢¤Û¤È¤ó¤É¤¢¤é¤æ¤ëXML¥×¥í¥»¥µ¤¬DTD¤ò°·¤¦¤³¤È¤¬¤Ç¤¤ë¡£
¤·¤«¤·2007ǯ¸½ºß¤Ç¤ÏDTD¤ò»È¤¦¤³¤È¤Ï¸ÂÄêŪ¤ÊÈϰϤˤȤɤޤäƤ¤¤ë¤è¤¦¤Ç¤¢¤ë¡£
¤½¤ÎÍýͳ¤Ï¼¡¤Î¤È¤ª¤ê¤Ç¤¢¤ë¡£
DTD¤Ç¤ÏXML¤Ç¿·¤·¤¯³«È¯¤µ¤ì¤¿µ¡Ç½¤ò»È¤¦¤³¤È¤¬¤Ç¤¤Ê¤¤¡£ÆÃ¤ËXML̾Á°¶õ´Ö ¤ò°·¤¨¤Ê¤¤¤³¤È¤¬¸·¤·¤¤¡£
DTD¤Ï¡¢É½¸½ÎϤ¬Ë³¤·¤¤¡£DTD¤Ç¤Ï¡¢¤¤¤¯¤Ä¤«¤Î·Á¼°Åª¤Ê»ëÅÀ¤«¤éXMLʸ½ñ¤ò°·¤¦¤³¤È¤¬¡¢¤Ç¤¤Ê¤¤¡£
DTD¤Ë¤è¤ë¥¹¥¡¼¥Þ¤ÏXML¤Ç¤Ï¤Ê¤¤ÆÈ¼«¤Î¹½Ê¸¤Çµ½Ò¤¹¤ë¡£¤³¤Î¹½Ê¸¤Ï¡¢XML¤ÎÁ°¿È¤Ç¤¢¤ëSGML¤«¤é°ú¤·Ñ¤¤¤Ç¤¤¤ë¤È¤¤¤¦¡¢·Ð°Þ¤¬¤¢¤ë¡£XML 1.0 ¤ÎÀ©ÄêÅö»þ¤ÏDTD°Ê³°¤Î¥¹¥¡¼¥Þ¸À¸ì¤Ï¸ºß¤·¤Ê¤«¤Ã¤¿¡£
DTD¤Ï¡¢¸½ºß¤â¿¤¯¤ÎÍÑÅӤǻȤï¤ì¤Æ¤¤¤ë¡£
¤½¤ÎÍýͳ¤Ï¡¢°ìÄê¤Î¿Í¡¹¤Ë¤È¤Ã¤Æ¤Ï¡¢DTD¤Ï¾¤Î¿·¤·¤¤¥¹¥¡¼¥Þ¸À¸ì¤è¤ê¤âÆÉ¤ß¤ä¤¹¤¯½ñ¤¤ä¤¹¤¤¤È¡¢¹Í¤¨¤é¤ì¤Æ¤¤¤ë¤«¤é¤Ç¤¢¤ë¡£
XML Schema
XML Schema ¤Ï¡¢
World Wide Web Consortium (W3C) ¤Ë¤è¤ê³«È¯¤µ¤ì¤¿¡¢DTD¤Î¸å·Ñ¤È¤Ê¤ë¿·¤·¤¤¥¹¥¡¼¥Þ¸À¸ì¤Ç¤¢¤ë¡£
Èó¸ø¼°¤Ë¤Ï¡¢XSD¤È¸Æ¤Ð¤ì¤ë¤³¤È¤â¤¢¤ë¡£
XSD¤Ï¡¢XML Schema ¤Î¥¤¥ó¥¹¥¿¥ó¥¹ (¥¹¥¡¼¥Þ) ¤ò°ÕÌ£¤¹¤ë "XML Schema Definition" ¤ÎƬ»ú¸ì ¤Ç¤¢¤ë¡£
XML Schema ¤Ï¡¢XML¤Ë¤è¤ë¥Þ¡¼¥¯¥¢¥Ã¥×¸À¸ì¤Î¥¹¥¡¼¥Þ¤Îµ½ÒǽÎϤˤª¤¤¤Æ¡¢DTD¤ÈÈæ¤Ù¤ÆÈó¾ï¤Ë¶¯ÎϤǤ¢¤ë¡£
XML Schema ¤Ï¡¢ËÉÙ¤Ê
¥Ç¡¼¥¿·¿ ¤ò°·¤¦¤³¤È¤¬¤Ç¤¤ë¥¹¥¡¼¥Þ¸À¸ì¤Ç¤¢¤ë¡£
XMLʸ½ñ¤ÎÏÀÍýŪ¹½Â¤¤Ë¤Ä¤¤¤Æ¡¢DTD¤è¤ê¾ÜºÙ¤ÊÀ©Ìó¤òµ½Ò¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¡£
¤½¤·¤ÆDTD¤è¤ê¾ÜºÙ¤ÊÂÅÅöÀ¸¡¾Ú¤ÎÏÈÁȤߤΤâ¤È¤Ç¡¢ÂÅÅöÀ¸¡¾Ú¤¬¹Ô¤ï¤ì¤ë¡£
XML Schema ¤Ï¤Þ¤¿¡¢XML Schema ¤Ë¤è¤ë¥¹¥¡¼¥Þ¼«ÂΤò¡¢XML¤Ë½àµò¤·¤¿·Á¼°¤ò»È¤Ã¤Æµ½Ò¤¹¤ë¡£
XML Schema ¤Î¥¹¥¡¼¥Þ¼«ÂΤ¬XML¤Ë½àµò¤¹¤ë¤³¤È¤Ç¡¢¥¹¥¡¼¥Þ¤òÊÔ½¸¤·¤¿¤ê¥¹¥¡¼¥Þ¤Ë²¿¤é¤«¤Î½èÍý¤ò¹Ô¤¦¤¿¤á¤Ë¡¢ÉáÄ̤ÎXML¥Ä¡¼¥ë¤ò»È¤¦¤³¤È¤¬¤Ç¤¤ë¤è¤¦¤Ë¤Ê¤ë¡£
¤¿¤À¤·¡¢XML Schema ¤ÎÂÅÅöÀ¸¡¾Ú´ï¤ò¼ÂÁõ¤¹¤ëºî¶È¤Ë¤Ï¡¢Ã±¤ËXMLʸ½ñ¤òÆÉ¤à¤³¤È¤¬¤Ç¤¤ëǽÎϤè¤ê¤â¡¢Èó¾ï¤Ë¿¤¯¤ÎÃ챤ÈǽÎϤòɬÍפȤ¹¤ë¡£
XML Schema ¤ËÂФ·¤Æ¤Ï»¿ÈÝξÏÀ¤¬¤¢¤ë¡£
XML Schema ¤ËÂФ¹¤ëÈãȽ¤Î°ìÉô¤ò¼¨¤¹¡£
XML Schema ¤Î»ÅÍͤÏÈó¾ï¤ËËÄÂç¤ÊʬÎ̤¬¤¢¤ë¡£¤½¤Î¤¿¤á XML Schema ¤òÍý²ò¤¹¤ë¤³¤È¤ÏÆñ¤·¤¤¡£¤Þ¤¿¤½¤Î¤¿¤á XML Schema ¤ÎÂÅÅöÀ¸¡¾Ú´ï¤ò¼ÂÁõ¤¹¤ë¤³¤È¤âÆñ¤·¤¤¡£
XML Schema ¤Ç¥¹¥¡¼¥Þ¤òµ½Ò¤¹¤ëºÝ¡¢XML¤Ë½àµò¤·¤¿¹½Ê¸¤Çµ½Ò¤¹¤ë (µ½Ò¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤) ¤Î¤Ï¡¢¾éŤǤ¢¤ë¡£¤³¤Î¤³¤È¤¬ XML Schema ¤Î¥¹¥¡¼¥Þ¤òÍý²ò¤¹¤ë¤³¤È¤ä¥¹¥¡¼¥Þ¤òµ½Ò¤¹¤ë¤³¤È¤ò¡¢DTD¤è¤ê¤·¤ó¤É¤¤ºî¶È¤Ë¤·¤Æ¤·¤Þ¤Ã¤Æ¤¤¤ë¡£
XMLʸ½ñ¤Î¹½Ê¸²òÀϤò¤·¤¿¸å¤Ë¹Ô¤¦¡¢XML Schema ¤Î¥¹¥¡¼¥Þ¤Ë¤è¤ëÂÅÅöÀ¸¡¾Ú¤Ï¡¢ÈñÍѤ¬¹â¤¯¤Ä¤¯²ÄǽÀ¤¬¤¢¤ë¡£ÆÃ¤Ë¥µ¥¤¥º¤ÎÂ礤¤XMLʸ½ñ¤ÎÂÅÅöÀ¸¡¾Ú¤ò¹Ô¤¦ºÝ¤Ë¤Ï¡¢¿¼¹ï¤ÊÌäÂê¤Ë¤Ê¤ë²ÄǽÀ¤¬¤¢¤ë¡£
XML Schema ¤Î¥Ç¡¼¥¿¥â¥Ç¥ê¥ó¥° ǽÎϤÏÈó¾ï¤Ë¸Â¤é¤ì¤Æ¤¤¤ë¡£Â°À¤ÎÆâÍÆ¤Ë¤è¤Ã¤Æ¤½¤ÎÍ×ÁÇ¤ÎÆâÍÆ¥â¥Ç¥ë¤òÊѹ¹¤¹¤ë¤³¤È¤Ï¤Ç¤¤Ê¤¤¡£
XML Schema ¤Ë¤ª¤±¤ë·¿ÇÉÀ¸¥â¥Ç¥ë¤Ï¡¢Èó¾ï¤Ë¸Â¤é¤ì¤¿Ç½ÎϤ·¤«¤Ê¤¤¡£ÆÃ¤Ë³ÈÄ¥¤Ë¤è¤ëÇÉÀ¸¤Ï¡¢¤«¤Ê¤ê»È¤¤¤Ë¤¯¤¤¡£
¥Ç¡¼¥¿¥Ù¡¼¥¹ ¤ÈÏ¢·È¤¹¤ë¤¿¤á¤Î¥Ç¡¼¥¿Å¾Á÷µ¡Ç½¤Ï¡¢ÉԲIJò¤Ê¹Í¤¨Êý¤Ë¤è¤Ã¤Æ¼Â¸½¤µ¤ì¤Æ¤¤¤ë¡£nillability (SQL ¥Ç¡¼¥¿¥Ù¡¼¥¹ÍѸì¤Ç¤¤¤¦NULL ¤ËÁêÅö¤¹¤ë¾õÂÖ¤ò¤È¤ë¤³¤È¤¬²Äǽ¤Ç¤¢¤ë¤È¤¤¤¦ÆÃÀ) ¤ÏÈ÷¤¨¤Æ¤¤¤ë¤¬¡¢½ÐÈǶȳ¦¤ÎÍ×·ï¤ÏËþ¤¿¤·¤Æ¤¤¤Ê¤¤¡£
key/keyref/uniqueness ¤Îµ¡¹½¤Ï¡¢¥Ç¡¼¥¿·¿¤ò¹Íθ¤·¤Æ¤¤¤Ê¤¤¡£
¥¹¥¡¼¥Þ¸¡¾Ú¸å¥¤¥ó¥Õ¥©¥á¡¼¥·¥ç¥ó¥»¥Ã¥È (PSVI¡¢Post Schema Validation Infoset) ¤Î³µÇ°¤Ï¡¢É¸½à¤ÎXMLɽ¸½¤ä¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¥×¥í¥°¥é¥ß¥ó¥°¥¤¥ó¥¿¥Õ¥§¡¼¥¹ (API) ¤ò¤â¤¿¤Ê¤¤¡£¤³¤Î¤¿¤á¡¢ÂÅÅöÀ¤ÎºÆ¸¡¾Ú¤ò¹Ô¤ï¤Ê¤¤¾ì¹ç¡¢¥Ù¥ó¥ÀÈó°Í¸¤Î¹Í¤¨Êý¤ËÈ¿¤¹¤ë (#¥¤¥ó¥Õ¥©¥á¡¼¥·¥ç¥ó¥»¥Ã¥È¤Ø¤ÎÄɲþðÊó ¤ò»²¾È) ¡£
RELAX NG
RELAX NG ¤Ï¡¢¿Íµ¤¤Î¤¢¤ë¤â¤¦°ì¤Ä¤Î¿·¤·¤¤¥¹¥¡¼¥Þ¸À¸ì¤Ç¤¢¤ë¡£
ºÇ½é¤Ë
OASIS (¹½Â¤²½¾ðÊóɸ½àÂ¥¿Ê¶¨²ñ) ¤Ç»ÅÍͤ¬ºöÄꤵ¤ì¤¿¡£
RELAX NG ¤Ï¡¢¸½ºß¤Ç¤Ï
ISO (¹ñºÝɸ½à²½µ¡¹½) ¤Î¹ñºÝɸ½à¤È¤Ê¤Ã¤Æ¤¤¤ë¡£
ISO¤Ç¤Ï¡¢Ê¸½ñ¥¹¥¡¼¥ÞÄêµÁ¸À¸ì (DSDL) ¤Î°ìÉôʬ¤ò¹½À®¤¹¤ë»ÅÍͤȤ·¤Æ°ÌÃ֤Ť±¤é¤ì¤Æ¤¤¤ë¡£
RELAX NG ¤Î¥¹¥¡¼¥Þ¤Îµ½ÒÊýË¡¤Ï¡¢2¤Ä¤Î·Á¼°¤¬¤¢¤ë¡£
XML¤Ë½àµò¤·¤¿¹½Ê¸ (
XML¹½Ê¸ ¡¢xml syntax) ¤È¡¢XML¤Ë½àµò¤·¤Ê¤¤
û½Ì¹½Ê¸ (compact syntax) ¤Ç¤¢¤ë¡£
û½Ì¹½Ê¸¤Ï¡¢ÆÉ¤ß¤ä¤¯¤¹¤ë¤³¤È¤È¤è¤ê½ñ¤¤ä¤¹¤¯¤¹¤ë¤³¤È¤òÌܻؤ·¤Æ¤¤¤ë¡£
¤¿¤À¤·¡¢Ã»½Ì¹½Ê¸¤Çµ½Ò¤µ¤ì¤¿¥¹¥¡¼¥Þ¤òXML¹½Ê¸¤Î¥¹¥¡¼¥Þ¤ËÊÑ´¹¤¹¤ëÊýË¡¤È¡¢¤½¤ÎµÕ¤ÎÊÑ´¹¤ò¹Ô¤¦ÊýË¡¤Ï¡¢¤·¤Ã¤«¤êÄêµÁ¤µ¤ì¤Æ¤¤¤ë¤Î¤Ç¡¢¥¸¥§¡¼¥à¥º¡¦¥¯¥é¡¼¥¯ ¤¬³«È¯¤·¤¿ Trang ¤ò»È¤¨¤Ð¡¢É¸½à¤ÎXML¥Ä¡¼¥ë¤ò»È¤¦ÍøÊؤòµý¼õ¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¡£
RELAX NG ¤Ï¡¢XML Schema ¤è¤ê¤â´Ê·é¤Ê¥¹¥¡¼¥ÞÄêµÁ¤È´Ê·é¤ÊÂÅÅöÀ¸¡¾Ú¤ÎÏÈÁȤߤò¡¢È÷¤¨¤Æ¤¤¤ë¡£
¤½¤Î¤¿¤á RELAX NG ¤Ï¡¢XML Schema ¤ÈÈæ¤Ù¤Æ¡¢»È¤¤¤ä¤¹¤¯¡¢¤Þ¤¿ RELAX NG ¤ÎÂÅÅöÀ¸¡¾Ú´ï¤ò¼ÂÁõ¤¹¤ë¤³¤È¤âÍÆ°×¤Ë¤Ê¤Ã¤Æ¤¤¤ë¡£
RELAX NG ¤â¤Þ¤¿¡¢
¥Ç¡¼¥¿·¿ ¥Õ¥ì¡¼¥à¥ï¡¼¥¯¥×¥é¥°¥¤¥ó¤ò»È¤¦Ç½ÎϤòÈ÷¤¨¤Æ¤¤¤ë¡£
RELAX NG ¤Ç¥¹¥¡¼¥Þ¤òµ½Ò¤¹¤ë¿Í¤Ï¡¢Î㤨¤Ð¡¢XMLʸ½ñ¤Ç XML Schema ¤Î¥Ç¡¼¥¿·¿¤ÎÄêµÁ¤ËŬ¹ç¤µ¤»¤¿¤¤¤È¹Í¤¨¤ë¤«¤â¤·¤ì¤Ê¤¤¡£
¤½¤·¤Æ RELAX NG ¤Ç¤Ï¡¢¥Ç¡¼¥¿·¿¥Õ¥ì¡¼¥à¥ï¡¼¥¯¥×¥é¥°¥¤¥ó¤ò»È¤¦¤³¤È¤Ë¤è¤ê²Äǽ¤È¤Ê¤Ã¤Æ¤¤¤ë¡£
ISO ʸ½ñ¥¹¥¡¼¥ÞÄêµÁ¸À¸ì
ISO ʸ½ñ¥¹¥¡¼¥ÞÄêµÁ¸À¸ì (DSDL; Document Schema Description Languages) ɸ½à¤Ï¡¢¾®µ¬ÌϤʥ¹¥¡¼¥Þ¸À¸ì¤Î¹ÈϤʥ»¥Ã¥È¤ò¶¦¤ËÄ󶡤¹¤ë¡£
DSDL ¤ò¹½À®¤¹¤ëÊ£¿ô¤Î»ÅÍͤΤ½¤ì¤¾¤ì¤¬¡¢ÆÃÄê¤ÎÌäÂê¤ËÂбþ¤¹¤ë¤¿¤á¤ËÆÃ²½¤µ¤ì¤Æ¤¤¤ë¡£
DSDL ¤Ï¡¢
RELAX NG ¤ÎXML¹½Ê¸¤Èû½Ì¹½Ê¸¡¢
¥¹¥¥Þ¥È¥í¥ó ¡¢¥Ç¡¼¥¿·¿¥é¥¤¥Ö¥é¥ê¸À¸ì¡¢Ê¸»ú¥ì¥Ñ¡¼¥È¥êµ½Ò¸À¸ì¡¢Ê¸½ñ¥¹¥¡¼¥ÞºÆÌ¿Ì¾¸À¸ì¡¢Ì¾Á°¶õ´Ö¤Ë´ð¤Å¤¯¸¡¾Ú°Ñ¾ù¸À¸ì (NVDL) ¤ò¡¢´Þ¤ó¤Ç¤¤¤ë¡£DSDL¥¹¥¡¼¥Þ¸À¸ì·²¤Ï¡¢XML Schemas ¤ò»Ù»ý¤¹¤ë¥Ù¥ó¥À¤Î»Ù±ç¤Ï2007ǯ¤Î»þÅÀ¤Ç¤Ï¤Þ¤À¼õ¤±¤Æ¤¤¤Ê¤¤¡£
DSDL¤Ï¡¢½ÐÈÇ ¤Î¤¿¤á¤Îµ¡Ç½¤¬·çÇ¡¤·¤Æ¤¤¤ë¤³¤È¤ËÂФ¹¤ë¡¢½ÐÈǶȳ¦¤Î°ìÄê¤ÎÁð¤Îº¬¤ÎÈ¿±þ¤Ç¤â¤¢¤ë¡£
XMLʸ½ñ¤ò¸¡¾Ú¤¹¤ë²áÄø¤ÇXML¥¤¥ó¥Õ¥©¥á¡¼¥·¥ç¥ó¥»¥Ã¥È¤òÊѹ¹¤¹¤ë¤³¤È¤Ë¤Ä¤¤¤Æ
¤¤¤¯¤Ä¤«¤Î¥¹¥¡¼¥Þ¸À¸ì¤Ç¤Ï¡¢ÆÃÄê¤ÎXMLʸ½ñ¤Î¹½Â¤¤òµ½Ò¤¹¤ëǽÎϤ˲䨤ơ¢¸Ä¡¹¤ÎXMLʸ½ñ¤ò¤½¤ÎÆÃÄê¤ÎXMLʸ½ñ¹½Â¤¤ËŬ¹ç¤¹¤ë¤è¤¦¤ËÊÑ´¹¤¹¤ëµ¡Ç½¤â¡¢¸ÂÄêŪ¤Ê¤¬¤éÈ÷¤¨¤Æ¤¤¤ë¡£
DTD¤È XML Schema ¤Ï¤³¤ÎÊÑ´¹µ¡Ç½¤òÈ÷¤¨¤Æ¤¤¤ë¡£
DTD¤È XML Schema ¤Ç¤Ï¡¢XMLʸ½ñ¤Ë°À¤Î´ûÄêÃͤòÍ¿¤¨¤ë¤³¤È¤¬¤Ç¤¤ë¡£
RELAX NG ¤È¥¹¥¥Þ¥È¥í¥ó¤Ï¡¢°Õ¿ÞŪ¤Ë¤³¤Îµ¡Ç½¤ò³°¤·¤Æ¤¤¤ë¡£
Î㤨¤Ð¡¢XML¥¤¥ó¥Õ¥©¥á¡¼¥·¥ç¥ó¥»¥Ã¥È ¤òÀµ³Î¤Ë°·¤¦¤³¤È¤¬¡¢RELAX NG ¤È¥¹¥¥Þ¥È¥í¥ó¤Î»ÅÍͺöÄê»þ¤ËÊÑ´¹µ¡Ç½¤ò³°¤·¤¿Íýͳ¤Î°ì¤Ä¤Ç¤¢¤ë¡£
XMLʸ½ñ¤ò»ë³ÐŪ¤Ëɽ¼¨¤¹¤ë
XMLʸ½ñ¤ò»ë³ÐŪ¤Ëɽ¼¨¤¹¤ë¤¿¤á¤ÎÊýË¡¤òÀâÌÀ¤¹¤ë¡£
XMLʸ½ñ¤Ï¡¢¤½¤Îʸ½ñ¤ÎÆâÍÆ¤ò¤É¤Î¤è¤¦¤Ë»ë³ÐŪ¤Ëɽ¼¨¤¹¤ë¤«¤È¤¤¤¦¾ðÊó¤ò¡¢´Þ¤ó¤Ç¤¤¤Ê¤¤¡£
Cascading Style Sheets (CSS) ¤ä
Extensible Stylesheet Language (XSL) ¤Î¤è¤¦¤ÊXML¤Î¤¿¤á¤Î
¥¹¥¿¥¤¥ë¥·¡¼¥È¸À¸ì ¤ò»È¤¦¤Î¤Ç¤Ê¤±¤ì¤Ð¡¢¤Û¤È¤ó¤É¤Î
¥¦¥§¥Ö¥Ö¥é¥¦¥¶ ¤ÏÉáÄ̤ÎXMLʸ½ñ¤òÀ¸¤ÎXML¥Æ¥¥¹¥È¤È¤·¤ÆÉÁ²è¤¹¤ë¡£
¤¤¤¯¤Ä¤«¤Î¥¦¥§¥Ö¥Ö¥é¥¦¥¶¤Ï¡Ö¥Ï¥ó¥É¥ë¡×¤ò¤Ä¤±¤ÆÉ½¼¨¤¹¤ë (Î㤨¤Ð¡¢Í¾Çò¤Ë + ¤È - ¤ÎÉ乿¤òɽ¼¨¤¹¤ë) ¡£
¥Ï¥ó¥É¥ë¤ò»È¤¦¤³¤È¤Ë¤è¤ê¡¢XMLʸ½ñ¹½Â¤¤ÎÉôʬÌÚ¤ò¡¢¥Þ¥¦¥¹¥¯¥ê¥Ã¥¯¤ÇŸ³«¤·¤¿¤êÀޤꤿ¤¿¤ó¤À¤ê¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¡£
CSS¤ò»È¤Ã¤Æ¥¦¥§¥Ö¥Ö¥é¥¦¥¶ ¤ÇXMLʸ½ñ¤òÉÁ²è¤¹¤ë¤¿¤á¤Ë¤Ï¡¢XMLʸ½ñ¤Ï¼¡¤Î¤è¤¦¤ÊÍ×ÎΤǥ¹¥¿¥¤¥ë¥·¡¼¥È ¤Ø¤Î»²¾È¤ò´Þ¤á¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤ (XML¤Î½èÍýÌ¿Îá ¤ò»È¤Ã¤Æ¥¹¥¿¥¤¥ë¥·¡¼¥È¤ò»È¤Ã¤ÆÉÁ²è¤¹¤ë»Ý¤ò»ØÄꤷ¤Æ¤¤¤ë) ¡£
¤³¤ÎÊýË¡¤Ï¡¢
HTML ʸ½ñ¤Ë¤ª¤±¤ë¥¹¥¿¥¤¥ë¥·¡¼¥È»ØÄê¤ÎÊýË¡¤È¤Ï°Û¤Ê¤ë¡£
HTMLʸ½ñ¤Ç¤Ï <link/> Í×ÁǤò»È¤Ã¤Æ¥¹¥¿¥¤¥ë¥·¡¼¥È¤ò»ØÄꤹ¤ë¡£
XMLʸ½ñ¤ò»ë³ÐŪ¤Ëɽ¼¨¤¹¤ë¤¿¤á¤Ë¡¢
Extensible Stylesheet Language (XSL¡¢³ÈÄ¥²Äǽ¤Ê¥¹¥¿¥¤¥ë¥·¡¼¥È¸À¸ì) ¤ò»È¤¦¤³¤È¤â¤Ç¤¤ë¡£
XSL¤ò»È¤¦¾ì¹ç¤Ï¡¢XMLʸ½ñ¤òXHTML /HTMLʸ½ñ¤Î¹½Â¤¤ËÊÑ´¹¤¹¤ë¤«¡¢¤â¤·¤¯¤Ï¥¦¥§¥Ö¥Ö¥é¥¦¥¶¤Ç»ë³ÐŪ¤Ëɽ¼¨¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¾¤Îʸ½ñ¤Î¹½Â¤¤ËÊÑ´¹¤¹¤ë¡£
¥¯¥é¥¤¥¢¥ó¥È¦¤Ç XSL Transformations (XSLT) ¤Î¥¹¥¿¥¤¥ë¥·¡¼¥È¤ò»ØÄꤹ¤ë¤¿¤á¤Ë¤Ï¡¢XMLʸ½ñ¤Ë¼¡¤Î¤è¤¦¤ËXSLT¥¹¥¿¥¤¥ë¥·¡¼¥È¤Ø¤Î»²¾È¤ò´Þ¤á¤ë¤³¤È¤¬¡¢É¬ÍפǤ¢¤ë (XML¤Î½èÍýÌ¿Îá¤ò»È¤Ã¤Æ¼Â¸½¤·¤Æ¤¤¤ë) ¡£
¥¯¥é¥¤¥¢¥ó¥È¦¤ÎXSLT¥¹¥¿¥¤¥ë¥·¡¼¥È½èÍýµ¡Ç½¤Ï¡¢¸½ºß¤Ç¤Ï¿¤¯¤Î¥¦¥§¥Ö¥Ö¥é¥¦¥¶¤¬È÷¤¨¤Æ¤¤¤ë¡£
Ê̤ÎÊýË¡¤È¤·¤Æ¡¢¤³¤Î¤è¤¦¤Ê¥¨¥ó¥É¥æ¡¼¥¶¤Î¥¦¥§¥Ö¥Ö¥é¥¦¥¶¤ÎǽÎϤ˰͸¤¹¤ëÊýË¡¤òºÎ¤é¤º¤Ë¡¢¥µ¡¼¥Ð¦¤ÇXSL¤ò»È¤Ã¤ÆXMLʸ½ñ¤ò»ë³Ð²½²Äǽ¤Ê·Á¼°¤ËÊÑ´¹¤¹¤ëÊýË¡¤â¡¢¹Ô¤ï¤ì¤Æ¤¤¤ë¡£
¥¨¥ó¥É¥æ¡¼¥¶¤Ï¡¢¡ÖÉñÂæ¤Î΢¦¤Ç¡×²¿¤¬¹Ô¤ï¤ì¤Æ¤¤¤ë¤«¤ò¡¢°Õ¼±¤¹¤ëɬÍפϤʤ¤¡£
¥¨¥ó¥É¥æ¡¼¥¶¤¬Ìܤˤ¹¤ë¤â¤Î¤Ï¡¢¤è¤¯À°·Á¤µ¤ì»ë³Ð²½¤µ¤ì¤¿Ê¸½ñ¤À¤±¤Ç¤¢¤ë¡£
XML¤Î³ÈÄ¥
XML¤ò³ÈÄ¥¤¹¤ëµ»½Ñ¤òÀâÌÀ¤¹¤ë¡£
XML Path Language (XPath)
XML Path Language (XPath) ¤ò»È¤¦¤È¡¢XMLʸ½ñ¤Î¸Ä¡¹¤ÎÉôʬ¤ò»²¾È¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¤è¤¦¤Ë¤Ê¤ë¡£XPath¤Ï¡¢XSLT ¡¢XSL-FO ¡¢XQuery ¤Ê¤É¤Î¾¤Îµ»½Ñ¤ËÂФ·¤Æ¡¢XMLʸ½ñ¤Î¥Ç¡¼¥¿¤ËÂФ¹¤ë¥é¥ó¥À¥à¥¢¥¯¥»¥¹ ¤ò¹Ô¤¦µ¡Ç½¤ò¡¢Ä󶡤¹¤ë¡£XPath¤Çµ½Ò¤µ¤ì¤¿¼°¤Ï¡¢XMLʸ½ñ¤ò¹½À®¤¹¤ëXMLÍ×ÁÇ¡¢Â°À¡¢½èÍýÌ¿Îá¡¢¥³¥á¥ó¥È¤Ê¤É¤ÎÆâ¦¤Î¡¢¥Æ¥¥¹¥È¡¢¥Ç¡¼¥¿¡¢Ãͤò»²¾È¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¡£XPath¤Î¼°¤Ï¡¢Í×ÁǤÎ̾Á°¤È°À¤Î̾Á°¤Ë¥¢¥¯¥»¥¹¤¹¤ë¤³¤È¤â¤Ç¤¤ë¡£Xpath¤Ï¡¢ÂÅÅö¤ÊXMLʸ½ñ¤ËÂФ·¤Æ¤â¡¢À°·Á¼°XMLʸ½ñ¤ËÂФ·¤Æ¤â¡¢»È¤¦¤³¤È¤¬¤Ç¤¤ë¡£¤Þ¤¿Ì¾Á°¶õ´Ö¤¬ÄêµÁ¤µ¤ì¤¿XMLʸ½ñ¤ËÂФ·¤Æ¤â¡¢Ì¾Á°¶õ´Ö¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤Ê¤¤XMLʸ½ñ¤ËÂФ·¤Æ¤â¡¢»È¤¦¤³¤È¤¬¤Ç¤¤ë¡£
XML Inclusions (XInclude)
XML Inclusions (XInclude) ¤Î»ÅÍͤϡ¢XMLʸ½ñÆâ¤Ë³°Éô¥Õ¥¡¥¤¥ë¤ÎÁ´ÆâÍÆ¤â¤·¤¯¤Ï³°Éô¥Õ¥¡¥¤¥ë¤Î°ìÉô¤ÎÆâÍÆ¤ò´Þ¤á¤ëµ¡Ç½¤ò¡¢ÄêµÁ¤·¤Æ¤¤¤ë¡£XMLʸ½ñ¤Ë¤ª¤¤¤ÆXInclude¤Î½èÍý¤¬½ªÎ»¤¹¤ë¤È¡¢XInclude½èÍý½ªÎ»¸å¤ÎXML¥¤¥ó¥Õ¥©¥á¡¼¥·¥ç¥ó¥»¥Ã¥È ¤Ë¤ÏXInclude¤ÎÍ×ÁǤϤʤ¯¡¢XInclude¤ÎÍ×ÁǤÎÂå¤ï¤ê¤Ë¤½¤³¤Ë³°Éô¤Îʸ½ñ¤â¤·¤¯¤Ïʸ½ñ¤Î°ìÉô¤ÎÊ£À½¤¬¡¢ºÇ½ªÅª¤Ê¥¤¥ó¥Õ¥©¥á¡¼¥·¥ç¥ó¥»¥Ã¥È¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ë¡£XInclude¤Ç¤Ï¡¢³°Éôʸ½ñ¤Î°ìÉô¤òXMLʸ½ñ¤Ë´Þ¤á¤ëºÝ¤Ë¡¢³°Éôʸ½ñ¤ÎÊ£À½ÂоݤÎÎΰè¤ò»²¾È¤¹¤ë¤¿¤á¤ËXPath¤ò»È¤Ã¤Æ¤¤¤ë¡£
XQuery
XQuery¤Ï¡¢XML¤Ë¤ª¤¤¤Æ¡¢´Ø·¸¥Ç¡¼¥¿¥Ù¡¼¥¹ ¤Ë¤È¤Ã¤Æ¤ÎSQL ¤äPL/SQL ¤ËÁêÅö¤¹¤ë¡¢Ì䤤¹ç¤ï¤»¸À¸ì ¤È¤·¤Æ¤Îµ¡Ç½¤òÄ󶡤¹¤ë¡£XMLʸ½ñ¤Ë¥¢¥¯¥»¥¹¤·¡¢XMLʸ½ñ¤òÁàºî (ÊÔ½¸) ¤·¡¢¤½¤Î·ë²Ì¤òXMLʸ½ñ¤Î·Á¤ÇÊÖ¤¹¡£
XML̾Á°¶õ´Ö (Namespaces in XML)
XML̾Á°¶õ´Ö (Namespaces in XML) ¤ò»È¤¦¤³¤È¤Ç¡¢Æ±°ì¤ÎXMLʸ½ñÆâ¤Ç°Û¤Ê¤ëÊ£¿ô¤Î¥Ü¥¥ã¥Ö¥é¥ê (¥¹¥¡¼¥Þ) ¤ËͳÍ褹¤ëÍ×ÁǤȰÀ¤ò¡¢Ì¾Á°¤Î¾×ÆÍ¤òȯÀ¸¤µ¤»¤ë¤³¤È¤Ê¤¯¡¢´Þ¤á¤ë¤³¤È¤¬¤Ç¤¤ë¡£¸å½Ò ¤¹¤ë¡£
XML Signature
XML Signature ¤Î»ÅÍͤϡ¢XMLʸ½ñ¤ÎÆâÍÆ¤ËÂФ·¤ÆÅŻҽð̾ ¤òÀ¸À®¤¹¤ë¤¿¤á¤Î¹½Ê¸¤È½èÍýµ¬Â§¤òÄêµÁ¤¹¤ë¡£
XML Encryption
XML Encryption ¤Î»ÅÍͤϡ¢XMLʸ½ñ¤ÎÆâÍÆ¤ËÂФ·¤Æ°Å¹æ²½ ¤ò¹Ô¤¦¤¿¤á¤Î¹½Ê¸¤È½èÍýµ¬Â§¤òÄêµÁ¤¹¤ë¡£
XML Pointer Language (XPointer)
XML Pointer Language (XPointer) ¤Ï¡¢XML¤Ë´ð¤Å¤¤¤¿¥¤¥ó¥¿¡¼¥Í¥Ã¥È¥á¥Ç¥£¥¢¤Î¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ò»Ø¤·¼¨¤¹ÂηϤǤ¢¤ë¡£
MIME¥¿¥¤¥×
XMLʸ½ñ¤Ï¤µ¤Þ¤¶¤Þ¤Ê
MIME ¥¿¥¤¥×¤ÇÇÛÉÛ¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¡£
RFC 3023 ¤Ï¡¢"application/xml" ¤ª¤è¤Ó "text/xml" ¤ÎMIME¥¿¥¤¥×¤òÄêµÁ¤¹¤ë¡£
"application/xml" ¤È "text/xml" ¤ÎMIME¥¿¥¤¥×¤Ï¡¢¤½¤Î¥Ç¡¼¥¿¤¬XMLʸ½ñ¤Î·Á¼°¤ò¤È¤Ã¤Æ¤¤¤ë¤È¤¤¤¦¤³¤È¤Î¤ß¤ò½Ò¤Ù¤Æ¤¤¤ë¤À¤±¤Ç¤¢¤ê¡¢¤½¤ÎXMLʸ½ñ¤ÎÏÀÍýŪ¹½Â¤¤Ë¤Ä¤¤¤Æ¤Ï²¿¤â½Ò¤Ù¤Æ¤¤¤Ê¤¤¡£
"text/xml" ¤ò»È¤¦¤³¤È¤ËÂФ·¤Æ¤Ï¡¢É乿²½¤Ë´Ø¤¹¤ëÌäÂ꤬À¸¤¸¤ë²ÄǽÀ¤¬¤¢¤ë¤È¤ÎÈãȽ¤¬¤¢¤ê¡¢¸½ºß¤Ç¤ÏÈó¿ä¾©¤È¤µ¤ì¤Æ¤¤¤ë
xml-dev ¡£
RFC 3023 ¤Ç¤Ï¡¢²Ã¤¨¤Æ¡¢XMLʸ½ñ¤ò "application/" ¤Ç»Ï¤Þ¤ê¡¢"+xml" ¤Ç½ª¤ï¤ëMIME¥¿¥¤¥×¤ÇÇÛÉÛ¤¹¤ë¤³¤È¤ò´«¤á¤Æ¤¤¤ë¡£
Î㤨¤Ð¡¢
Atom ¤ÎXML¥Ç¡¼¥¿¤ËÂФ·¤Æ¤Ï¡¢"application/atom+xml" ¤ÎMIME¥¿¥¤¥×¤ÇÇÛÉÛ¤¹¤ë¤Î¤Ç¤¢¤ë¡£
XML̾Á°¶õ´Ö
XML̾Á°¶õ´Ö (
Namespaces in XML ) ¤Ï¡¢°ì¤ÄXMLʸ½ñÆâ¤Ç¡¢°Û¤Ê¤ëÊ£¿ô¤Î
¥Ü¥¥ã¥Ö¥é¥ê (¥¹¥¡¼¥Þ) ¤ËͳÍ褹¤ëÍ×ÁǤȰÀ¤ò¡¢Ì¾Á°¤Î¾×ÆÍ¤òȯÀ¸¤µ¤»¤ë¤³¤È¤Ê¤¯¡¢´Þ¤á¤ë¤³¤È¤¬¤Ç¤¤ë¤è¤¦¤Ë¤¹¤ë¤¿¤á¤Î»ÅÍͤǤ¢¤ë¡£
World Wide Web Consortium (W3C) ¤«¤é¡¢1999ǯ1·î14Æü¤Ë Namespaces in XML 1.0 ¤¬´«¹ð¤µ¤ì¤¿¡£
XMLʸ½ñ¤Ë°Û¤Ê¤ëÊ£¿ô¤Î¥Ü¥¥ã¥Ö¥é¥ê¤ËͳÍ褹¤ëÍ×ÁǤȰÀ¤ò´Þ¤á¤ë¾ì¹ç¡¢¥Ü¥¥ã¥Ö¥é¥ê¤Î¤½¤ì¤¾¤ì¤Ë̾Á°¶õ´Ö ¤ò¤ï¤ê¤¢¤Æ¤ë¤³¤È¤Ë¤è¤ê¡¢Í×ÁÇ̾¤Î¾×ÆÍ¤È°À̾¤Î¾×ÆÍ¤ÎÌäÂê¤ò¡¢²ò·è¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¡£
°ì¤Ä¤Î̾Á°¶õ´Ö¤Ë¤ª¤¤¤ÆÄêµÁ¤µ¤ì¤¿Í×ÁǤÎ̾Á°¤Ï¡¢°ì°Õ¤Ç¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£
¸ÜµÒ¤Ø¤Î»²¾È¤ÈÃíʸ¤µ¤ì¤¿¾¦Éʤؤλ²¾È¤ò´Þ¤à¡¢´Êñ¤ÊXMLʸ½ñ¤ÎÎã¤ò¹Í¤¨¤ë¡£
¸ÜµÒÍ×ÁǤȾ¦ÉÊÍ×ÁǤϡ¢¤È¤â¤Ë¡Ö¼±ÊÌÈÖ¹æ¡×¤È¤¤¤¦Ì¾Á°¤Î»ÒÍ×ÁǤò¤â¤Ä¤³¤È¤¬¤¢¤ë¤À¤í¤¦¡£
¼±ÊÌÈÖ¹æÍ×ÁǤؤλ²¾È¤Ï¡¢¸ÜµÒÍ×ÁǤλÒÍ×ÁǤμ±ÊÌÈÖ¹æÍ×ÁǤ⡢¾¦ÉÊÍ×ÁǤλÒÍ×ÁǤμ±ÊÌÈÖ¹æÍ×ÁǤ⡢Ʊ¤¸Í×ÁÇ̾¤ò¤â¤Ä¤Î¤Ç¡¢¤¢¤¤¤Þ¤¤¤Ç¤¢¤ë¡£
¤·¤«¤·2¤Ä¤Î¥Ü¥¥ã¥Ö¥é¥ê¤ò¶èÊ̤¹¤ë2¤Ä¤Î̾Á°¶õ´Ö¤Î¤â¤È¤Ç¡¢¼±ÊÌÈÖ¹æÍ×ÁǤò»È¤¦¾ì¹ç¡¢¸ÜµÒÍ×ÁǤλÒÍ×ÁǤμ±ÊÌÈÖ¹æÍ×ÁǤȡ¢¾¦ÉÊÍ×ÁǤλÒÍ×ÁǤμ±ÊÌÈÖ¹æÍ×ÁǤϡ¢°Ọ̃Ū¤ËÌÀ³Î¤Ë°Û¤Ê¤ë2¼ïÎà¤ÎÍ×ÁǤȤʤ롣
̾Á°¶õ´Ö¤ÎÀë¸À
̾Á°¶õ´Ö¤Ï¡¢XML¤ÎͽÌó°À¤Ç¤¢¤ë
xmlns ¤ò»È¤Ã¤ÆÀë¸À¤µ¤ì¤ë¡£
xmlns°À¤Î°ÀÃͤÏIRI (Internationalized Resource Identifier) ¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¡¢Ä̾ï¤ÏURI (Uniform Resource Identifier) ¤Ç¤¢¤ë¡£
Îã¤ò¼¨¤¹¡£
xmlns="http://www.w3.org/1999/xhtml"
¤³¤ÎÎã¤Î
"http://www.w3.org/1999/xhtml" ¤ò̾Á°¶õ´Ö̾¤È¤¤¤¦¡£
¤³¤³¤ÇÃí°Õ¤¹¤Ù¤¤³¤È¤È¤·¤Æ¤Ï¡¢Ì¾Á°¶õ´Ö¤ÎÀë¸À¤Çµ½Ò¤µ¤ì¤¿URI¤Ï¡¢¼ÂºÝ¤Ë¥¤¥ó¥¿¡¼¥Í¥Ã¥È¾å¤Î½»½ê¤È¤·¤Æ²ò¼á¤µ¤ì¤ë¤ï¤±¤Ç¤Ï¤Ê¤¤¤È¤¤¤¦¤³¤È¤Ç¤¢¤ë¡£
Î㤨¤Ð¡¢
http://www.w3.org/1999/xhtml ¼«ÂΤˤϲ¿¤Î¥³¡¼¥É¤â¤Ê¤¤¡£
¤³¤ÎURI¤Îʸ½ñ¤Ç¤Ï¡¢¿Í´Ö¤ÎÆÉ¼Ô¤ËÂФ·¤Æ
XHTML ¤Ë¤Ä¤¤¤Æ´Êñ¤ËÀâÌÀ¤·¤Æ¤¤¤ë¤À¤±¤Ç¤¢¤ë¡£
(
"http://www.w3.org/1999/xhtml" ¤Î¤è¤¦¤Ê) URI¤ò̾Á°¶õ´Ö¤Î¼±Ê̻ҤȤ·¤Æ»È¤¦¤³¤È¤Ç¡¢("xhtml" ¤Î¤è¤¦¤Ê) ñ½ã¤Êʸ»úÎó¤ò̾Á°¶õ´Ö̾¤È¤·¤Æ»È¤¦¤è¤ê¤â¡¢°Û¤Ê¤ë̾Á°¶õ´Ö¤¬°Õ¿Þ¤»¤º¤·¤ÆÆ±¤¸Ì¾Á°¶õ´Ö̾¤ò»È¤Ã¤Æ¤·¤Þ¤¦´í¸±À¤òÄ㸺¤¹¤ë¡£
̾Á°¶õ´Ö¤Î¼±Ê̻Ҥϡ¢¥¦¥§¥Ö¤Î½»½ê (¥¢¥É¥ì¥¹) ¤Î´·½¬¤Ë¤·¤¿¤¬¤¦É¬ÍפϤʤ¤¡£
̾Á°¶õ´Ö¤ÎÀë¸À¤Ï¡¢Ã»¤¤ÀÜÆ¬¼¤ò´Þ¤à¤³¤È¤¬¤Ç¤¤ë¡£
¤³¤Î̾Á°¶õ´ÖÀÜÆ¬¼¤ò»È¤¦¤³¤È¤Ç¡¢°Û¤Ê¤ë¥Ü¥¥ã¥Ö¥é¥ê¤ËͳÍ褹¤ëÍ×ÁǤȰÀ¤ò¼±Ê̤¹¤ë¤³¤È¤¬¤Ç¤¤ë¡£
̾Á°¶õ´ÖÀÜÆ¬¼¤ò»È¤¦Îã¤ò¼¨¤¹¡£
xmlns:xhtml="http://www.w3.org/1999/xhtml"
XML̾Á°¶õ´Ö¤ò»È¤Ã¤¿XMLʸ½ñ¤ÎÎã¤ò¼¨¤¹¡£
XMLʸ½ñ¤òXHTMLʸ½ñ¤ËÊÑ´¹¤¹¤ëÎã
¼Ò°÷̾Êí
¤³¤ÎXMLʸ½ñ¤Ï¡¢¼¡¤Î2¤Ä¤Î̾Á°¶õ´Ö¤Î¥Ü¥¥ã¥Ö¥é¥ê¤«¤é¹½À®¤µ¤ì¤Æ¤¤¤ë¡£
XSLT ¤Î¥Ü¥¥ã¥Ö¥é¥ê: xsl¤Î̾Á°¶õ´ÖÀÜÆ¬¼¤ò¤â¤Á¡¢Ì¾Á°¶õ´Ö̾¤Ï "http://www.w3.org/1999/XSL/Transform" ¡£
XHTML ¤Î¥Ü¥¥ã¥Ö¥é¥ê: ̾Á°¶õ´ÖÀÜÆ¬¼¤ò¤â¤¿¤Ê¤¤¥Ç¥Õ¥©¥ë¥È¤Î̾Á°¶õ´Ö¤Ç¤¢¤ê¡¢Ì¾Á°¶õ´Ö̾¤Ï "http://www.w3.org/1999/xhtml" ¡£
¤Ê¤ª¤³¤ÎXMLʸ½ñ¤Ï¡¢¤¢¤ëXMLʸ½ñ¤òXHTMLʸ½ñ¤ËÊÑ´¹¤¹¤ëXSLT¥¹¥¿¥¤¥ë¥·¡¼¥È¤Ç¤¢¤ë¡£
XML̾Á°¶õ´Ö¤ò»È¤¦¾ì¹ç¡¢¤½¤ÎXML̾Á°¶õ´Ö¤Î¥Ü¥¥ã¥Ö¥é¥ê¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤ë¤³¤È¤¬É¬ÍפǤ¢¤ë¤ï¤±¤Ç¤Ï¤Ê¤¤¡£
¤·¤«¤·XMLʸ½ñ¤ÇXML̾Á°¶õ´Ö¤ò»È¤¦¾ì¹ç¤Ë¡¢¤½¤ÎXML̾Á°¶õ´Ö¤Î¥Ü¥¥ã¥Ö¥é¥ê¤òÄêµÁ¤·¤Æ¤ª¤¯¤³¤È¤Ï¡¢¤½¤ÎXML̾Á°¶õ´Ö¤ÎURI¤Î¤â¤È¤ÇÀµ¤·¤¤Ê¸½ñ¹½Â¤¤òÄêµÁ¤·¤Æ¤¤¤ë¥¹¥¡¼¥Þ¤Ë´ØÏ¢¤Å¤±¤ë¤¿¤á¤Ë¡¢¹Ô¤ï¤ì¤ë¤³¤È¤¬Â¿¤¤¡£
XMLʸ½ñ¤ò¥×¥í¥°¥é¥à¤Ç½èÍý¤¹¤ë
¥×¥í¥°¥é¥Þ ¤ä
¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¥½¥Õ¥È¥¦¥§¥¢ ¤¬XMLʸ½ñ¤ò½èÍý¤¹¤ë¼êÃʤȤ·¤Æ¤Ï¡¢¤³¤ì¤Þ¤Ç¼¡¤Ë¼¨¤¹3¤Ä¤Îµ»Ë¡¤¬ÅÁÅýŪ¤Ë»È¤ï¤ì¤Æ¤¤¿¡£
¤Ê¤ª¡¢¤³¤ÎÀá¤ÎÀâÌÀ¤Ç»È¤¦API¤È¤Ï¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¥×¥í¥°¥é¥ß¥ó¥°¥¤¥ó¥¿¥Õ¥§¡¼¥¹ ¤Î¤³¤È¤ò¤µ¤¹¡£
¤µ¤é¤Ë¡¢¶áǯ¤Ë³«È¯¤µ¤ì»È¤ï¤ì¤ë¤è¤¦¤Ë¤Ê¤Ã¤¿¡¢XMLʸ½ñ¤ò½èÍý¤¹¤ëµ»Ë¡¤ò¼¨¤¹¡£
Pull Parsing
¥Ç¡¼¥¿¥Ð¥¤¥ó¥Ç¥£¥ó¥°
Simple API for XML (SAX)
Simple API for XML (SAX) ¤Ï¡¢
»ú¶ç²òÀÏ ¤ò¹Ô¤¤
¥¤¥Ù¥ó¥È¶îư ¤Ç½èÍý¤ò¹Ô¤¦ API ¤Ç¤¢¤ë¡£
SAX¤ò»È¤¦¤ÈXMLʸ½ñ¤Ïʸ½ñ¤ÎºÇ½é¤«¤é½ç¼¡¤ËÆÉ¤ß¹þ¤Þ¤ì¡¢Ê¸½ñ¤ÎÆâÍÆ¤Ï¡¢XMLʸ½ñ¤ò½èÍý¤¹¤ë
¥×¥í¥°¥é¥Þ ¤¬³«È¯¤·¤¿¥Ï¥ó¥É¥é
¥ª¥Ö¥¸¥§¥¯¥È ¤Î¤µ¤Þ¤¶¤Þ¤Ê
¥á¥½¥Ã¥É ¤Ø¤Î
¥³¡¼¥ë¥Ð¥Ã¥¯ ¤È¤·¤Æ¡¢Êó¹ð¤µ¤ì¤ë¡£
SAX¤ò»È¤Ã¤¿XMLʸ½ñ½èÍý¤Ï¡¢½èÍý®ÅÙ¤¬¹â®¤Ç¤¢¤ê¡¢¾¯¤Ê¤¤¥³¥ó¥Ô¥å¡¼¥¿»ñ¸»¤ò¸úΨŪ¤Ë»È¤Ã¤Æ¡¢Èó¾ï¤Ë¥µ¥¤¥º¤ÎÂ礤¤XMLʸ½ñ¤ò½èÍý¤¹¤ë¤³¤È¤¬¡¢²Äǽ¤Ç¤¢¤ë¡£
SAX¤ò»È¤¦¤³¤È¤Ëȼ¤¦²ÝÂê¤Ï¡¢XMLʸ½ñ¤ËÂФ·¤Æ
¥é¥ó¥À¥à¥¢¥¯¥»¥¹ ¤ò¹Ô¤Ã¤Æ¾ðÊó¤ò¼è¤ê½Ð¤¹¤³¤È¤¬¡¢Æñ¤·¤¤¤³¤È¤Ç¤¢¤ë¡£
¤È¤¤¤¦¤Î¤â¡¢SAX¤ò»È¤¦¤³¤È¤Ï¡¢¥×¥í¥°¥é¥Þ ¤ËÂФ·¤Æ¡¢XMLʸ½ñ¤Î¤É¤ÎÉôʬ¤¬¸½ºß½èÍýÂоݤȤʤäƤ¤¤ë¤«¤Î¡¢ºÇ¿·¤Î¾õÂÖ¤òÇİ®¤¹¤ëµ¡¹½¤ò¼ÂÁõ¤¹¤ë¤È¤¤¤¦¡¢Ééô¤ò¶¯À©¤¹¤ë¤«¤é¤Ç¤¢¤ë¡£
SAX¤òºÎÍѤ¹¤ë¤³¤È¤Ï¡¢½èÍýÂоݤȤʤëXMLʸ½ñÃæ¤Î¤¢¤ë¼ïÎà¤Î¾ðÊó¤¬É¬¤ºÆ±¤¸¤è¤¦¤Ë½èÍý¤µ¤ì¤ë¤È¤¤¤¦¾ì¹ç¤Ç¡¢³î¤ÄXMLʸ½ñÃæ¤Î¤É¤ÎÉôʬ¤Ë¤½¤Î¼ïÎà¤Î¾ðÊ󤬽и½¤¹¤ë¤«¤Ï´Ø·¸¤Ê¤¯½èÍý¤ò¹Ô¤Ã¤Æ¤è¤¤¾ì¹ç¤Ë¡¢Å¬¤·¤Æ¤¤¤ë¡£
Document Object Model (DOM)
Document Object Model (DOM) ¤Ï¡¢
¥¤¥ó¥¿¥Õ¥§¡¼¥¹ »Ø¸þ¤Î
API ¤Ç¤¢¤ê¡¢XMLʸ½ñ¤Î¤ª¤Î¤ª¤Î¤ÎÉôʬ¤òɽ¸½¤¹¤ëÀá
¥ª¥Ö¥¸¥§¥¯¥È ¤Î½¸¤Þ¤ê¤«¤é¤Ê¤ë
ÌÚ¹½Â¤ ¤Ç¤¢¤ë¤«¤Î¤è¤¦¤Ë¡¢XMLʸ½ñÁ´ÂΤËÂФ·¤Æ¥Ê¥Ó¥²¡¼¥·¥ç¥ó¤ò¹Ô¤¦¤³¤È¤òÁÛÄꤷ¤Æ¤¤¤ë¡£
DOM¤Ç¤Ï¡¢XMLʸ½ñ¤ËÂФ·¤Æ¥é¥ó¥À¥à¥¢¥¯¥»¥¹ ¤ò¹Ô¤Ã¤Æ¾ðÊó¤ò¼è¤ê½Ð¤¹¤³¤È¤¬¡¢´Êñ¤Ë¤Ç¤¤ë¡£
DOM¤Ë¤ª¤±¤ëXMLʸ½ñÁ´ÂΤËÁêÅö¤¹¤ë
Document ¥ª¥Ö¥¸¥§¥¯¥È¤Ï¡¢XMLʸ½ñ¤òXML¥×¥í¥»¥µ¤¬½èÍý¤¹¤ë¤³¤È¤Ë¤è¤êÀ¸À®¤¹¤ë¤³¤È¤â¤Ç¤¤ë¤·¡¢¥×¥í¥°¥é¥Þ¤¬¥×¥í¥°¥é¥ß¥ó¥°¤¹¤ë¤³¤È¤Ë¤è¤Ã¤ÆÀ¸À®¤¹¤ë¤³¤È¤â¤Ç¤¤ë¡£
DOM¤Ë¤ª¤±¤ë
Node (Àá) ¤Î¤µ¤Þ¤¶¤Þ¤Ê·¿¤Î
¥Ç¡¼¥¿·¿ ¤Ï¡¢DOM»ÅÍͤˤª¤¤¤Æ¤ÏÃê¾ÝŪ¤Ë¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤È¤·¤ÆÄêµÁ¤µ¤ì¤Æ¤¤¤ë¡£
Node ¤Î¥Ç¡¼¥¿·¿¤Î
¼ÂÁõ ¤Ï¡¢
¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì ¤Ë¸ÇͤθÀ¸ì¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤òÄ󶡤¹¤ë¡£
DOM¤Î¼ÂÁõ¤Ï¡¢¥µ¥¤¥º¤ÎÂ礤¤XMLʸ½ñ¤ò°·¤¦¾ì¹ç¤Ï¤¿¤¯¤µ¤ó¤Î¥á¥â¥ê¤ò»È¤¦¡£
¤Ê¤¼¤Ê¤éDOM¤Î¼ÂÁõ¤Ï¡¢°ìÈÌŪ¤Ë¤ÏXMLʸ½ñÁ´ÂΤ«¤é¥ª¥Ö¥¸¥§¥¯¥È¤ÎÌÚ¹½Â¤¤ò¹½ÃÛ¤·¤Æ¥á¥â¥ê¤Ë¥í¡¼¥É (Ÿ³«) ¤·¡¢¤½¤Î¸å¤ËDOM¤ò²ð¤·¤¿½èÍý¤ò¤Ç¤¤ë¤è¤¦¤Ë¤·¤Æ¤¤¤ë¤«¤é¤Ç¤¢¤ë¡£
Java ¤Ç¤Ï¡¢É¸½à¥é¥¤¥Ö¥é¥ê¤ò¹½À®¤¹¤ë¤¤¤¯¤Ä¤«¤Î¥Ñ¥Ã¥±¡¼¥¸¤ÇDOM¤¬¼ÂÁõ¤µ¤ì¤Æ¤ª¤ê¡¢Java¤Î
¥×¥í¥°¥é¥Þ ¤Ïɸ½à¥é¥¤¥Ö¥é¥ê¤ÎDOM¤ò»È¤¦¤³¤È¤¬¤Ç¤¤ë¡£
DOM¤Î»ÅÍͤϡ¢
World Wide Web Consortium (W3C) ¤ÇºöÄꤵ¤ì¤Æ¤¤¤ë¤¿¤á¡¢DOM¤ÇÃæ³Ë¤ò¤Ê¤¹
Node ¤ä
Document ¤Ê¤É¤Î¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ä¡¢
ľÎó²½ (½ÐÎÏ) ¤Ê¤É¤Îµ¡Ç½¤òÄ󶡤¹¤ë¤¿¤á¤Î¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸
org.w3c.dom.* ¤Ë¼ý¤á¤é¤ì¤Æ¤¤¤ë¡£
Java¥×¥é¥Ã¥È¥Õ¥©¡¼¥àAPI»ÅÍÍ
ÊÑ´¹¥¨¥ó¥¸¥ó¤È¥Õ¥£¥ë¥¿
Extensible Stylesheet Language (XSL) µ»½Ñ¤Ë¤ª¤±¤ë¥Õ¥£¥ë¥¿ ¤Ï¡¢XMLʸ½ñ¤ËÂФ·¤Æ¡¢»ë³ÐŪ¤Ë½ÐÎϤ·¤¿¤ê°õºþ½ÐÎϤǤ¤ë¤è¤¦ÊÑ´¹½èÍý¤ò¹Ô¤¦¤³¤È¤¬¤Ç¤¤ë¡£
XSL Formatting Objects (XSL-FO)
XSL Formatting Objects (XSL-FO) ¤Ï¡¢World Wide Web Consortium (W3C) ¤¬ºöÄꤷ¤¿¡¢XML¤Ë½àµò¤·¤¿Àë¸ÀŪ¤Ê¥Ú¡¼¥¸À°·Á (ÁÈÈÇ ) ¸À¸ì¤Ç¤¢¤ë¡£XSL-FO½èÍý·Ï¤ò»È¤¦¤È¡¢XSL-FOʸ½ñ¤ò¾¤ÎÈóXML·Á¼° (PDF ¤Ê¤É) ¤ËÊÑ´¹½ÐÎϤ¹¤ë¤³¤È¤¬¤Ç¤¤ë¡£
XSL Transformations (XSLT)
XSL Transformations (XSLT)¤Ï¡¢W3C¤¬ºöÄꤷ¤¿¡¢XML¤Ë½àµò¤·¤¿Àë¸ÀŪ¤Êʸ½ñÊÑ´¹¸À¸ì ¤Ç¤¢¤ë¡£XSLT½èÍý·Ï¤ò»È¤¦¤È¡¢XSLT¥¹¥¿¥¤¥ë¥·¡¼¥È ¤ò»Ø¼¨½ñ¤È¤·¤Æ¡¢XMLʸ½ñ¤È¤·¤ÆÉ½¸½¤µ¤ì¤¿¤¢¤ë¥Ç¡¼¥¿¤ÎÌÚ¹½Â¤¤ò¡¢Ê̤ÎÌÚ¹½Â¤¤ËÊÑ´¹¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¡£ÊÑ´¹¸å¤Îʸ½ñ¤È¤·¤Æ¡¢XML (Î㤨¤Ð¡¢XSL-FOʸ½ñ¤äXHTMLʸ½ñ¤Ê¤É) ¡¢HTML ¡¢¥×¥ì¡¼¥ó¥Æ¥¥¹¥È ¤Ê¤É¤Î·Á¼°¤Ë¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¡£¤Þ¤¿XSLT½èÍý·Ï¤Ë¤è¤Ã¤Æ¤Ï¤³¤Î¾¤Î·Á¼°¤ËÊÑ´¹¤Ç¤¤ë¤â¤Î¤â¤¢¤ë¡£
XQuery
XQuery¤Ï¡¢W3C¤¬ºöÄꤷ¤¿¡¢XMLʸ½ñ¤ËÂФ¹¤ë¡¢Ì䤤¹ç¤ï¤»¡¢¹½ÃÛ¡¢ÊÑ´¹¤ò¹Ô¤¦¤¿¤á¤Î¡¢¥³¥ó¥Ô¥å¡¼¥¿¸À¸ì (Ì䤤¹ç¤ï¤»¸À¸ì ) ¤Ç¤¢¤ë¡£
XML Path Language (XPath)
XML Path Language (XPath) ¤Ï¡¢W3C¤¬ºöÄꤷ¤¿¡¢XMLʸ½ñÃæ¤Î¥Ç¡¼¥¿¤ò¼èÆÀ¤¹¤ë¤¿¤á¤Î¡¢DOM¤Ë»÷¤¿¥Î¡¼¥É¤Î½¸¤Þ¤ê¤«¤é¤Ê¤ëÌÚ¹½Â¤¤ò¥Ç¡¼¥¿¥â¥Ç¥ë ¤È¤¹¤ë¥Ñ¥¹¼°¸À¸ì¤Ç¤¢¤ë¡£XSLT¤ª¤è¤ÓXQuery¤Îµ»½Ñ¤ÏXPath¤ò»È¤Ã¤Æ¼Â¸½¤µ¤ì¤Æ¤¤¤ë¡£XPath¤Î¼ÂÁõ¤Ï¤Þ¤¿¡¢ÊØÍø¤Ê´Ø¿ô ¥é¥¤¥Ö¥é¥ê ¤ò´Þ¤ó¤Ç¤ª¤ê»È¤¦¤³¤È¤¬¤Ç¤¤ë¡£
Pull Parsing
Pull Parsing ¤Ï¡¢XMLʸ½ñ¤ò¡¢ºÇ½é¤«¤é½çÈÖ¤ËÆÉ¤ß¹þ¤ß¡¢
Iterator ¥Ñ¥¿¡¼¥ó ¤Î
¥Ç¥¶¥¤¥ó¥Ñ¥¿¡¼¥ó ¤ò»È¤Ã¤Æ¹àÌÜ (item) ¤Î°ìÏ¢¤Îή¤ì¤È¤·¤Æ°·¤¦¡¢¶áǯ¤Ë½ù¡¹¤ËÉáµÚ¤·¤Æ¤¤¿µ»Ë¡¤Ç¤¢¤ë
Push, - Bob DuCharme, XML.com¡£
Pull Parsing ¤Îµ»Ë¡¤Ë¤è¤ê¡¢ºÆµ¢²¼¹ß¥Ñ¡¼¥µ¤ò¼ÂÁõ¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¡£
ºÆµ¢²¼¹ß¥Ñ¡¼¥µ¤Ç¤Ï¡¢¥Ñ¡¼¥¹¤ò¼Â¹Ô¤¹¤ë¥×¥í¥°¥é¥à¤Ï¡¢¥Ñ¡¼¥¹¤ÎÂоݤȤʤëXMLʸ½ñ¤Î¹½Â¤¤È»÷¤Æ¤¤¤ë¡£
¤½¤·¤Æ¥Ñ¡¼¥¹¤ÎÃæ´Ö·ë²Ì¤ò¼èÆÀ¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¡£
¥Ñ¡¼¥¹¤ÎÃæ´Ö·ë²Ì¤ò¡¢¥Ñ¡¼¥¹¤ò¼Â¹Ô¤¹¤ë
¥á¥½¥Ã¥É Æâ¤Î¶É½êÊÑ¿ô (¥í¡¼¥«¥ëÊÑ¿ô) ¤È¤·¤Æ»È¤¦¤³¤È¤¬¤Ç¤¤ë¡£
¤¢¤ë¤¤¤Ï¡¢Äã¿å½à¤Î¥á¥½¥Ã¥É¤Î°ú¿ô¤È¤·¤ÆÅϤ·¤¿¤ê¡¢¹â¿å½à¤Î¥á¥½¥Ã¥É¤Ø¤ÎÌá¤êÃͤȤ·¤ÆÊÖ¤¹¤³¤È¤¬¤Ç¤¤ë¡£
Pull Parsing ¤Îµ»Ë¡¤òÄ󶡤¹¤ë¼ÂÁõ¤È¤·¤Æ¤Ï¼¡¤Î¤â¤Î¤¬¤¢¤ë¡£
Î㤨¤Ð¡¢Java¤ÎStAX¥Õ¥ì¡¼¥à¥ï¡¼¥¯¤Ç¤Ï¡¢ËܼÁŪ¤Ê¡ÖÈ¿Éü»Ò ¡× (¥¤¥Æ¥ì¡¼¥¿) ¤òºîÀ®¤·¤Æ»È¤¦¤³¤È¤¬¤Ç¤¤ë¡£
Pull Parsing ¤ÇºîÀ®¤µ¤ì¤ë¡ÖÈ¿Éü»Ò¡×¤ÏXMLʸ½ñÃæ¤Î¤µ¤Þ¤¶¤Þ¤ÊÍ×ÁÇ¡¢Â°À¡¢¥Ç¡¼¥¿¤ò½çÈÖ¤Ëˬ¤ì¤ë¡£
¡ÖÈ¿Éü»Ò¡×¤ò»È¤¦¥×¥í¥°¥é¥à¤Ï¡¢½èÍýÃæ¤Ë¸½ºß¤Î¹àÌÜ (Î㤨¤Ð¡¢Í×ÁǤγ«»Ï¡¢Í×ÁǤνªÎ»¡¢¥Æ¥¥¹¥È) ¤òÄ´¤Ù¡¢¤½¤ÎÆÃÀ (Î㤨¤Ð¡¢Í×ÁǤÎ̾Á°¡¢Ì¾Á°¶õ´Ö¡¢Â°ÀÃÍ¡¢¥Æ¥¥¹¥ÈÆâÍÆ) ¤òÄ´ºº¤¹¤ë¡£
¤½¤·¤ÆÈ¿Éü»Ò¤Ë¡Ö¼¡¤Î¡×¹àÌÜ¤Ø°ÜÆ°¤¹¤ë¤è¤¦»Ø¼¨¤¹¤ë¤³¤È¤â¤Ç¤¤ë¡£
¥×¥í¥°¥é¥à¤Ï¡¢¤³¤Î¤è¤¦¤ËXMLʸ½ñ¤òÁöºº¤¹¤ë¤è¤¦¤Ë¤·¤Æ¡¢Ê¸½ñ¤«¤é¾ðÊó¤ò¼è¤ê½Ð¤¹¤³¤È¤¬¤Ç¤¤ë¡£
Pull Parsing ¤Îµ»Ë¡¤ÎÆÃÉ®¤¹¤Ù¤Ä¹½ê¤Ï¡¢XMLʸ½ñ¤ò¥Ñ¡¼¥¹¤¹¤ëDOM¤Îµ»Ë¡¤ÈÈæ¤Ù¤ÆÈó¾ï¤Ë¹â®¤Ç¤¢¤ê¡¢¥á¥â¥ê»ÈÍѤ¬Èó¾ï¤Ë¾¯¤Ê¤¤¤³¤È¤Ç¤¢¤ë¡£
¤â¤¦°ì¤Ä¤ÎĹ½ê¤Ï¡¢ºÆµ¢²¼¹ß¤Î¼êË¡¤Ï¡¢¥Ñ¡¼¥¹¤ò¼Â¹Ô¤¹¤ë¥×¥í¥°¥é¥àÆâ¤Ç¡¢¥Ç¡¼¥¿¤ò·¿¤Å¤±¤µ¤ì¤¿ÊÑ¿ô¤È¤·¤ÆÊÝ»ý¤¹¤ë¤³¤È¤ËŬ¤·¤Æ¤¤¤ë¤³¤È¤Ç¤¢¤ë¡£
SAX¤Ç¤Ï¡¢Î㤨¤Ð¡¢¥×¥í¥°¥é¥Þ¤¬¼«Ê¬¤Ç½èÍýÃæ¤ÎÍ×ÁǤÎÁÄÀè¤È¤Ê¤ëÍ×ÁÇ·²¤ò³ÊǼ¤¹¤ë
¥¹¥¿¥Ã¥¯ Æâ¤ËÃæ´Ö¥Ç¡¼¥¿¤òÊÝ»ý¤¹¤ë¥³¡¼¥É¤ò¥×¥í¥°¥é¥ß¥ó¥°¤¹¤ëɬÍפ¬¤¢¤ë¤³¤È¤¬Â¿¤¤¡£
¤³¤ì¤ËÂФ·¡¢Pull Parsing ¤Îµ»Ë¡¤ò»È¤Ã¤ÆXMLʸ½ñ¤ò½èÍý¤¹¤ë¥×¥í¥°¥é¥à¤Ï¡¢SAX¤ò»È¤¦¥×¥í¥°¥é¥à¤è¤ê¤â¡¢Èó¾ï¤Ëñ½ã¤ÇÍý²ò¤·°×¤¯ÊÝ¼é¤¬ÍÆ°×¤Ë¤Ê¤ë¤³¤È¤¬Â¿¤¤¡£
¥Ç¡¼¥¿¥Ð¥¤¥ó¥Ç¥£¥ó¥°
XMLʸ½ñ¤ò½èÍý¤¹¤ë¤â¤¦°ì¤Ä¤ÎAPI¤Ï¡¢XML¥Ç¡¼¥¿¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤Ç¤¢¤ê¡¢XML¥Ç¡¼¥¿¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤ò»È¤¦¤È¡¢XMLʸ½ñ¤ò¡¢¤½¤Îʸ½ñ·¿¤ËÂбþ¤·¤¿¡¢¶¯¤¯·¿¤Å¤±¤µ¤ì¤¿¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì¥Ç¡¼¥¿¹½Â¤ (
¥×¥í¥°¥é¥à ¤Î
¥½¡¼¥¹¥³¡¼¥É ) ¤ò¡¢À¸À®¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¡£
¥¤¥ó¥¿¥Õ¥§¡¼¥¹»Ø¸þ¤ÎDOM¤È¤ÏÂоÈŪ¤Ê¼êË¡¤Ç¤¢¤ë¡£
¥Ç¡¼¥¿¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤Î¼Â¸½Îã¤ò¼¡¤Ë¼¨¤¹¡£
XML¤Ë½àµò¤·¤¿¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¥½¥Õ¥È¥¦¥§¥¢¤È¥¨¥Ç¥£¥¿
OpenOffice.org ¡¢AbiWord ¡¢¤ª¤è¤Ó¥¢¥Ã¥×¥ë ¤ÎiWork ¤Ê¤É¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¥½¥Õ¥È¥¦¥§¥¢ ¤Î¥Í¥¤¥Æ¥£¥Ö¥Õ¥¡¥¤¥ë¥Õ¥©¡¼¥Þ¥Ã¥È ¤Ï¡¢XML¤Ç¤¢¤ë¡£
½¾Á°¡¢
¥ª¥Õ¥£¥¹¥¹¥¤¡¼¥È ¤Ë¤Ï³Æ¥½¥Õ¥È¤ÎÆÃͤÎ
¥Ð¥¤¥Ê¥ê ·Á¼°¤È¤·¤Æ
¥Ç¡¼¥¿ ¤¬Êݸ¤µ¤ì¤Æ¤¤¤¿¡£¤·¤«¤·¤Ê¤¬¤é¤³¤ì¤Ç¤Ï¸ß´¹À¤¬Ä㤯¡¢ÍÍ¡¹¤Ê¾ðÊó¤ò
¥Ç¡¼¥¿¥Ù¡¼¥¹ ¤È¤·¤ÆÍøÍѤ¹¤ë¥ª¥Õ¥£¥¹¥¹¥¤¡¼¥È¤Ç¤ÏÉÔÅԹ礬À¸¤¸¤Æ¤¤¤¿¡£
¤½¤Î¤¿¤á¡¢¥Ç¡¼¥¿¤Îɸ½à²½¤ò¿Ê¤á¤Æ¸ß´¹À¤ò¹â¤á¤ë¤¿¤á¡¢³Æ¥ª¥Õ¥£¥¹¥¹¥¤¡¼¥È¤ÏXML·Á¼°¤Ç¥Ç¡¼¥¿¤ò½ÐÎϤ¹¤ëµ¡Ç½¤ä¡¢¤½¤â¤½¤âɸ½àÊݸ·Á¼°¤òXML¥Ù¡¼¥¹¤È¤¹¤ë¤â¤Î¤¬Áý¤¨¤Æ¤¤¿¡£
OpenOffice.org ¤ÏXML¥Ù¡¼¥¹¤ÎÊݸ·Á¼°¤òÅö½é¤è¤êɸ½à¤È¤·¤Æ¤¤¤¿¡Ê±Ñ¸ìÈǥС¼¥¸¥ç¥ó1.0¤Ï2002ǯ5·î1Æü¥ê¥ê¡¼¥¹¡Ë¡£
¤Þ¤¿¡¢OpenOffice.org¤Ë¸Â¤é¤º¡¢¤É¤Î¥ª¥Õ¥£¥¹¥¹¥¤¡¼¥È¤Ç¤âÍøÍѤǤ¤ëOpenDocument ·Á¼°¤¬¹ñºÝɸ½à²½µ¡¹½ ¡ÊISO¡Ë¤Ë¤è¤Ã¤ÆÉ¸½àµ¬³Ê¤È¤·¤ÆÇ§Äꤵ¤ì¤Æ¤¤¤ë¡£
¤â¤¦°ì¤Ä¤Î¥ª¥Õ¥£¥¹¥¹¥¤¡¼¥ÈÍѤÎÊݸ·Á¼°¤Ç¤¢¤ë Office Open XML ¤â¡¢ISO¤Ë¤è¤êɸ½àµ¬³Ê¤È¤·¤ÆÇ§Äꤵ¤ì¤Æ¤¤¤ë¡£
¥Þ¥¤¥¯¥í¥½¥Õ¥È ¤Î
Microsoft Office ¤Ç¤Ï Microsoft Office XP ¤Î¥Ð¡¼¥¸¥ç¥ó¤«¤éXML·Á¼°¤Ø¤ÎÂбþ¤ò»Ï¤á¡¢Microsoft Office 2003 ¤ÇÆÈ¼«¤ÎÄêµÁ¤Î
XML Schema ¤¬¥µ¥Ý¡¼¥È¤µ¤ì¤ë¤Ë»ê¤Ã¤¿¡£
Microsoft Office 2007 ¤Ç¤Ï¥Ç¥Õ¥©¥ë¥È¤ÎÊݸÊý¼°¤¬XML¤È¤Ê¤Ã¤¿¡ÊOffice Open XML¡Ë¡£
Microsoft Office 2007 ¤Î¤¤¤¯¤Ä¤«¤Îµ¡Ç½¤Ç¤Ï¡¢XML¥Õ¥¡¥¤¥ë¤òÍøÍѼԤ¬»ØÄꤷ¤¿¥¹¥¡¼¥Þ (¤¿¤À¤·DTD¤Ç¤Ï¤Ê¤¤) ¤Ë±è¤Ã¤ÆÊÔ½¸¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤ë¡£
¤Þ¤¿¥Þ¥¤¥¯¥í¥½¥Õ¥È¤Ï¡¢Microsoft Office 2003 ¤Î¤¿¤á¤Î¥Õ¥¡¥¤¥ë¥Õ¥©¡¼¥Þ¥Ã¥È¸ß´¹À¥¥Ã¥È¤ò¸ø³«¤·¤Æ¤¤¤ë¡£
¤³¤Î¸ß´¹À¥¥Ã¥È¤ò»È¤¦¤³¤È¤Ë¤è¤ê¡¢°ÊÁ°¤Î¥Ð¡¼¥¸¥ç¥ó¤Î Microsoft Office ¤ÇºîÀ®¤µ¤ì¤¿Ê¸½ñ¤òXML¤Ë½àµò¤·¤¿¿·¤·¤¤¥Õ¥©¡¼¥Þ¥Ã¥È¤ÇÊݸ¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¡£
¥¨¥Ç¥£¥¿¤Ë¤Ä¤¤¤Æ¤Ï¸½ºß¡¢Â¿¤¯¤ÎXML¥¨¥Ç¥£¥¿¤¬»È¤¨¤ë¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤ë¡£
XML¥¤¥ó¥Õ¥©¥á¡¼¥·¥ç¥ó¥»¥Ã¥È
XML¥¤¥ó¥Õ¥©¥á¡¼¥·¥ç¥ó¥»¥Ã¥È (
XML Information Set ¡¢¥¤¥ó¥Õ¥©¥»¥Ã¥È¡¢
Infoset ) ¤Ï¡¢XMLʸ½ñ¤ÎÃê¾ÝŪ¤Ê
¥Ç¡¼¥¿¥â¥Ç¥ë ¤ò¡Ö¾ðÊó¹àÌÜ¡× (information item) ¤Î½¸¹ç¤ò»È¤Ã¤Æµ¬Äꤷ¤Æ¤¤¤ë¡£
World Wide Web Consortium (W3C) ¤«¤é¡¢2001ǯ10·î24Æü¤ËXML¥¤¥ó¥Õ¥©¥á¡¼¥·¥ç¥ó¥»¥Ã¥È»ÅÍͤ¬´«¹ð¤µ¤ì¤¿¡£
XML¥¤¥ó¥Õ¥©¥á¡¼¥·¥ç¥ó¥»¥Ã¥È¤Î»ÅÍͤˤª¤±¤ëÄêµÁ¤Ï¡¢À°·Á¼°XMLʸ½ñÆâ¤Î¾ðÊó¤ò»²¾È¤¹¤ëɬÍפ¬¤¢¤ë¾¤Î»ÅÍͤˤª¤¤¤Æ»È¤ï¤ì¤ë¤³¤È¤¬ÁÛÄꤵ¤ì¤Æ¤¤¤ë¡£
°ì¤Ä¤ÎXMLʸ½ñ¤Ë¤Ï¡¢¤½¤ÎXMLʸ½ñ¤¬À°·Á¼°¤Ç¤¢¤ê¤«¤ÄXML̾Á°¶õ´Ö¤ÎÀ©Ìó¤Ë½àµò¤·¤Æ¤¤¤ë¾ì¹ç¡¢°ì¤Ä¤ÎXML¥¤¥ó¥Õ¥©¥á¡¼¥·¥ç¥ó¥»¥Ã¥È¤¬¤¢¤ë¡£
XML¥¤¥ó¥Õ¥©¥á¡¼¥·¥ç¥ó¥»¥Ã¥È¤ò¹½À®¤¹¤ë¤¿¤á¤Ë¤Ï¡¢¤½¤ÎXMLʸ½ñ¤¬ÂÅÅö¤ÊXMLʸ½ñ¤Ç¤¢¤ë¤³¤È¤Ï¡¢É¬¿ÜÍ×·ï¤Ç¤Ï¤Ê¤¤¡£
°ì¤Ä¤ÎXML¥¤¥ó¥Õ¥©¥á¡¼¥·¥ç¥ó¥»¥Ã¥È¤Ë¤Ï¡¢¼¡¤Ë¼¨¤¹11¼ïÎà¤Î¾ðÊó¹àÌܤ¬¤¢¤ë¡£
ʸ½ñ¾ðÊó¹àÌÜ
Í×ÁǾðÊó¹àÌÜ
°À¾ðÊó¹àÌÜ
½èÍýÌ¿Îá¾ðÊó¹àÌÜ
Ÿ³«¤µ¤ì¤Ê¤«¤Ã¤¿¼ÂÂξðÊó¹àÌÜ
ʸ»ú¾ðÊó¹àÌÜ
¥³¥á¥ó¥È¾ðÊó¹àÌÜ
ʸ½ñ·¿Àë¸À¾ðÊó¹àÌÜ
²òÀÏÂоݳ°¼ÂÂξðÊó¹àÌÜ
µË¡¾ðÊó¹àÌÜ
̾Á°¶õ´Ö¾ðÊó¹àÌÜ
XML¥¤¥ó¥Õ¥©¥á¡¼¥·¥ç¥ó¥»¥Ã¥È¤Î Second Edition (Âè2ÈÇ) ¤¬2004ǯ2·î4Æü¤Ë´«¹ð¤µ¤ì¤¿¡£
¥¤¥ó¥Õ¥©¥á¡¼¥·¥ç¥ó¥»¥Ã¥È¤Ø¤ÎÄɲþðÊó
¥¤¥ó¥Õ¥©¥á¡¼¥·¥ç¥ó¥»¥Ã¥È¤Ø¤ÎÄɲþðÊ󤹤ʤï¤Á¥¤¥ó¥Õ¥©¥á¡¼¥·¥ç¥ó¥»¥Ã¥È¤ËÂФ¹¤ë²þÊѤϡ¢¥¹¥¡¼¥Þ¤Ë¤è¤ëÂÅÅöÀ¸¡¾Ú¤ò¹Ô¤¦ºÝ¤Ë¡¢¥¤¥ó¥Õ¥©¥á¡¼¥·¥ç¥ó¥»¥Ã¥È¤ò²þÊѤ¹¤ë¤³¤È¤ò¤¤¤¦¡£
Î㤨¤Ð¡¢¥¤¥ó¥Õ¥©¥á¡¼¥·¥ç¥ó¥»¥Ã¥È¤Ë°À¤Î´ûÄêÃÍ (¥Ç¥Õ¥©¥ë¥ÈÃÍ) ¤òÄɲ乤뤳¤È¤Ê¤É¤¬¤¢¤ë¡£¾ðÊó¤òÄɲ䵤줿¥¤¥ó¥Õ¥©¥á¡¼¥·¥ç¥ó¥»¥Ã¥È¤Ï¡¢¥¹¥¡¼¥Þ¸¡¾Ú¸å¥¤¥ó¥Õ¥©¥á¡¼¥·¥ç¥ó¥»¥Ã¥È¤¢¤ë¤¤¤ÏPSVI (post-schema-validation infoset) ¤È¸Æ¤Ð¤ì¤ëXML ¡£
¥¤¥ó¥Õ¥©¥á¡¼¥·¥ç¥ó¥»¥Ã¥È¤Ø¤ÎÄɲþðÊó¤Ë¤Ä¤¤¤Æ¤Ï¡¢»¿ÈÝξÏÀ¤¬¤¢¤ë¡£
¥¤¥ó¥Õ¥©¥á¡¼¥·¥ç¥ó¥»¥Ã¥È¤Ë¾ðÊó¤òÄɲ乤뤳¤È¤ËÈÝÄêŪ¤Ê¸«²ò¤È¤·¤Æ¤Ï¡¢¥¤¥ó¥Õ¥©¥á¡¼¥·¥ç¥ó¥»¥Ã¥È¤Ø¤ÎÄɲþðÊó¤Ï¥â¥¸¥å¡¼¥ëÀ¤ò¿¯³²¤·Áê¸ß±¿ÍÑÀ¤ÎÌ̤ǤÎÌäÂê¤ò°ú¤µ¯¤³¤¹´í¸±¤¬¤¢¤ë¤È¤¹¤ë¡£
¤Ê¤¼¤Ê¤é¡¢Æ±¤¸XMLʸ½ñ¤ò°·¤¦Ê£¿ô¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¥½¥Õ¥È¥¦¥§¥¢¤Ï¡¢¼õ¤±¼è¤ë¾ðÊó¤¬ÂÅÅöÀ¸¡¾Ú¤ò¹Ô¤¦¤«¤É¤¦¤«¤Ë°Í¸¤·¤Æ¤·¤Þ¤¦¤«¤é¤Ç¤¢¤ë¡£
¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¥½¥Õ¥È¥¦¥§¥¢¤¬¡¢ÂÅÅöÀ¸¡¾Ú¤ò¹Ô¤¦¾ì¹ç¤Ë¼õ¤±¼è¤ë¾ðÊó¤È¡¢ÂÅÅöÀ¸¡¾Ú¤ò¹Ô¤ï¤Ê¤¤¾ì¹ç¤Ë¼õ¤±¼è¤ë¾ðÊ󤬡¢°Û¤Ê¤Ã¤Æ¤·¤Þ¤¦¤Î¤Ç¤¢¤ëRELAX , James Clark , 4 Jun 2002¡£
XML Schema ¤Ï¡¢XML¥¤¥ó¥Õ¥©¥á¡¼¥·¥ç¥ó¥»¥Ã¥È¤Ø¤ÎÄɲþðÊó¤ò°·¤¦¤³¤È¤¬¤Ç¤¤ë¡£
RELAX NG ¤Ï¡¢¥¤¥ó¥Õ¥©¥á¡¼¥·¥ç¥ó¥»¥Ã¥È¤Ø¤ÎÄɲþðÊó¤ò°·¤ï¤Ê¤¤¡£
RELAX NG ¤Ç¤Ï¡¢¥¤¥ó¥Õ¥©¥á¡¼¥·¥ç¥ó¥»¥Ã¥È¤Ø¤ÎÄɲþðÊó¤ËÈÝÄêŪ¤ÊΩ¾ì¤ò¤È¤Ã¤Æ¤¤¤ë¡£
Îò»Ë
¥Ç¥¸¥¿¥ë¥á¥Ç¥£¥¢¤Î½ÐÈǤò¹Ô¤Ã¤Æ¤¤¿¿Í¡¹¤Ï¡¢1980ǯ¤Î¸åȾ—
¥¤¥ó¥¿¡¼¥Í¥Ã¥È ¤¬¹¤¯»È¤ï¤ì¤ë¤è¤¦¤Ë¤Ê¤ë¤è¤êÁ°¤Î»þ´ü—¤Ë¤Ï´û¤Ë¡¢Æ°Åª¤Ë¾ðÊó¤ò»ë³Ð²½¤¹¤ë¤¿¤á¤Îµ»½Ñ¤È¤·¤Æ¡¢ÈÆÍÑŪ¤Ê
¥Þ¡¼¥¯¥¢¥Ã¥×¸À¸ì ¤Ç¤¢¤ë
Standard Generalized Markup Language (SGML) ¤¬Â¿¤¯¤ÎÍÑÅÓ¤ËŬ¤·¤Æ¤¤¤ë¤³¤È¤ò¡¢Íý²ò¤·¤Æ¤¤¤¿
[ ][ ]¡£
SGML¤Ï¤¤¤¯¤Ä¤«¤ÎʬÌî¤ÇÉáµÚ¤·¤Æ¤¤¤¿¤¬¡¢»ÅÍͤ¬Ê£»¨¤Ç
½èÍý·Ï ¤Î³«È¯¤¬Æñ¤·¤¯¡¢¤Þ¤¿SGMLʸ½ñ¤Î½èÍý¤¬½Å¤¤¤È¤¤¤¦·çÅÀ¤¬¤¢¤Ã¤¿¡£1990ǯÂåȾ¤Ð¤Þ¤Ç¤Ë¤Ï¡¢SGML¤ò¼ÂºÝ¤Ë»È¤Ã¤Æ¤¤¤¿°ìÄê¤Î¿Í¡¹¤Ï¡¢¿·¤·¤¯¸½¤ì¤¿
World Wide Web (¥¦¥§¥Ö) ¤ò·Ð¸³¤·¤¿¡£
¤½¤¦¤·¤¿¿Í¡¹¤Ï¡¢¥¦¥§¥Ö¤¬È¯Å¸¤¹¤ë¤³¤È¤Ë¤è¤êľÌ̤¹¤ë¤¤¤¯¤Ä¤«¤ÎÌäÂê¤ËÂФ·¤Æ¡¢SGML¤¬²ò·èºö¤òÄ󶡤¹¤ë¤È¡¢¶¯¤¯¹Í¤¨¤ë¤è¤¦¤Ë¤Ê¤Ã¤¿¡£
Dan Connolly ¤Ï¡¢¼«Ê¬¤¬1995ǯ¤Ë
World Wide Web Consortium (W3C) ¤Î¥¹¥¿¥Ã¥Õ¤Ë¤Ê¤Ã¤¿»þ¤Ë¡¢SGML¤òW3C¤Î¥¢¥¯¥Æ¥£¥Ó¥Æ¥£¤Î°ìÍ÷¤ËÄɲä·¤¿¡£
¤³¤Î¥¢¥¯¥Æ¥£¥Ó¥Æ¥£¤Îºî¶È¤Ï¡¢1996ǯ¤ÎÃæº¢¤Ë
¥µ¥ó¡¦¥Þ¥¤¥¯¥í¥·¥¹¥Æ¥à¥º ¤Î¥¸¥ç¥ó¡¦¥Ü¥µ¥Ã¥¯¤¬¡¢¤³¤Î¥¢¥¯¥Æ¥£¥Ó¥Æ¥£¤Ë´Ø¤¹¤ëÀë¸À¤òµ¯Á𤷥¢¥¯¥Æ¥£¥Ó¥Æ¥£¤Î¶¦Æ±ºî¶È¼Ô¤òÊç¤ë¤³¤È¤Ç¡¢»Ï¤Þ¤Ã¤¿¡£
¥Ü¥µ¥Ã¥¯¤Ï¡¢SGML¤È¥¦¥§¥Ö¤ÎÁÐÊý¤ò·Ð¸³¤·¤Æ¤¤¤¿¿Í¡¹¤Î¾®¤µ¤Ê¥³¥ß¥å¥Ë¥Æ¥£¤ÈÎɹ¥¤Ê´Ø·¸¤òÃÛ¤¤¤Æ¤¤¤¿¡£
¥Ü¥µ¥Ã¥¯¤Ï¡¢¼«Ê¬¤Îºî¶È¤Ë¤ª¤¤¤Æ¥Þ¥¤¥¯¥í¥½¥Õ¥È ¤«¤é»Ù±ç¤ò¼õ¤±¤¿¡£
XML¤Î»ÅÍͤϡ¢11¿Í¤Î¥á¥ó¥Ð¡¼¤«¤é¤Ê¤ë¥ï¡¼¥¥ó¥°¥°¥ë¡¼¥×¤Ë¤è¤êÊÔ½¸¤µ¤ì
[¤³¤Î¥ï¡¼¥¥ó¥°¥°¥ë¡¼¥×¤Ï¤â¤È¤â¤È¤Ï "Editorial Review Board" ¤È¸Æ¤Ð¤ì¤Æ¤¤¤¿¡£¤³¤Î¥ï¡¼¥¥ó¥°¥°¥ë¡¼¥×¤ÎºÇ½é¤Î¥á¥ó¥Ð¡¼¤ÈXML»ÅÍͤΠfirst edition ¤¬´°À®¤¹¤ë¤Þ¤Ç¤Ë²Ã¤ï¤Ã¤Æ¤¤¤¿7¿Í¤Î¥á¥ó¥Ð¡¼¤Ï¡¢XML 1.0 first edition ¤ÎW3C´«¹ð¤ÎºÇ¸å¤Ë°ìÍ÷¤·¤Æ·ÇºÜ¤µ¤ì¤Æ¤¤¤ë¡£»²¾È: http://www.w3.org/TR/1998/REC-xml-19980210#sec-xml-wg]¡¢¤À¤¤¤¿¤¤150¿Í¤«¤é¹½À®¤µ¤ì¤ë Interest Group ¤Î¥á¥ó¥Ð¡¼¤«¤é»Ù±ç¤ò¼õ¤±¤Æ¡¢ºîÀ®¤µ¤ì¤¿¡£
µ»½ÑŪ¤ÊÏÀµÄ¤¬ Interest Group ¤Î
¥á¡¼¥ê¥ó¥°¥ê¥¹¥È ¤ÇÄ󵯤µ¤ì¡¢Ä󵯤µ¤ì¤¿ÏÀµÄ¤Ï¡¢¹ç°Õ·ÁÀ®¤Ë¤è¤ê²ò·è¤µ¤ì¤¿¡£¹ç°Õ·ÁÀ®¤¬¤Ç¤¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢¥ï¡¼¥¥ó¥°¥°¥ë¡¼¥×¤Î¥á¥ó¥Ð¡¼¤ÎÅêɼ¤Ë¤è¤ë¿¿ô¤Ë¤è¤ê¡¢²ò·è¤µ¤ì¤¿¡£
¤³¤Î¥¢¥¯¥Æ¥£¥Ó¥Æ¥£¤Ç¹Ô¤ï¤ì¤¿Àß·×¾å¤Î·èÄê¤È¤½¤Îº¬µò¤ÎµÏ¿¤Ï¡¢Michael Sperberg-McQueen ¤¬1997ǯ12·î4Æü¤ËÊÔ½¸¤·¤¿
Reports ¡£
¤³¤Î¥¢¥¯¥Æ¥£¥Ó¥Æ¥£¤Ç¤Ï¡¢
¥¸¥§¡¼¥à¥º¡¦¥¯¥é¡¼¥¯ ¤¬¡¢µ»½Ñ¥ê¡¼¥À¤È¤·¤Æ¹×¸¥¤·¤¿¡£
¥¯¥é¡¼¥¯¤Î¹×¸¥¤È¤·¤ÆÆÃÉ®¤µ¤ì¤ë¤Î¤Ï¡¢¶õÍ×ÁÇ "<¶õ/>" ¤ÎƳÆþ¤È¡¢¤³¤Îµ»½Ñ¤Î̾¾Î "Extensible Markup Language" (XML) ¤Î̿̾¤Ç¤¢¤ë¡£
¤³¤Îµ»½Ñ¤Î̾¾Î¤È¤·¤Æ¡¢Â¾¤ËÄ󰯤µ¤ì¶ãÌ£¤µ¤ì¤¿¤â¤Î¤Î°ìÉô¤ò¼¡¤Ë¼¨¤¹¡£
MAGMA (Minimal Architecture for Generalized Markup Applications)
SLIM (Structured Language for Internet Markup)
MGML (Minimal Generalized Markup Language)
XML»ÅÍͤΥ¥¥ó¥°¥°¥ë¡¼¥×¤Ç¤Ï¥¸¥ç¥ó¡¦¥Ü¥µ¥Ã¥¯¤¬µÄŤò̳¤á¤¿¡£
¤³¤Î¥ï¡¼¥¥ó¥°¥°¥ë¡¼¥×¤Ç¤Ï¥¸¥§¡¼¥à¥º¡¦¥¯¥é¡¼¥¯¤¬µ»½Ñ¥ê¡¼¥À¤ò̳¤á¤¿¡£
¥ï¡¼¥¥ó¥°¥°¥ë¡¼¥×¤Î¶¦Æ±¥¨¥Ç¥£¥¿¤Ï¡¢¤â¤È¤â¤È¤Ï¥Æ¥£¥à¡¦¥Ö¥ì¥¤¤È Michael Sperberg-McQueen ¤Ç¤¢¤Ã¤¿¡£
¤³¤Î¥¢¥¯¥Æ¥£¥Ó¥Æ¥£¤Î¥×¥í¥¸¥§¥¯¥È¤ÎÅÓÃæ¤Ç¡¢¥Ö¥ì¥¤¤Ï
¥Í¥Ã¥È¥¹¥±¡¼¥×¡¦¥³¥ß¥å¥Ë¥±¡¼¥·¥ç¥ó¥º ¤È¤Î¥³¥ó¥µ¥ë¥Æ¥£¥ó¥°¤Î·ÀÌó¤ò·ë¤ó¤À¡£
¤³¤Î¥Ö¥ì¥¤¤È¥Í¥Ã¥È¥¹¥±¡¼¥×¤Î·ÀÌó¤ËÂФ·¤Æ¤Ï¡¢¥Þ¥¤¥¯¥í¥½¥Õ¥È¤¬¶¯¤¯¹³µÄ¤·¤¿¡£
¥Ö¥ì¥¤¤Ï¡¢¥¨¥Ç¥£¥¿¤ÎÌò³ä¤ò°ì»þŪ¤Ë¼¤¹¤ë¤³¤È¤òÍ×ÀÁ¤µ¤ì¤¿¡£
¤³¤Î¤³¤È¤Ë´Ø¤·¤Æ¡¢¥ï¡¼¥¥ó¥°¥°¥ë¡¼¥×¤Ç¤Ï·ã¤·¤¤µÄÏÀ¤¬¹Ô¤ï¤ì¤¿¡£
¤³¤ÎµÄÏÀ¤Ï¡¢ºÇ½ªÅª¤Ë¤Ï¥Þ¥¤¥¯¥í¥½¥Õ¥È¤Î Jean Paoli ¤¬Âè3¤Î¶¦Æ±¥¨¥Ç¥£¥¿¤Ë½¢¤¯¤³¤È¤Ç²ò·è¤·¤¿¡£
¤Ê¤ªXML¥ï¡¼¥¥ó¥°¥°¥ë¡¼¥×¤Ë¤Ï¡¢ÆüËܿͤȤ·¤Æ¤Ï¤¿¤À°ì¿Í¼ÅÄ¿¿ ¤¬¥á¥ó¥Ð¡¼¤È¤·¤Æ1997ǯ¤Ë»²²Ã¤·¤¿¡£
XML¥ï¡¼¥¥ó¥°¥°¥ë¡¼¥×¤Ï¡¢Ä¾Àܲñ¤Ã¤Æ³èư¤·¤¿¤³¤È¤Ï¿ô²ó¤·¤«¤Ê¤«¤Ã¤¿¡ÊºÇ½é¤Î²ñµÄ¤Ï1997ǯ8·î22Æü¡Ë¡£
XML»ÅÍͤÎÀ߷פϡ¢ÅŻҥ᡼¥ë¤È½µ¤Ë°ìÅÙ¤ÎÅÅÏòñµÄ¤ÎÁÐÊý¤ò͵¡Åª¤Ë³èÍѤ¹¤ë¤³¤È¤Ë¤è¤ê¡¢À®¤·¿ë¤²¤é¤ì¤¿¡£
XML»ÅÍͤÎÀ߷פǤϡ¢SGML¤Î·çÅÀ¤ò²ò·è¤¹¤Ù¤¯Ê¸Ë¡¤ò´ÊÁDz½¤·¤¿¡£
XML»ÅÍͤˤª¤±¤ëÀß·×¾å¤Î¤¤¤¯¤Ä¤«¤ÎÂ礤ʷèÄê¤Ï¡¢1996ǯ¤Î7·î¤«¤é11·î¤Þ¤Ç¤Î´Ö¤Î12½µ´Ö¤Î¿¿·õ¤Êºî¶È¤Î¤Ê¤«¤Ç¹Ô¤ï¤ì¤¿¡£
¤³¤Î12½µ´Ö¤Îºî¶È¤Î¸å (1996ǯ11·î) ¤Ë¡¢XML¤ÎºÇ½é¤Î¥ï¡¼¥¥ó¥°¥É¥é¥Õ¥È¤¬¸øÉ½¤µ¤ì¤¿
Extensible ¡£
¤½¤Î¸å¤â1997ǯ¤ò¤È¤ª¤·¤ÆÀ߷׺î¶È¤Ï³¤±¤é¤ì¡¢XML 1.0 ¤Ï¡¢1998ǯ 2·î10Æü ¤ËW3C ¤Î´«¹ð¤È¤Ê¤Ã¤¿¡£
XML 1.0 ¤Ï¡¢¥ï¡¼¥¥ó¥°¥°¥ë¡¼¥×¤¬ÌÜɸ¤È¤·¤Æ¤¤¤¿¼¡¤ÎÌÜɸ¤òãÀ®¤·¤¿¤È¡¢É¾²Á¤¹¤ë¿Í¡¹¤¬Â¿¤¤¡£
¥¤¥ó¥¿¡¼¥Í¥Ã¥È ´Ä¶¤Ç¤Î»È¤¤¤ä¤¹¤µ
ÈÆÍÑŪ¤ÊÍÑÅӤǤλȤ¤¤ä¤¹¤µ
SGML ¤È¤Î¸ß´¹À
XMLʸ½ñ¤ò°·¤¦¥½¥Õ¥È¥¦¥§¥¢ ¤Î³«È¯¤òÍÆ°×¤Ë¤¹¤ëµ¡Ç½
¥ª¥×¥·¥ç¥Ê¥ë¤Êµ¡Ç½¤ÎºÇ¾®²½
XMLʸ½ñ¤ÎÆÉ¤ß¤ä¤¹¤µ
·Á¼°¤Ë¨¤·¤Æ¤¤¤ë¤³¤È (formality)
´Ê·é¤µ
XMLʸ½ñ¤ÎºîÀ®¡¦ÊÔ½¸¤ÎÍÆ°×¤µ
µ»½Ñ¼Ô¤Ë¤È¤Ã¤Æ¤ÏXML¤ÏSGML¤è¤ê¤â½¬ÆÀ¤·¤ä¤¹¤¤µ»½Ñ¤Ç¤¢¤ê¡¢¤Þ¤¿½èÍý·Ï¤Î³«È¯¤¬Íưפˤʤ俤³¤È¤ÇÄ㤤ÈñÍѤÇXMLµ»½Ñ¤òÍøÍѤǤ¤ë¤è¤¦¤Ë¤Ê¤Ã¤¿¡£
¸½ºß¤Ç¤ÏXML¤Ï¹¤¯ÉáµÚ¤·¤Æ¤¤¤ëµ»½Ñ¤Ç¤¢¤ë¡£
XML¤ÎÁ°¿È¤Ç¤¢¤ëSGML¤ÈƱÍͤËXML¤Ç¤â¡¢¤¤¤¯¤Ä¤«¤Î¾éĹ¤Ê¹½Ê¸Í×ÁǤ¬¤¢¤ê¡¢Í×Áǵ½Ò»Ò¤Î·«¤êÊÖ¤·¤ò»ÅÍͤ˴ޤó¤Ç¤¤¤ë¡£
ʸ½ñ¤òû¤¯¤¹¤ë¤³¤È¤Ï¡¢XML¥ï¡¼¥¥ó¥°¥°¥ë¡¼¥×¤Ç¤Ï¡¢XML¤Î¹½Â¤¤Ë¤ª¤¤¤ÆËܼÁŪ¤ÊÌäÂê¤È¤Ï¸«¤Ê¤µ¤ì¤Ê¤«¤Ã¤¿¡£
µ¯¸»
XML¤Ï¡¢
ISO ɸ½à
Standard Generalized Markup Language (SGML) ¤Î¥µ¥Ö¥»¥Ã¥È¤Ç¤¢¤ë¡£
XML¤Î¤Û¤È¤ó¤É¤ÏSGML¤«¤éÊѹ¹¤µ¤ì¤º¤ËºÎ¤êÆþ¤ì¤é¤ì¤Æ¤¤¤ë¡£
XML¤¬SGML¤«¤éºÎ¤êÆþ¤ì¤é¤ì¤Æ¤¤¤ëµ»½ÑŪ¤ÊÍ×ÁǤˤϼ¡¤Î¤â¤Î¤¬´Þ¤Þ¤ì¤ë¡£
ÏÀÍýŪ¤Ê¹½Â¤¤ÈʪÍýŪ¤Ê¹½Â¤¤òʬΥ¤¹¤ë (Í×ÁǤȼÂÂÎ)
ʸˡ¤Ë´ð¤Å¤¤¤¿ÂÅÅöÀ¸¡¾Ú (DTD )
¥Ç¡¼¥¿¤È¥á¥¿¥Ç¡¼¥¿ ¤òʬΥ¤¹¤ë (Í×ÁǤȰÀ)
º®¹çÆâÍÆ (mixed content¡¢Í×ÁÇ¤ÎÆâÍÆ¤È¤·¤Æ»ÒÍ×ÁǤÈʸ»úÎó¥Ç¡¼¥¿¤¬º®ºß¤¹¤ëÆâÍÆ¥â¥Ç¥ë)
ɽ¸½¤«¤é½èÍý¤òʬΥ¤¹¤ë (½èÍýÌ¿Îá ; processing instruction)
»³³ç¸Ì¤Î¹½Ê¸
XML¤¬SGML¤«¤éºÎ¤êÆþ¤ì¤Ê¤«¤Ã¤¿µ»½ÑÍ×ÁǤȤ·¤Æ¤Ï¡¢SGMLÀë¸À¤¬¤¢¤ë (XML¤Ç¤Ïʸ½ñ¤Îʸ»úÉ乿²½Êý¼° ¤È¤·¤ÆUTF-8 ¤ÈUTF-16 ¤òºÎÍѤ·¤Æ¤¤¤ë) ¡£
XML¤Î¾¤Îµ»½ÑŪµ¯¸»¤È¤·¤Æ¤Ï¡¢¼¡¤Î3¤Ä¤¬µó¤²¤é¤ì¤ë¡£
Text Encoding Initiative (TEI)
Text Encoding Initiative (TEI¡¢:en:Text Encoding Initiative ) ¤Ï¡¢¡ÖžÁ÷¹½Ê¸¡×¤È¤·¤Æ»È¤¦¤¿¤á¤ÎSGML¤Î¥×¥í¥Õ¥¡¥¤¥ë¤òÄêµÁ¤·¤Æ¤¤¤ë¡£
HyperText Markup Language (HTML)
HyperText Markup Language (HTML) ¤Ç¤Ï¡¢Ê¸½ñ¤Îʸ»úÉ乿²½½¸¹ç¤Ï¥ê¥½¡¼¥¹¤Îʸ»úÉ乿²½Êý¼°¤ÈʬΥ¤µ¤ì¤Æ¤¤¤ë¡£
Extended Reference Concrete Syntax (ERCS)
Extended Reference Concrete Syntax (ERCS) ¤«¤é¡¢XML 1.0 ¤Î̿̾µ¬Â§¤¬ºÎÍѤµ¤ì¤¿¡£ERCS¤Ï¡¢½½Ï»¿Ê¿ô¤Îʸ»ú»²¾È¤òƳÆþ¤·¤Æ¤ª¤ê¡¢Á´¤Æ¤ÎUnicode ¤Îʸ»ú¤ò»È¤¦¤³¤È¤¬¤Ç¤¤ë¤è¤¦¤Ë¤¹¤ë¤¿¤á¤Ë»²¾È¤Î³µÇ°¤òƳÆþ¤·¤Æ¤¤¤ë¡£
XML»ÅÍͤÎÀ߷פ˴ؤ¹¤ëµÄÏÀ¤Î¤Ê¤«¤Ç³«È¯¤µ¤ì¤¿³×¿·Åª¤Ê¹Í¤¨Êý¤Ë¤Ï¡¢¼¡¤Î¤â¤Î¤¬´Þ¤Þ¤ì¤ë¡£
XMLʸ½ñ¤Îʸ»úÉ乿²½Êý¼° (ʸ»ú¥³¡¼¥É ) ¤Î·èÄê¤Î¥¢¥ë¥´¥ê¥º¥à ¤È¡¢XMLÀë¸À¤Ë¤ª¤±¤ëʸ»úÉ乿²½Êý¼°¤Î»ØÄê
½èÍýÌ¿Îá ¤Î¥¿¡¼¥²¥Ã¥È
xml:space °¶õÍ×ÁǤΥ¿¥°¤Î¤¿¤á¤Î¿·¤·¤¤Í×ÁǽªÎ»¶èÀÚ¤ê
EBCDIC ¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ç»È¤ï¤ì¤Æ¤¤¤ë¹Ô½ªÃ¼Ê¸»ú¤ò»È¤¨¤ë¤è¤¦¤Ë¤¹¤ë¡£
Unicode 2.0 ¤Îʸ»ú½¸¹ç¤Ë´Þ¤Þ¤ì¤Ê¤¤Ê¸»ú¤ò»È¤¨¤ë¤è¤¦¤Ë¤¹¤ë¡£
¥Ð¡¼¥¸¥ç¥ó
2007ǯ10·î¸½ºß¤Î»þÅÀ¤Ç¤Ï¡¢XML¤Ë¤Ï2¤Ä¤Î¥Ð¡¼¥¸¥ç¥ó¤¬¤¢¤ë¡£
XML 1.0
XML 1.0 ¤¬ºÇ½é¤ËºöÄꤵ¤ì¤¿¤Î¤Ï1998ǯ2·î10Æü¤Ç¤¢¤Ã¤¿¡£1998ǯ¤ÎºöÄê¸å¡¢¿ôÅ٤βþÄû (½¤Àµ) ¤ò·Ð¤Æ¤¤¤ë¡£¤³¤Î¿ôÅ٤βþÄû¤Ë¤Ä¤¤¤Æ¤Ï¿·¤·¤¤¥Ð¡¼¥¸¥ç¥óÈÖ¹æ¤Ï³ä¤êÅö¤Æ¤é¤ì¤Æ¤¤¤Ê¤¤¡£¸½ºß¤Î»þÅÀ¤Ç¤Ï¡¢Fourth Edition (Âè4ÈÇ) ¤¬ºÇ¿·ÈǤǤ¢¤ë¡£XML 1.0 Fourth Edition ¤Ï¡¢2006ǯ8·î16Æü¤ËW3C¤«¤é¸ø³«¤µ¤ì¤¿¡£XML 1.0 ¤Ï¡¢Â¿¤¯¤Î½èÍý·Ï¤¬¼ÂÁõ¤µ¤ì¡¢¸½ºß¤Ë¤ª¤¤¤Æ¤â°ìÈÌŪ¤ÊÍÑÅÓ¤ËÂФ·¤Æ¤ÏºÎÍѤ¬´«¤á¤é¤ì¤ë¤È¤µ¤ì¤Æ¤¤¤ë¡£
XML 1.1
XML 1.1 ¤¬ºÇ½é¤ËºöÄꤵ¤ì¤¿¤Î¤Ï2004ǯ2·î4Æü¤Ç¤¢¤ê¡¢XML 1.0 Third Edition ¤¬¸ø³«¤µ¤ì¤¿Æü¤ÈƱ¤¸Æü¤Ç¤¢¤Ã¤¿¡£¸½ºß¤Î»þÅÀ¤Ç¤Ï¡¢Second Edition (Âè2ÈÇ) ¤¬ºÇ¿·ÈǤǤ¢¤ë¡£XML 1.1 Second Edition ¤Ï¡¢2006ǯ8·î16Æü¤ËW3C¤«¤é¸ø³«¤µ¤ì¤¿¡£XML 1.1 ¤Ë¤Ï¤¤¤¯¤Ä¤«¤Îµ¡Ç½¤¬Äɲäµ¤ì¤Æ¤¤¤ë¡£XML 1.1 ¤ÇÄɲ䵤줿µ¡Ç½¤Ë¤Ä¤¤¤Æ¤ÏµÄÏÀ¤ÎÂоݤȤʤäƤ¤¤ë¡£XML 1.1 ¤ÇÄɲ䵤줿µ¡Ç½¤Ï¡¢XML ¤ò¤¤¤¯¤Ä¤«¤Î¾õ¶·¤Ç»È¤¤°×¤¯¤¹¤ë¤³¤È¤òÌܻؤ·¤Æ¤¤¤ë¡£XML 1.1 ¤ÇÄɲ䵤줿¼ç¤Êµ¡Ç½¤Ï¼¡¤Î¤È¤ª¤ê¤Ç¤¢¤ë¡£
XML 1.1 ¤ò¼ÂÁõ¤·¤Æ¤¤¤ë XML ¤Î½èÍý·Ï¤Ï¡¢¤¢¤Þ¤ê¿¤¯¤Ê¤¤¡£XML 1.1 ¤Ï¡¢XML 1.1 ÆÃͤε¡Ç½¤òɬÍפȤ¹¤ë¾õ¶·¤Ë¤ª¤¤¤Æ¤Î¤ß¡¢ºÎÍѤò´«¤á¤é¤ì¤ë¤È¤µ¤ì¤Æ¤¤¤ë¡£
XML 1.0 ¤È XML 1.1 ¤Ï¡¢Í×ÁÇ̾¤È°À̾¤Ë»È¤¦¤³¤È¤¬¤Ç¤¤ëʸ»ú½¸¹ç ¤Ë¤ª¤¤¤Æ°Û¤Ê¤Ã¤Æ¤¤¤ë¡£XML 1.0 ¤Ç¤Ï¡¢ Unicode 2.0 ¤ÇÄêµÁ¤µ¤ì¤¿Ê¸»ú½¸¹ç¤Î¤ßÍ×ÁÇ̾¤ª¤è¤Ó°À̾¤È¤·¤Æ»È¤¦¤³¤È¤¬¤Ç¤¤ë¡£Unicode 2.0 ¤Îʸ»ú½¸¹ç¤Ë¤Ï¡¢À¤³¦¤Ç»È¤ï¤ì¤Æ¤¤¤ë¤Û¤È¤ó¤É¤Îʸ»ú¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¡£¤·¤«¤· Unicode 2.0 ¤Îʸ»ú½¸¹ç¤Ë¤Ï Unicode 2.0 ¤è¤ê¿·¤·¤¤¥Ð¡¼¥¸¥ç¥ó¤ÇÄɲ䵤줿ʸ»ú¤Ï´Þ¤Þ¤ì¤Æ¤¤¤Ê¤¤¡£¤³¤¦¤·¤¿ Unicode ¤Î¿·¤·¤¤¥Ð¡¼¥¸¥ç¥ó¤ÇÄɲ䵤줿ʸ»ú¤È¤·¤Æ¤Ï¡¢¥â¥ó¥´¥ë¸ì ¡¢¥¯¥á¡¼¥ë¸ì (¥«¥ó¥Ü¥¸¥¢¸ì) ¡¢¥¢¥à¥Ï¥é¸ì ¡¢¥Ó¥ë¥Þ¸ì ¤Ê¤É¤Îʸ»ú¤¬¡¢´Þ¤Þ¤ì¤ë¡£
XML 1.1 ¤Ë¤ª¤¤¤Æ¤Ï¡¢¤Û¤È¤ó¤É¤ÎUnicodeʸ»ú¤òXMLʸ½ñ¤Îʸ»úÎó¥Ç¡¼¥¿¤ä°ÀÃͤȤ·¤Æ»È¤¦¤³¤È¤¬¤Ç¤¤ë¡£¤Þ¤¿ Unicode ¤Î¸½ºß¤Î¥Ð¡¼¥¸¥ç¥ó¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤Ê¤¤Ê¸»ú¤Ç¤µ¤¨¡¢»È¤¦¤³¤È¤¬¤Ç¤¤ë¡£
XML 1.1 ¤ÎÊý¼°¤Ç¤Ï¡¢¤¤¤¯¤Ä¤«¤Îʸ»ú¤Ë¤Ä¤¤¤Æ¤Ï»È¤¦¤³¤È¤¬¤Ç¤¤Ê¤¤¤¬¡¢¤½¤Î¾¤ÎÁ´¤Æ¤Îʸ»ú¤Ï»È¤¦¤³¤È¤¬¤Ç¤¤ë¡£
°ìÊý¤Ç XML 1.0 ¤Ç¤Ï¡¢»ÅÍͤÇÌÀ¼¨Åª¤Ëµ¬Äꤵ¤ì¤¿Ê¸»ú½¸¹ç¤Î¤ß¤ò¡¢XMLʸ½ñ¤Îʸ»úÎó¥Ç¡¼¥¿¤ä°ÀÃͤȤ·¤Æ»È¤¦¤³¤È¤¬¤Ç¤¤ë¡£
¤³¤Î¤¿¤á XML 1.0 ¤Ç¤Ï¡¢Unicode ¤Î¿·¤·¤¤¥Ð¡¼¥¸¥ç¥ó¤ÇÄɲ䵤ì¤ëʸ»ú¤ò°·¤¦¤³¤È¤Ï¤Ç¤¤Ê¤¤¡£
XMLʸ½ñ¤Îʸ»úÎó¥Ç¡¼¥¿¤ä°ÀÃͤˤĤ¤¤Æ¡¢XML 1.1 ¤Ç¤Ï XML 1.0 ¤è¤ê¿¤¯¤Î
À©¸æÊ¸»ú ¤ò»È¤¦¤³¤È¤¬¤Ç¤¤ë¡£
¤·¤«¤·¡Ö·øÏ´À¡×¤Î´ÑÅÀ¤«¤é¡¢XML 1.1 ¤Ç»È¤¨¤ë¤è¤¦¤Ë¤Ê¤Ã¤¿À©¸æÊ¸»ú¤Î¿¤¯¤Ï¡¢
ʸ»ú»²¾È ¤È¤·¤ÆXMLʸ½ñÆâ¤Ëµ½Ò¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£
XML 1.1 ¤Ç»È¤¨¤ë¤è¤¦¤Ë¤Ê¤Ã¤¿À©¸æÊ¸»ú¤Ë¤Ï¡¢2¤Ä¤Î²þ¹Ô¥³¡¼¥É¤¬´Þ¤Þ¤ì¤ë¡£
¤³¤Î2¤Ä¤Î²þ¹Ô¥³¡¼¥É¤Ï¡¢XML 1.1 ¤Î½èÍý·Ï¤Ç¤Ï¶õÇòµ¹æ¤È¤·¤Æ°·¤ï¤ì¤ë¡£
À©¸æÊ¸»ú¤Î¤¦¤Á¤³¤Î¶õÇòµ¹æ¤È¤·¤Æ°·¤ï¤ì¤ëÀ©¸æÊ¸»ú¤Î¤ß¤¬¡¢XML 1.1 ¤Çʸ»ú»²¾È¤ò»È¤ï¤º¤ËľÀܤËXMLʸ½ñ¤Ëµ½Ò¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¡£
¸½ºß¡¢XML 2.0 ¤Ë´Ø¤¹¤ëµÄÏÀ¤¬¹Ô¤ï¤ì¤Æ¤¤¤ë¡£
XML-SW (SW ¤Ï¡¢skunk works
¥¹¥«¥ó¥¯¥ï¡¼¥¯¥¹ ¤Î°ÕÌ£) ¤¬¡¢XML¤ÎºÇ½é¤ÎÀ߷׼Ԥΰì¿Í¤Ë¤è¤Ã¤Æ½ñ¤«¤ì¤¿¡£
XML-SW ¤Ë¤Ï¡¢XML 2.0 ¤Ï¤É¤Î¤è¤¦¤Ê¤â¤Î¤«¤È¤¤¤¦¤³¤È¤Ë¤Ä¤¤¤Æ¤Î¡¢¤¤¤¯¤Ä¤«¤ÎÄ󰯤ò´Þ¤ó¤Ç¤¤¤ë¡£
¤½¤ÎÆâÍÆ¤Ï¼¡¤Î¤È¤ª¤ê¤Ç¤¢¤ë¡£
World Wide Web Consortium (W3C) ¤Ç¤Ï¡¢XML Binary Characterization (XML¥Ð¥¤¥Ê¥êɽ¸½) ¤Î¥ï¡¼¥¥ó¥°¥°¥ë¡¼¥×¤¬³èư¤·¤Æ¤ª¤ê¡¢Æ±¥ï¡¼¥¥ó¥°¥°¥ë¡¼¥×¤Ç¤Ï¡¢XML¥¤¥ó¥Õ¥©¥á¡¼¥·¥ç¥ó¥»¥Ã¥È¤ò¥Ð¥¤¥Ê¥ê·Á¼°¤ËÉ乿²½¤¹¤ë¤¿¤á¤Ë¡¢
¥æ¡¼¥¹¥±¡¼¥¹ ¤ÈÆÃÀ¤òÄ´ºº¤¹¤ëͽÈ÷¸¦µæ¤ò¹Ô¤Ã¤Æ¤¤¤ë¡£
¤³¤Î¥ï¡¼¥¥ó¥°¥°¥ë¡¼¥×¤Ï¡¢¸øÅª¤Êɸ½à¤òÀ©Äꤹ¤ë¤³¤È¤¬Ç§²Ä¤µ¤ì¤Æ¤¤¤ë¤ï¤±¤Ç¤Ï¤Ê¤¤¡£
XML¤ÏÄêµÁ¾åÌÀ³Î¤Ë¥Æ¥¥¹¥È ¤Ë´ð¤Å¤¤¤Æ¤¤¤ë¤¿¤á¡¢ITU-T ¤ÈISO ¤Ï¡¢¤½¤ì¤¾¤ì¤¬Äê¤á¤ë¥Ð¥¤¥Ê¥ê¥¤¥ó¥Õ¥©¥á¡¼¥·¥ç¥ó¥»¥Ã¥È¤ËÂФ·¤Æ¡¢º®Íð¤òÈò¤±¤ë¤¿¤á¤Ë Fast ¤Î̾Á°¤ò»È¤Ã¤Æ¤¤¤ë (»²¾È: ITU-T Rec. X.891 | ISO/IEC 24824-1) ¡£
ÆÃµö¤Î¼çÄ¥
2005ǯ¤Î10·î¤Ë¡¢Scientigo¤È¤¤¤¦¾®¤µ¤Ê´ë¶È¤¬¡¢Æ±´ë¶È¤Î2¤Ä¤ÎÆÃµö
U.S. ¤È
U.S. ¤òXML¤ò»È¤¦¤³¤È¤ËÂФ·¤ÆÅ¬ÍѤ¹¤ë¤³¤È¤ò¡¢¸øÅª¤ËɽÌÀ¤·¤¿¡£
¤³¤Î2¤Ä¤ÎÆÃµö¤Ï¡¢¡ÖÆÃÄê¤Î¡Ø³¬Áع½Â¤¤Ç¤Ï¤Ê¤¤¡ÙÅý¹ç¤µ¤ì¤Æ¤¤¤Ê¤¤ÃæÎ©Åª¤Ê·Á¼°¤Ç¤Î¡¢[¥Ç¡¼¥¿¤Î]¥â¥Ç¥ê¥ó¥°¤È³ÊǼ¤ÈžÁ÷¡×¤òÂоݤȤ·¤Æ¤¤¤ë¡£
ÆÃµö¿½ÀÁ¤Ë¤è¤ë¤È¡¢¤³¤Î2¤Ä¤ÎÆÃµö¤Ï1997ǯ¤È1999ǯ¤ËÄó½Ð¤µ¤ì¤¿¡£
Scientigo¤ÎºÇ¹â·Ð±ÄÀÕǤ¼Ô (CEO) ¤Ç¤¢¤ë Doyal Bryant ¤Ï¡¢¤³¤Î2¤Ä¤ÎÆÃµö¤ò¡Ö¶âÁ¬¤Ë´¹¤¨¤ë¡×¤È¤¤¤¦´ê˾¤ò½Ò¤Ù¤¿¤¬¡¢Æ±¼Ò¤Ï¡ÖÀ¤³¦¤òŨ¤Ë¤¹¤ë¤Ä¤â¤ê¤Ï¤Ê¤¤¡×¤È¸ÀÌÀ¤·¤¿¡£
Bryant ¤Ï¡¢Scientigo¤Ï¼«¼Ò¤Î2¤Ä¤ÎÆÃµö¤Ë¤Ä¤¤¤Æ¤¤¤¯¤Ä¤«¤ÎÂç´ë¶È¤ÈÏä·¹ç¤Ã¤Æ¤¤¤ë¤È½Ò¤Ù¤¿Small ¡£
XML¤ò»È¤¦¿Í¡¹¤ä´ë¶È¤ËºßÀÒ¤·¤Æ¤¤¤Ê¤¤ÀìÌç²È¤¿¤Á¤Ï¡¢Scientigo¤Î¼çÄ¥¤ËÂФ·¤Æ²ûµ¿Åª¤ÇÈãȽŪ¤ÊΩ¾ì¤ÇÈ¿±þ¤·¤¿¡£
°ìÄê¤Î¿Í¡¹¤Ï¡¢Scientigo¤ò
¥Ñ¥Æ¥ó¥È¡¦¥È¥í¡¼¥ë ¤Ç¤¢¤ë¤È½Ò¤Ù¤¿¡£
¥Æ¥£¥à¡¦¥Ö¥ì¥¤¤Ï¡¢¤³¤Î2¤Ä¤ÎÆÃµö¤¬XML¤òÂоݤȤ¹¤ë¤È¤¤¤¦¼çÄ¥¤Ï¡Ö¤Ð¤«¤²¤Æ¤¤¤ë¡×¤È½Ò¤Ù¤¿XML ¡£
XML¤Ë´Ø·¸¤¹¤ë¿¤¯¤ÎÀè¹Ôµ»½Ñ¤¬SGML ¤ò´Þ¤á¤ÆÂ¸ºß¤·¤Æ¤¤¤ë¡£
XML¤ËÂФ¹¤ë»Ù»ý¤ÈÈãȽ
¿¤¯¤ÎÏÀ¼Ô¤¬XML¤ËÂФ·¤Æ¤µ¤Þ¤¶¤Þ¤ÊÈãȽ¤ò¹Ô¤Ã¤Æ¤¤¿¡£
¤³¤¦¤·¤¿ÈãȽ¤Ï¡¢XML¤ÎĹ½ê¤ÈÀøºßŪ¤Ê·çÅÀ¤ËÂФ¹¤ë¸ÀµÚ¤ò´Þ¤ó¤Ç¤¤¤ë
[Î㤨¤Ð¡¢
]XML-QL ¡¢
When ¡¢
"XML ¡¢Daring
¡£
XML¤ÎĹ½ê
XML¤Ï¥Æ¥¥¹¥È ¤Ë´ð¤Å¤¤¤¿µ»½Ñ¤Ç¤¢¤ë¡£
XML¤ÏUnicode ¤Îʸ»ú½¸¹ç ¤ò°·¤¦¤³¤È¤¬¤Ç¤¤ë¡£Unicode¤òºÎÍѤ·¤¿¤³¤È¤Ë¤è¤ê¡¢¤É¤Î¤è¤¦¤Ê¼«Á³¸À¸ì¤Î½ñ¤¸ÀÍդǤ¢¤Ã¤Æ¤â¤Û¤È¤ó¤É¤Î¾ðÊó¤òÄÌ¿®¤ÎÂоݤȤ¹¤ë¤³¤È¤¬¤Ç¤¤ë¡£
XML¤ÏÈÆÍÑŪ¤Ë¥³¥ó¥Ô¥å¡¼¥¿²Ê³Ø ¤Î¥Ç¡¼¥¿¹½Â¤ ¤òɽ¸½¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¡£Î㤨¤Ð¡¢¥ì¥³¡¼¥É¡Ê¹½Â¤ÂÎ ¡Ë¡¢¥ê¥¹¥È ¡¢ÌÚ¹½Â¤ ¤Ê¤É¤òɽ¸½¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¡£
XML¤Î¼«¸Êʸ½ñ²½¤È¤¤¤¦·Á¼°¤Ï¡¢¹½Â¤¤È¥Õ¥£¡¼¥ë¥É̾¤È¤È¤â¤ËÃͤ⵽Ҥ¹¤ë¤³¤È¤¬¤Ç¤¤ë¡£
XML¤Î¸·Ì©¤Ê¹½Ê¸¤È¹½Ê¸²òÀÏ ¤ÎÍ׷郎¤¢¤ë¤¿¤á¡¢XML¥×¥í¥»¥µ (XML¥Ñ¡¼¥µ ) ¤Î¥¢¥ë¥´¥ê¥º¥à¤ÏÈó¾ï¤Ë´Ê·é¤Ç¸úΨ¤è¤¯°ì´ÓÀ¤Î¤¢¤ë¤â¤Î¤È¤Ê¤ë¡£
XML¤Ïʸ½ñ¥Ç¡¼¥¿¥Ù¡¼¥¹¤ª¤è¤Óʸ½ñ½èÍý¤Î¤¿¤á¤Îµ»½Ñ¤È¤·¤Æ¡¢¥¹¥¿¥ó¥É¥¢¥í¥ó ´Ä¶¤Ë¤ª¤¤¤Æ¤â¥Í¥Ã¥È¥ï¡¼¥¯ ´Ä¶¤Ë¤ª¤¤¤Æ¤â¡¢Èó¾ï¤Ë¤è¤¯³èÍѤµ¤ì¤Æ¤¤¤ë¡£
XML¤Ï¹ñºÝɸ½à¤Ë´ð¤Å¤¤¤Æ¤¤¤ë¡£
XML¤Ç¤Ï¡¢RELAX NG ¤ä¥¹¥¥Þ¥È¥í¥ó ¤Î¤è¤¦¤Ê¥¹¥¡¼¥Þ¸À¸ì ¤ò»È¤¦¤³¤È¤ÇÂÅÅöÀ¸¡¾Ú¤ò¹Ô¤¦¤³¤È¤¬¤Ç¤¤ë¡£¤³¤¦¤·¤¿ÂÅÅöÀ¸¡¾Ú¤Îµ¡¹½¤Ï¼¡¤Î¤³¤È¤òÍÆ°×¤Ë¤¹¤ë¡£
* ͸ú¤ÊñÂΥƥ¹¥È
* ͸ú¤ÊËɲÐÊÉ (¥Õ¥¡¥¤¥¢¥¦¥©¡¼¥ë)
* ͸ú¤Ê¼õ¤±Æþ¤ì¥Æ¥¹¥È
* ·ÀÌó¤Ë´ð¤Å¤¯Í¸ú¤Ê»ÅÍÍ
* ͸ú¤Ê¥½¥Õ¥È¥¦¥§¥¢¹½ÃÛ
XML¤Î³¬Áع½Â¤ ¤Ï¡¢(Á´¤Æ¤Ç¤Ï¤Ê¤¤¤¬) ¤Û¤È¤ó¤É¤Î¼ïÎà¤Îʸ½ñ¤Îɽ¸½¤Ë¸þ¤¤¤Æ¤¤¤ë¡£
XML¤Ï¥×¥ì¡¼¥ó¥Æ¥¥¹¥È ¤È¤·¤ÆÉ½¸½¤µ¤ì¤ë¡£¥×¥ì¡¼¥ó¥Æ¥¥¹¥È¤Ï¡¢Â¾¤Î¥×¥í¥×¥é¥¤¥¨¥¿¥ê¤Êʸ½ñ·Á¼°¤ÈÈæ¤Ù¤ÆÀ©¸Â¤¬¾¯¤Ê¤¤¡£
XML¤Ï¥×¥é¥Ã¥È¥Õ¥©¡¼¥à ÆÈΩ¤Ç¤¢¤ë¡£¤³¤Î¤¿¤áµ»½Ñ¤Î°Ü¤êÊѤï¤ê¤Ë¤è¤ë±Æ¶Á¤ËÈæ³ÓŪ¶¯¤¤¡£
XMLʸ½ñ¤Ï¡¢¥¹¥¡¼¥Þ¤¬Êѹ¹¤µ¤ì¤Æ¤â¡¢Á°Êý¸ß´¹À¤È¸åÊý¸ß´¹À¤òÊÝ»ý¤¹¤ë¤³¤È¤Ï¡¢Èæ³ÓÅªÍÆ°×¤Ç¤¢¤ë¡£
XML¤ÎÁ°¿È¤Ç¤¢¤ëSGML ¤Ï¡¢1986ǯ¤«¤é»È¤ï¤ì¤Ä¤Å¤±¤Æ¤¤Æ¤¤¤ë¡£¤½¤Î¤¿¤áÂçÎ̤ËÃßÀѤµ¤ì¤¿·Ð¸³¤ä¥½¥Õ¥È¥¦¥§¥¢¤ò³èÍѤ¹¤ë¤³¤È¤¬¤Ç¤¤ë¡£
À°·Á¼°XMLʸ½ñ¤ÎÍ×ÁǤÎÃÇÊÒ¤â¤Þ¤¿¡¢À°·Á¼°¤ÎXMLʸ½ñ¤Ç¤¢¤ë¡£
XML¤Îû½ê
XMLʸ½ñ¤Î¹½Ê¸¤Ï¡¢Æ±¤¸¾ðÊó¤òɽ¤¹¥Ð¥¤¥Ê¥êɽ¸½¤ÈÈæ¤Ù¤Æ¡¢¾éĹ¤Ç¥µ¥¤¥º¤¬Â礤¤[
]
XMLʸ½ñ¤Ï¥Ð¥¤¥Ê¥ê¤ÈÈæ¤Ù¤Æ¾éŤǤ¢¤ë¡£
XMLʸ½ñ¤Ï¾éŤǤ¢¤ê¡¢µ²±ÁõÃÖ¡¢Å¾Á÷¡¢½èÍý¤Î¥³¥¹¥È¤ÎÌ̤ǡ¢¸úΨŪ¤Ê±¿ÍѤ˰¤¤±Æ¶Á¤òÍ¿¤¨¤ë²ÄǽÀ¤¬¤¢¤ë[
]
XMLʸ½ñ¤Ï¤È¤Æ¤â¾éŤǤ¢¤ê¡¢¹â®¤Ç¤¢¤ë¤³¤È¤¬É¬ÍפÊÂ絬ÌϤʥǡ¼¥¿¥Ù¡¼¥¹¥·¥¹¥Æ¥à¤Ç¾ðÊó¤Îõº÷¤ò¹Ô¤¦¤Ë¤Ï¸úΨ¤¬°¤¤¡£
[¤¿¤À¤·¡¢Binary XML ¤Î»î¤ß¤Ï¡¢XMLʸ½ñ¤Î¥Ð¥¤¥Ê¥êɽ¸½¤ò»È¤¦¤³¤È¤Ç¤³¤¦¤·¤¿ÌäÂê¤ò·Ú¸º¤¹¤ë¤Ù¤¯ÅØÎϤ·¤Æ¤¤¤ë¡£Î㤨¤Ð¡¢]Java ¤Ë¤è¤ë Fast Infoset ɸ½à¤Î¥ê¥Õ¥¡¥ì¥ó¥¹¼ÂÁõ ¤Ç¤Ï¡¢¹½Ê¸²òÀÏ (¥Ñ¡¼¥¹) ¤Î®ÅÙ¤Ï Apache Xerces Java ¤ÈÈæ¤Ù¤Æ10ÇÜ®¤¯¡¢Java¤Ë¤è¤ëºÇ¤â¹â®¤ÊXML¥×¥í¥»¥µ¤Î°ì¤Ä¤Ç¤¢¤ëPiccolo ¤ÈÈæ¤Ù¤Æ4ÇÜ®¤¤https://fi.dev.java.net/reports/parsing/report.html ¡£¡£
XMLʸ½ñ¤Î¹½Ê¸¤Ï¡¢Â¾¤Î¡Ö¥Æ¥¥¹¥È¤Ë´ð¤Å¤¯¡×¥Ç¡¼¥¿Å¾Á÷·Á¼°¤ÈÈæ¤Ù¤Æ¾éŤǤ¢¤ë[
]
XML¤Î¹½Ê¸¤Ï¡¢¤¤¤¯¤Ä¤«¤ÎÍÑÅӤˤª¤¤¤Æ¤Ï¡¢¿Í´Ö¤¬ÆÉ¤à¤Ë¤Ï¤È¤Æ¤â¾éŤǤ¢¤ë¡£¿Í´Ö¤Ë¤È¤Ã¤Æ¤ÎÆÉ¤ß¤ä¤¹¤µ¤ò²þÁ±¤¹¤ë¤¿¤á¤Ë dual syntax ¤òÄ󰯤¹¤ë
[À¤´Ö¤Ç¸À¤ï¤ì¤Æ¤¤¤ë¤È¤³¤í¤Ë¤è¤ì¤Ð¡¢XML¤è¤ê¡Ö¾éĹÀ¤Î¾®¤µ¤¤¡×¿¤¯¤Î¥Æ¥¥¹¥È¥Õ¥©¡¼¥Þ¥Ã¥È¤¬¡¢XML¤Ë»É·ã¤ò¼õ¤±¤«¤ÄÀè¹ÔŪ¤Ê¶ÈÀӤȤ·¤ÆXML¤ò°ÌÃ֤Ť±¸ÀµÚ¤·¤Æ¤¤¤ë¡£
Î㤨¤Ð¼¡¤Î¥Ú¡¼¥¸¤ò»²¾È: http://yaml.org/spec/current.html ¡¢
http://innig.net/software/sweetxml/index.html ¡¢
http://www.json.org/xml.html]¡£
XML¤Ï¤½¤ÎÁ°¿È¤Ç¤¢¤ëSGML ¤è¤ê¤â´ÊÁDz½¤µ¤ì¤¿¤È¤Ï¤¤¤¨¡¢¤½¤Î½èÍý¤Ï·è¤·¤Æ·Ú¤¯¤Ï¤Ê¤¯¡¢¥¤¥ó¥¿¡¼¥Í¥Ã¥È¾å¤Î¥×¥í¥È¥³¥ë¤Ê¤É®Å٤ȷڤµ¤¬Í׵ᤵ¤ì¤ëʬÌî¤Ç¤Ï¡¢ºÎÍѤ¬¸«Á÷¤é¤ì¤ë¤³¤È¤¬¤·¤Ð¤·¤Ð¤¢¤ë[XML¤ÎÈÆÍÑÀ¤È¤½¤ì¤Ëȼ¤¦½Å¤µ¤Ï¤·¤Ð¤·¤ÐÙèÙé¤ÎÂоݤȤµ¤ì¤ë¤³¤È¤â¤¢¤ë¡£]IP ¡¢TCP ¡¢UDP ¤òXML¤ÇÄêµÁ¤¹¤ë¤È¤¤¤¦¥¸¥ç¡¼¥¯RFC ( RFC 3252 ) ¤¬Â¸ºß¤¹¤ë¡£¡£
XML¤¬É½¸½·Á¼°¤È¤·¤ÆºÎÍѤ·¤Æ¤¤¤ë³¬ÁØ·¿¥â¥Ç¥ë ¤Ï¡¢´Ø·¸¥â¥Ç¥ë ¤ä¥ª¥Ö¥¸¥§¥¯¥È»Ø¸þ ¥°¥é¥Õ¤ÈÈæ¤Ù¤ë¤ÈÀ©¸Â¤¬Â礤¤[³¬ÁØ·¿¥â¥Ç¥ë¤Ï]ÌÚ¹½Â¤ ¤Î¸ÇÄêŪ¤Êñ°ì¤Î»ëÅÀ¤Ë¤è¤ë¸«Êý¤·¤«Ä󶡤·¤Ê¤¤¡£Î㤨¤Ð¡¢Ìò¼Ô¤¬±Ç²è¤Î²¼°Ì¤Ë°ÌÃ֤Ť±¤é¤ì¤ë¤«¡¢±Ç²è¤¬Ìò¼Ô¤Î²¼°Ì¤Ë°ÌÃ֤Ť±¤é¤ì¤ë¤«¤Î¤¤¤º¤ì¤«¤Ç¤¢¤ê¡¢ÁÐÊý¤Î»ëÅÀ¤òξΩ¤¹¤ë¤³¤È¤Ï¤Ç¤¤Ê¤¤¡£[
]
¸ÇÄêŪ¤Ê³¬Áع½Â¤¤òºÎÍѤ¹¤ë¤³¤È¤Ëȼ¤¦¤¤¤¯¤Ä¤«¤ÎÀ©¸Â¤Ë¤Ä¤¤¤ÆµÄÏÀ¤¹¤ë¡£2002ǯ12·î¤Ë¥·¥ó¥¬¥Ý¡¼¥ë¤Ç³«ºÅ¤µ¤ì¤¿ 5th International Conference on Asian Digital Libraries, ICADL 2002 ¤ÎµÄ»öÏ¿¤è¤ê¡£¡£
¥ª¡¼¥Ð¡¼¥é¥Ã¥×¤¹¤ë (³¬Áع½Â¤¤Ç¤Ï¤Ê¤¤) Àá (¥Î¡¼¥É) ¤Î´ØÏ¢¤òɽ¸½¤¹¤ë¤Ë¤Ï¡¢Í¾Ê¬¤ÊÅØÎϤ¬É¬ÍפǤ¢¤ë[¥ª¡¼¥Ð¡¼¥é¥Ã¥×¤¹¤ëÍ×ÁǤòɽ¸½¤¹¤ëÂåÂØ¥·¥¹¥Æ¥à¤òÄ󰯤¹¤ë¡£]¡£
XML̾Á°¶õ´Ö¤ò»È¤¦¤³¤È¤Ë¤ÏÌäÂ꤬¤È¤â¤Ê¤¦¡£Ì¾Á°¶õ´Ö¤òÀµ¤·¤¯°·¤¦XML¥×¥í¥»¥µ¤ò¼ÂÁõ¤¹¤ë¤³¤È¤Ï¡¢Æñ¤·¤¤ºî¶È¤Ë¤Ê¤ë²ÄǽÀ¤¬¤¢¤ë[Î㤨¤Ð¼¡¤Î¥Ú¡¼¥¸¤ò»²¾È: http://www-128.ibm.com/developerworks/library/x-abolns.html ]¡£
XML¤Ï¡¢¡Ö¼«¸Êʸ½ñ²½¡×¤È¤·¤ÆÉ½¸½¤µ¤ì¤ë¤³¤È¤¬Â¿¤¤¡£¤·¤«¤·¤³¤Îɽ¸½¤Ç¤Ï¡¢½ÅÂç¤Ê¤¢¤¤¤Þ¤¤¤µ¤¬¤¢¤ë¤³¤È¤ò¹Íθ¤·¤Æ¤¤¤Ê¤¤[Î㤨¤Ð]¿µÁ¸ì ¤ò»²¾È¡£
XMLʸ½ñ¤Ë¤ª¤±¤ëÆâÍÆ¤È°À¤Î¶èÊ̤ϡ¢°ìÄê¤Î¿Í¡¹¤Ë¤È¤Ã¤Æ¤ÏÉÔ¼«Á³¤Ë´¶¤¸¤é¤ì¤ë¡£XML¤Î¥Ç¡¼¥¿¹½Â¤¤ÎÀ߷פòÆñ¤·¤¯¤¹¤ëÍ×°ø¤È¤Ê¤Ã¤Æ¤¤¤ë¡£[("8. Complexity: Attributes and Content" ¤ò»²¾È)]
ɸ½à²½
Àè½Ò¤·¤¿ISO ¤Îɸ½à·²¤Î¤Û¤«¤Ë¡¢XML´ØÏ¢¤Ç¤Ï¼¡¤Îʸ½ñ¤¬È¯¹Ô¤µ¤ì¤Æ¤¤¤ë¡£
ISO/IEC 8825-4:2002 Information technology -- ASN.1 encoding rules: XML Encoding Rules (XER)
ISO/IEC 8825-5:2004 Information technology -- ASN.1 encoding rules: Mapping W3C XML schema definitions into ASN.1
ISO/IEC 9075-14:2006 Information technology -- Database languages -- SQL -- Part 14: XML-Related Specifications (SQL/XML)
ISO 10303-28:2007 Industrial automation systems and integration -- Product data representation and exchange -- Part 28: Implementation methods: XML representations of EXPRESS schemas and data, using XML schemas
ISO/IEC 13250-3:2007 Information technology -- Topic Maps -- Part 3: XML syntax
ISO/IEC 13522-5:1997 Information technology -- Coding of multimedia and hypermedia information -- Part 5: Support for base-level interactive applications
ISO/IEC 13522-8:2001 Information technology -- Coding of multimedia and hypermedia information -- Part 8: XML notation for ISO/IEC 13522-5
ISO/IEC 18056:2007 Information technology -- Telecommunications and information exchange between systems -- XML Protocol for Computer Supported Telecommunications Applications (CSTA) Phase III
ISO/IEC 19503:2005 Information technology -- XML Metadata Interchange (XMI)
ISO/IEC 19776-1:2005 ''Information technology -- Computer graphics, image processing and environmental data representation -- Extensible 3D (X3D) encodings -- Part 1: Extensible Markup Language (XML) encoding
ISO/IEC 22537:2006 Information technology -- ECMAScript for XML (E4X) specification
ISO 22643:2003 Space data and information transfer systems -- Data entity dictionary specification language (DEDSL) -- XML/DTD Syntax
ISO/IEC 23001-1:2006 Information technology -- MPEG systems technologies -- Part 1: Binary MPEG format for XML
ISO 24531:2007 Intelligent transport systems -- System architecture, taxonomy and terminology -- Using XML in ITS standards, data registries and data dictionaries
µÓÃí
´ØÏ¢¹àÌÜ
XML´Ø·¸¤Î»ÅÍÍ
¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¥×¥í¥°¥é¥ß¥ó¥°¥¤¥ó¥¿¥Õ¥§¡¼¥¹ (API)
¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¥½¥Õ¥È¥¦¥§¥¢ ¤«¤éXMLʸ½ñ¤òÆÉ¤ß½ñ¤¤¹¤ë¤¿¤á¤Î
¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¥×¥í¥°¥é¥ß¥ó¥°¥¤¥ó¥¿¥Õ¥§¡¼¥¹ (API)
XML¤Î±þÍÑ