ÏîÄ¿¹¤×÷×ܽá XML Schema£¨±ê×¼½â¶Á£©
×î½üÔÚ×öNetConfÏà¹Ø¿ª·¢¹¤×÷£¬ÆäÖкÜÖØÒªµÄÒ»¿éÊÇXML½âÎö£¬ÏîĿҲÐèÒªÖ§³ÖSchema£¬Òò´Ëǰ¶Îʱ¼äÕûÀíÁËSchemaµÄÁ½²¿·Ö±ê×¼£¬Ö»²»¹ýÕûÀíÎĵµÊÇÎÞ·¨´ø³öÀ´µÄ£¬ËùÒÔ¾ÍÔڴ˰ÑSchemaÏà¹ØµÄÄÚÈݼòµ¥½éÉÜÆä±ê×¼Ö®ºó£¬ÒÔÈçºÎÓ¦Óõķ½Ê½¼Ç¼ÏÂÀ´£¬ÒÔ¹©ÒÔºóʹÓÃʱ²Î¿¼¡£ÔÚºóÐøµÄ²¿·Ö£¬ÎÒ»¹½«ÕûÀíNetConfÏà¹Ø±ê×¼£¬×÷Ϊ×ܽᡣ
Ò»¡¢×ÜÌå¸ÅÊö
XML SchemaµÄ±ê×¼·ÖΪÁ½²¿·ÖPart 1: Structure ºÍPart 2£ºData Type. Part 2²¿·ÖÃèÊöÁËSchemaÖеÄÊý¾ÝÀàÐͶ¨Òå¡¢SchemaÖ§³ÖµÄÄÚÖÃÊý¾ÝÀàÐͺÍÊý¾ÝÀàÐÍÏà¹ØµÄFacets£»Part 1ÔòÃèÊöÁËÒ»×éÓÃÓÚ¶¨ÒåxmlÎĵµ½á¹¹µÄSchema×é¼þ¡¢Ê¹ÓÃ×é¼þµÄÓï·¨¡¢×é¼þµÄУÑé·½·¨¡£
Part 2 ÖжÔSchemaÊý¾ÝÀàÐ͵͍ÒåÊÇÒ»¸öÈýÔª×飨Value space¡¢Lexical space¡¢Facets£©£¬ÔÚÕâÀï²»¶ÔÕâЩÃû×Ö½øÐзÒ룬ʹÓÃÔ³ÆÎª¡£
Value space¾ÍÊǸÃÊý¾ÝÀàÐÍËùÄÜȡֵµÄ¼¯ºÏ£»
Lexical spaceÊǸÃÊý¾ÝÀàÐ͵Ä×ÖÃæ±íʾÐÎʽµÄ¼¯ºÏ£»ÀýÈç¶ÔÓÚFloatÀàÐÍ£¬Ëü¿ÉÄÜд×÷25.2µÄÐÎʽ£¬Ò²¿ÉÒÔд×÷2.52E1£¬Õâ¾ÍÊǸÃfloatÖµµÄÁ½ÖÖlexical value¡£
FacetÊÇÊý¾ÝÀàÐ͵ķ½Ã棬ÓÃÓÚ¿Ì»Êý¾ÝÀàÐÍÌØÕ÷¡£ÔÚ±ê×¼ÖУ¬Ö÷Òª·ÖΪÁ½À࣬һÀàfacetsÓÃÓÚ¶¨ÒåÊý¾ÝÀàÐÍ£¬³ÆÎªfundamental facets£¬Ò»ÀàÓÃÓÚÃèÊöÊý¾ÝÀàÐ͵Äȡֵ·¶Î§£¬³ÆÎªconstraining facets¡£facets¶¼ÊǶÔÊý¾ÝÀàÐÍvalue spaceµÄÔ¼Êø¡£
¶þ¡¢SchemaÖ§³ÖµÄÄÚÖÃÊý¾ÝÀàÐÍ
SchemaÖ§³ÖµÄÄÚÖÃÊý¾ÝÀàÐͲμûhttp://www.w3.org/TR/xmlschema11-2/#built-in-datatypes ¡£
Èý¡¢SchemaÖеÄFacets
1. fundamental facets£º
ÕâÒ»ÀàfacetsÖ»³öÏÖÔÚsimpleTypeµÄ¶¨ÒåÖУ¬ÇÒÖ»³öÏÖÒ»´Î¡£ÓÐËÄÀࣺ
ordered£ºÃèÊöÖµµÄ˳Ðò¹ØÏµ£¨È«Ðò¡¢Æ«Ðò¡¢ÎÞÐò£©
bounded£ºÃèÊöÖµµÄ½çÏÞ
cardinality£ºÃèÊövaluespaceµÄ¹æÄ£
numeric£ºÃèÊövalueµÄ¿ÉÊýÐÔ£¬¼´ÊÇ·ñÊýÖµ
2. constraining facets
ÕâÒ»ÀàfacetsÔÚ½øÐÐÀàÐÍÅÉÉúµÄʱºòÖµ¿ÉÒԸı䡣¶ÔÓÚÿһ¸öfacet²¢²»ÊÇ¿ÉÒÔÓÃÓÚÈκÎÒ»ÖÖÊý¾ÝÀàÐÍ£¬¾ßÌå¿ÉÒԲμûschemaʵÏÖÎĵµ¡£
length£¬maxLength£¬minLength£ºÓÃÓÚÔ¼Êø×Ö·û´®ÀàÐ͵ij¤¶È
pattern£ºÖ¸¶¨Ò»¸öÕýÔò±í´ïʽ£¬ÃèÊöÖµÓ¦¸Ã¾ßÓеÄlexical value
maxInclusive£¬minInclusive£¬maxExclusive£¬minExcl
Ïà¹ØÎĵµ£º
ÔÚC++ÖУ¬¿âµÄµØÎ»ÊǷdz£¸ßµÄ¡£C++Ö®¸¸ Bjarne StroustrupÏÈÉú¶à´Î±íʾÁËÉè¼Æ¿âÀ´À©³ä¹¦ÄÜÒªºÃ¹ýÉè¼Æ¸ü¶àµÄÓï·¨µÄÑÔÂÛ¡£ÏÖʵÖУ¬C++µÄ¿âÃÅÀà·±¶à£¬½â¾öµÄÎÊÌâÒ²ÊǼ«Æä¹ã·º£¬¿â´ÓÇáÁ¿¼¶µ½ÖØÁ¿¼¶µÄ¶¼ÓС£²»ÉÙ¶¼ÊÇÈÃÈËÑÛ½ç´ó¿ª£¬Òà»òÊÇÍû¶øÉú̾µÄ˼ά½Ü×÷¡£ÓÉÓÚ¿âµÄÊýÁ¿·Ç³£ÅӴ󣬶øÇÒÏÞÓÚ±ÊÕßˮƽ£¬ÆäÖкܶಢ²»Á˽⡣ËùÒÔÎÄÖ ......
XMLÏÖÔÚÒѾ³ÉΪһÖÖͨÓõÄÊý¾Ý½»»»¸ñʽ,ËüµÄƽ̨ÎÞ¹ØÐÔ,ÓïÑÔÎÞ¹ØÐÔ,ϵͳÎÞ¹ØÐÔ,¸øÊý¾Ý¼¯³ÉÓë½»»¥´øÀ´Á˼«´óµÄ·½±ã¡£¶ÔÓÚXML±¾ÉíµÄÓ﷨֪ʶÓë¼¼Êõϸ½Ú,ÐèÒªÔĶÁÏà¹ØµÄ¼¼ÊõÎÄÏ×,ÕâÀïÃæ°üÀ¨µÄÄÚÈÝÓÐDOM(Document Object Model),DTD(Document Type Definition),SAX(Simple API for XML),XSD(Xml Schema Definition),XSLT(Exten ......
XML Schema ÖÐ import ºÍ include µÄÇø±ð
XML Schema ÔÊÐí½«Ò»¸öXSDÎļþ·ÖΪ¼¸¸öÎļþ´æ·Å£¬ÔÚ±ØÒªÊ±Ê¹Óà import »òÕß include ½øÐе¼Èë¡£Õâ¶þÕßµÄÇø±ðÊÇ£º
import£ºÖ»Äܵ¼È벻ͬÃüÃû¿Õ¼äµÄXSD
include£ºÖ»Äܵ¼ÈëÏàͬÃüÃû¿Õ¼äµÄXSD£¬»ò±»µ¼ÈëµÄXSDδÉùÃ÷ÃüÃû¿Õ¼ä
Àý×Ó£º
<xsd:import namespace=”http://acme ......
·Ü¶·Á˽«½üÒ»¸öÔÂÒÆÖ²gloox¿âµ½brewƽ̨£¬ÔÚxml½âÎöµÄ×¼±¸Õâ±ß»¨Á˲»ÉÙʱ¼ä¡£ÆÚ¼äÒ²ÖØÐ·â×°Á˱ê×¼¿âµÄstring¡¢map¡¢listÀ࣬ÏÖÔÚ»ØÍ·ÏëÏëÊÕ»ñ»¹ÊÇÂù´óµÄ£¬µ«ÊÇÃ²ËÆÊÇÎÞÓõġ£
gloox´Ó0.9°æ±¾¿ªÊ¼¾Íno dependency on iksemel anymore£¬¶øiksemel×î³õÊÇרÃÅΪjabberдµÄxml½âÎöÆ÷£¬Õâô¿´À´£¬¶ÔÕâ¸öʱ¼ä·Ç³£½ôÆÈµÄÏîÄ¿À´Ëµ£ ......
À©Õ¹±ê¼ÇÓïÑÔXML£¨eXtensible Markup Language£©£¬ÊÇÓÉW3C×éÖ¯ÖÆ¶¨µÄ¡£×öΪÓÃÓÚÌæ´úHTMLÓïÑÔµÄÒ»ÖÖÐÂÐ͵ıê¼ÇÓïÑÔ£¬XMLÄÚ²¿ÓÐןܶà»ù±¾±ê×¼£¬XML¾ÍÊÇͨ¹ýÓëÕâЩÏà¹Ø±ê×¼µØ½áºÏ£¬Ó¦ÓÃÓÚ¿ÆÑ§¼ÆËã¡¢µç×Ó³ö°æ¡¢¶àýÌåÖÆ×÷ºÍµç×ÓÉÌÎñµÄ¡£C££×÷ΪһÖÖÐÂÐ͵ijÌÐòÓïÑÔ£¬ÊÇ.Net¿ò¼ÜµÄÒ»¸öÖØÒª×é³É²¿·Ö£¬ËûºÍXMLµÄ¹ØÏµÆÄÉî¡£±¾ÎÄ¾Í´Ó ......