ÀÖ»çÁÉ£²¡¥
ÀÖ»çÁɤε¡Ç½ (XMLSchemaµ¡Ç½Âбþɽ)
ÀÖ»çÁɤϡ¢Æó¤Ä¤Î̾Á°¶õ´Öaka::¡¢xiso::¤Ë¤è¤ê¹½À®¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
aka::̾Á°¶õ´Ö¤Ç¤Ï¡¢¥·¥ê¥¢¥é¥¤¥¶¤È¤·¤Æ¤Î¥Õ¥ì¡¼¥à¥ï¡¼¥¯¤òÄ󶡤·¤Þ¤¹¡£
¼ÂºÝ¤Î¥É¥¥å¥á¥ó¥È¤ÎÃͤòÊÝ»ý¤¹¤ë¥¯¥é¥¹¤Ï¡¢¥æ¡¼¥¶ÄêµÁ¤È¤Ê¤ê¤Þ¤¹¡£¤³¤Î¥æ¡¼¥¶ÄêµÁ¥¯¥é¥¹¤Î·¿¾ðÊó¤Ï¡¢Ê̤Υ¯¥é¥¹¤È¤·¤ÆÄêµÁ¤µ¤ì¤Þ¤¹¡£¤³¤Î¥¯¥é¥¹¤òleaf<>¥¯¥é¥¹¤È¸Æ¤Ó¤Þ¤¹¡£
Ä̾ï¤Ï¡¢leaf<>¥¯¥é¥¹¤ò¡¢xiso::̾Á°¶õ´ÖÆâ¤ÇÄêµÁ¤¹¤ë¤³¤È¤Ë¤è¤ê¡¢¥·¥ê¥¢¥é¥¤¥¼¡¼¥·¥ç¥ó¤¬²Äǽ¤È¤Ê¤ê¤Þ¤¹¡£
ÀÖ»çÁɤϡ¢XML¥¹¥¡¼¥Þ¤Çɽ¸½¤µ¤ì¤ë¥â¥Ç¥ë¤ò¥·¥ê¥¢¥é¥¤¥º¡¢¥Ç¥·¥ê¥¢¥é¥¤¥º¤¹¤ë¤³¤È¤¬¤Ç¤¤Þ¤¹¡£
°Ê²¼¤Ë¡¢¥¹¥¡¼¥ÞÍ×ÁǤȥ¯¥é¥¹¤Î´Ö¤ÎÂбþ¤ò¼¨¤·¤Þ¤¹¡£
XMLSchemaÍ×ÁÇ | C++¥¯¥é¥¹¤Ë¤è¤ëɽ¸½ | XML·¿¾ðÊó¤ÎÄêµÁ |
schema/element | ¥¤¥ó¥¹¥¿¥ó¥·¥ó¥°¤Ç¤¤ë¥¯¥é¥¹ | aka::doctype()¤òÍѤ¤¤Æ¡¢¥É¥¥å¥á¥ó¥È¤Î¥È¥Ã¥×¥Î¡¼¥É¤Ç¤¢¤ë¤³¤È¤òÌÀ¼¨¡£ |
schema/complexType | ¥¤¥ó¥¹¥¿¥ó¥·¥ó¥°¤Ç¤¤ë¥¯¥é¥¹ | leaf<>¥¯¥é¥¹¤ÎÀë¸À¤¬¹Ô¤ï¤ì¤Æ¤¤¤ë¤³¤È¡£ |
schema/attribute | N.A. | »²¾È¤¹¤ë¥¯¥é¥¹¤Ë¤ª¤¤¤ÆÄêµÁ¤µ¤ì¤¿·¿¤ò°úÍÑ |
sequence | ¥¤¥ó¥¹¥¿¥ó¥·¥ó¥°¤Ç¤¤ë¥¯¥é¥¹¡£ ¥á¥ó¥Ð¤òÍ×ÁǤÎÃͤȤ·¤Æ»ÈÍÑ¡£ |
leaf<>¥¯¥é¥¹¤Ë¤ª¤¤¤Æ¡¢aka::sequence<>¤ò·Ñ¾µ¤¹¤ë¡£¤Þ¤¿¡¢leaf<>¥¯¥é¥¹Æâ¤Îvoid model()¥á¥½¥Ã¥É¤ÇÆâ¤Ç¡¢Í×ÁǤòÄêµÁ¡£ |
choice | aka::item¤òÃͤȤ·¤Æ»ý¤ÄSTL¥³¥ó¥Æ¥Ê¤Ë¤è¤ê¼ÂÁõ¡£ | aka::sequential_choice<>¡¢ aka::associative_choice<>¤Ë¤è¤êleaf<>¥¯¥é¥¹¤òÄêµÁ¡£ |
all | ¥¤¥ó¥¹¥¿¥ó¥·¥ó¥°¤Ç¤¤ë¥¯¥é¥¹¡£ ¥¯¥é¥¹¤Î¥á¥ó¥Ð¤òÍ×ÁǤÎÃͤȤ·¤Æ»ÈÍÑ¡£ |
leaf<>¥¯¥é¥¹¤Ë¤ª¤¤¤Æ¡¢aka::all<>¤ò·Ñ¾µ¤¹¤ë¡£leaf<>¥¯¥é¥¹Æâ¤Îvoid model()¥á¥½¥Ã¥É¤Ç¡¢Í×ÁǤòÄêµÁ¡£ |
simpleContent | ¥¤¥ó¥¹¥¿¥ó¥·¥ó¥°¤Ç¤¤ë¥¯¥é¥¹¡£ ¥á¥ó¥Ð¤òÃÍ¡¢Â°À¤ò¤È¤¹¤ë¡£ |
leaf<>¥¯¥é¥¹¤Ë¤ª¤¤¤Æ¡¢aka::simplecontent<>¤ò·Ñ¾µ¤·¡¢void model()¥á¥½¥Ã¥É¤Ç¡¢Í×ÁǤòÄêµÁ¡£ |
attribute (complexTypeÆâ) |
¥¯¥é¥¹¤Î¥á¥ó¥Ð¤ò°ÀÃͤȤ·¤Æ»ÈÍÑ¡£ | sequence¡¢all¡¢simpleContent¤Î¾ì¹ç¤ËÄêµÁ²Äǽ¡£¥¯¥é¥¹¤Î¥á¥ó¥Ð¤È¤·¤ÆÉ½¸½¤µ¤ì¤ë¡£ |
|
N.A. | voide model()¥á¥½¥Ã¥ÉÆâ¡¢attribute()¥¯¥é¥¹¤Îset_default()¥á¥½¥Ã¥É¤Ë¤ÆÄêµÁ¡£¥Ñ¡¼¥¹»þ¤Ë¥á¥ó¥Ð¤ËÀßÄꤵ¤ì¤¿¥Ç¥Õ¥©¥ë¥ÈÃͤò½ñ¤¹þ¤à¡£ |
|
N.A. | void model()¥á¥½¥Ã¥ÉÆâ¤Ë¤ª¤¤¤Æ¡¢fixed_attribute<>¥¯¥é¥¹¤òÍѤ¤¤ÆÄêµÁ¡£leaf<>¥¯¥é¥¹Æâ¤Î¤ß¤ÇÄêµÁ¤µ¤ì¤ë¡£ |
|
N.A. | voide model()¥á¥½¥Ã¥ÉÆâ¤Î¡¢member()¥¯¥é¥¹¤Îrequired(bool val)¥á¥½¥Ã¥É¤Ë¤ÆÄêµÁ¡£ |
element (sequence¡¢allÆâ) |
all¡¢sequence¥¯¥é¥¹Æâ¤Î¥á¥ó¥Ð¤¬Í×ÁÇÃͤȤʤ롣 | leaf¥¯¥é¥¹Æâ¤Îvoid model()¥á¥½¥Ã¥É¤Ç¡¢member()¡¢ptrmember()¤òÍѤ¤¤ÆÄêµÁ¡£ |
element (choiceÆâ) |
aka::item¤Ë³ÊǼ¤µ¤ì¤ë¥ª¥Ö¥¸¥§¥¯¥È¡£ | leaf¥¯¥é¥¹Æâ¤Îvoid model()¥á¥½¥Ã¥É¤Ç¡¢item()¤òÍѤ¤¤ÆÄêµÁ¡£ |
element@default |
N.A. | void model()¥á¥½¥Ã¥ÉÆâ¡¢member()¥¯¥é¥¹¤Îset_default()¥á¥½¥Ã¥É¤Ë¤ÆÄêµÁ¡£¥Ñ¡¼¥¹»þ¤Ë¡¢ÀßÄꤵ¤ì¤¿Ãͤ¬¡¢¼«Æ°Åª¤ËÂåÆþ¤µ¤ì¤ë¡£ |
element@fixed |
N.A. | void model()¥á¥½¥Ã¥ÉÆâ¤Ë¤ª¤¤¤Æ¡¢fixed_attribute<>¥¯¥é¥¹¤òÍѤ¤¤ÆÄêµÁ¡£xiso¥¯¥é¥¹Æâ¤Î¤ß¤ÇÄêµÁ¤µ¤ì¤ë¡£¥Ñ¡¼¥¹»þ¤Ë»ØÄꤵ¤ì¤¿ÃͰʳ°¤¬ÆÉ¤ß¹þ¤Þ¤ì¤¿»þ¤Ë¥Ñ¡¼¥¹¥¨¥é¡¼¤È¤¹¤ë¡£ |
element@substitutionGroup |
»ÅÍÍ̤Äê | »ÅÍÍ̤Äê |
group | complexType¤ÈƱÍͤ˥¤¥ó¥¹¥¿¥ó¥·¥ó¥°¤Ç¤¤ë¥¯¥é¥¹¤Ç¤¢¤ì¤Ð¡¢group¤Ë¤Ê¤ì¤ë¡£¥°¥ë¡¼¥×¤Ï¡¢all¡¢sequence¡¢choice°Ê²¼¤Ç»²¾È²Äǽ¡£ | void model()¥á¥½¥Ã¥ÉÆâ¤Ë¤ª¤¤¤Æ¤ÎÍ×ÁÇÄêµÁ¤ÎºÆ¡¢¥¿¥°Ì¾¤ÎƬ¤Ë"&"¤ò¤Ä¤±¤ë¤³¤È¤ÇÄêµÁ¡£ choice¤Ç¤¢¤ì¤Ð¡¢ item("&group̾"); sequence¡¢all¤Ç¤¢¤ì¤Ð¡¢ member("&group̾") ¤È¤¹¤ë¡£ |
any | aka::any¡¢aka::any_array¤È¤·¤Æ¡¢ÀÖ»çÁɤ¬ÃÍ¥¯¥é¥¹¤òÄêµÁ¡£ | void model()Æâ¤Ç¡¢any()¤òÍѤ¤¤Æ¡¢·¿¾ðÊó¤òÄêµÁ "&"¤Ç¤Ï¤¸¤á¤ëŬÅö¤Ê̾Á°¤òÉÕ¤±¤ë¡£(sequence¡¢choice¤È¤âƱÍÍ) ¤¿¤À¤·¡¢namespaceList¡¢processContents¤Ë´Ø¤·¤Æ¤Ï¡¢¥µ¥Ý¡¼¥È̵¤·¡£ |
anyType | aka::any¡¢aka::any_array¤È¤·¤Æ¡¢ÀÖ»çÁɤ¬ÃÍ¥¯¥é¥¹¤òÄêµÁ¡£ | void model()Æâ¤Ç¡¢any()¤òÍѤ¤¤Æ¡¢·¿¾ðÊó¤òÄêµÁ ¥¿¥°Ì¾¤ò»ØÄꤹ¤ë¡£(sequence¡¢choice¤È¤âƱÍÍ) |
anyAttribute | any_attributes¥¯¥é¥¹¤Ç¼õ¤±¤ë | void model()Æâ¤Ç¡¢·¿¾ðÊó¤òÄêµÁ ¤¿¤À¤·¡¢namespaceList¡¢processContents¤Ë´Ø¤·¤Æ¤Ï¡¢¥µ¥Ý¡¼¥È̵¤·¡£ |
attributeGroup | °úÍѤµ¤ì¤ë¥¯¥é¥¹¤Ë¤Æ¡¢¥á¥ó¥Ð¤È¤·¤ÆÂ°ÀÃͤòÄêµÁ | ¤½¤ì¤¾¤ìattributeGroup¤ò»²¾È¤¹¤ë¥¯¥é¥¹¤Ë¤Æ¡¢¥¿¥°Ì¾¤òÄêµÁ¤¹¤ë¡£ |
complexContent/restriction | ¥¯¥é¥¹/¹½Â¤ÂΤò·Ñ¾µ¡¢¤â¤·¤¯¤Ï¡¢¤½¤ì¤¾¤ì¤Î¥¯¥é¥¹¤Ë¤ª¤¤¤Æ¡¢¥á¥ó¥Ð¤òÄêµÁ | ¤½¤ì¤¾¤ì¤Îleaf<>¥¯¥é¥¹¤Ë¤ª¤¤¤Æ¡¢void model()Æâ¤Ç¡¢É¬ÍפȤµ¤ì¤ë¥á¥ó¥Ð¤ËÂФ¹¤ë·¿¾ðÊó¤òÄêµÁ¡£ |
complexContent/extension | ¥¯¥é¥¹/¹½Â¤ÂΤò·Ñ¾µ¡¢¤â¤·¤¯¤Ï¡¢¤½¤ì¤¾¤ì¤Î¥¯¥é¥¹¤Ë¤ª¤¤¤Æ¡¢¥á¥ó¥Ð¤òÄêµÁ | ¤½¤ì¤¾¤ì¤Îleaf<>¥¯¥é¥¹¤Ë¤ª¤¤¤Æ¡¢void model()Æâ¤Ç¡¢É¬ÍפȤµ¤ì¤ë¥á¥ó¥Ð¤ËÂФ¹¤ë·¿¾ðÊó¤òÄêµÁ¡£ |
simpleType extension/restriction |
¥æ¡¼¥¶¤¬Ã±½ã·¿¸¡¾Ú¥í¥¸¥Ã¥¯¤ò½ñ¤Â¤¹¤³¤È¤ÇÂбþ²Äǽ¡£ | ¥æ¡¼¥¶¤¬aka::simpletype<>¤ò»ÈÍѤ·¡¢Ã±½ã·¿¤òÄêµÁ¤¹¤ë¡£ |
keybase/keyref | Âбþ¤»¤º¡£ | Âбþ¤»¤º¡£ |
element¡¢complexType¤Î@abstract, @block, @final | N.A. | N.A. |
¥Û¡¼¥à¤ËÌá¤ë¡¡ÀÖ»çÁÉ£²¥×¥í¥¸¥§¥¯¥È¥Ú¡¼¥¸¤Ø¡¡