[Perl]ÀûÓÃXML::DOMÉú³ÉXMLÎĵµ
PerlµÄXML::DOM¹¦ÄܺÜÇ¿´ó£¬ÀûÓÃËü¿ÉÒÔÇáÒ׵طÖÎöXMLÎĵµ£¬Ò²¿ÉÒÔ½¨Á¢XMLÎĵµ¡£
³£ÓõÄÀà°üÀ¨£º
XML::DOM::Node£ºËùÓÐÀàµÄ»ùÀ࣬±íʾһ¸öXML½Úµã¡£
XML::DOM::Parser£ºXML½âÎöÆ÷£¬½«XML×Ö·û´®½âÎö³ÉXML::DOM::Document¶ÔÏó¡£
XML::DOM::Document£ºÖ¸ÏòXMLÎĵµµÄ¸ù½Úµã¡£
XML::DOM::Element£ºÖ¸ÏòÒ»¸öÔªËØ£¬Í¨³£ÓÉXML::DOM::Document->createElementÔªËØÉú³É¡£
ÆäËûµÄÀà¿ÉÒԲ鿴CPAN
ÉϹØÓÚ XML::DOM µÄ˵Ã÷¡£
½¨Á¢XMLÎĵµµÄͨ³£×ö·¨ÊÇ£ºÊ×ÏÈͨ¹ý XML::DOM::ParserÉú³ÉÒ»¸öDocument¶ÔÏó£¬
ÔÙͨ¹ýÕâ¸öDocument¶ÔÏóµÄ createElement¡¢createTextNode µÈ·½·¨Éú³É¸÷¸ö½Úµã£¬
×îºóͨ¹ý XML::DOM::Node->appendChild ·½·¨½«½ÚµãÌí¼Óµ½Document¶ÔÏóÖУ¬
×îºóÔÙͨ¹ý toString ·½·¨½« Document ת»»Îª×Ö·û´®Êä³ö¡£
ÏÂÃæÊǽ¨Á¢XMLÎĵµµÄÒ»¸öÀý×Ó£º
#!/usr/bin/perl
use XML::DOM;
use XML::Twig;
# ´´½¨XMLµÄ×îÍâ²ãÔªËØ
my $xml = "<MyXML/>";
# ͨ¹ýXML::DOM::Parser½âÎöÍâ²ãÔªËØ£¬´´½¨»ù´¡XMLÎĵµ
# XML::DOM::Parser::parseº¯ÊýµÄ·µ»ØÖµÎª XML::DOM::Document Àà
my $parser = new XML::DOM::Parser;
my $dom = $parser->parse($xml);
# Éú³ÉBook½Úµã
# createElementµÄ·µ»ØÖµÎª XML::DOM::Element Àà
# XML::DOM::Element µÄ¸¸ÀàÊÇ XML::DOM::Node Àà
my $book = $dom->createElement("Book");
# ÉèÖýڵãÊôÐÔ
$book->setAttribute("title", "My First Book");
$book->setAttribute("author", "charlee");
# Éú³ÉChapter½Úµã
my $chapter = $dom->createElement("Chapter");
$chapter->setAttribute("id", "1");
# Éú³ÉÒ»¸öÎı¾½Úµã
my $title = $dom->createTextNode("My First Chapter");
$chapter->appendChild($title);
# Ìí¼ÓChapterµ½Book
$book->appendChild($chapter);
# Ìí¼ÓBookµ½XMLÎĵµ
$dom->getDocumentElement->appendChild($book);
# ÀûÓÃXML::TwigÕûÀí¸ñʽ
my $twig = new XML::Twig;
$twig->set_indent(" "x4);
$twig->parse($dom->toString);
$twig->set_pretty_print("indented");
# Êä³ö
print $twig->sprint;
×îºóÒ»¶ÎʹÓÃXML::TwigµÄ³ÌÐòÖ»ÊÇΪÁËÕûÀíXMLÊä³ö½á¹ûµÄ¸ñʽ£¬
Èç¹û²»ÐèÒªÕûÀí¸ñÊ
Ïà¹ØÎĵµ£º
SAX¸ÅÄî
SAXÊÇSimple API for XML
µÄËõд£¬Ëü²¢²»ÊÇÓÉW3C¹Ù·½ËùÌá³öµÄ±ê×¼£¬¿ÉÒÔ˵ÊÇ“Ãñ¼ä”µÄÊÂʵ±ê×¼¡£Êµ¼ÊÉÏ£¬ËüÊÇÒ»ÖÖÉçÇøÐÔÖʵÄÌÖÂÛ²úÎï¡£ËäÈ»Èç´Ë£¬ÔÚXMLÖжÔSAXµÄÓ¦ÓÃË¿ºÁ²»±ÈDOMÉÙ£¬¼¸ºõËùÓеÄXML½âÎöÆ÷¶¼»áÖ§³ÖËü¡£
Óë
DOM±È½Ï¶øÑÔ£¬SAXÊÇÒ»ÖÖÇáÁ¿Ð͵ķ½·¨¡£ÎÒÃÇÖªµÀ£¬ÔÚ´¦ÀíDOMµÄʱºò£¬Î ......
¼òµ¥µØËµ£¬xslÊÇ˵Ã÷xmlÈçºÎ±í´ï³öÀ´µÄÑùʽÎļþ£¬¶øxsd¸ø³öxmlÎļþµÄ¸ñʽÃèÊö
Èç¹û˵xmlÊÇÒ»µþ³®Æ±£¬xsd¾ÍÊÇÑé³®»ú£¬¿´¿´ÀïÃæÓÐûÓмٳ®£¬¶øxslÊǵ㳮»ú£¬¿´¿´µ½µ×ÊǶàÉÙÇ®¡£ÓÃxml¿ÉÒÔ²»ÓÃxsd£¬¾ÍÏñ»¨Ç®µÄʱºò²»Ò»¶¨ÒªÑé³®Ò»Ñù£¬µ«ÊÇÊÕÇ®µÄÈËÒ»°ãÊÇÏëÒªÑéµÄ¡£¶ø»¨Ç®µÄʱºò²»Äܲ»µã³®£¬²»µãÄǾͲ»ÊÇ»¨Ç®ÁË£¬ÊÇÍæÇ®¡£µ±È»ÁË£ ......
XPath Óï·¨
2007-06-05 17:24
XPath Óï·¨
×÷Õß:w3pop.com ·Òë/ÕûÀí:w3pop.com ·¢²¼:2007-04-29 ä¯ÀÀ:674 :: ::
XPath Nodes(½Úµã) XPath Axes
XPath uses path expressions to select nodes or node-sets in an XML document. The node is selected by following a path or steps.
XPath ͨ¹ý·¾¶±í´ïʽ´ÓXM ......
×î½ü×öµÄÒ»¸öÏîÄ¿ÖÐÔËÓà xml Êý¾Ýµº¼¼Êõ£¬ËùÒÔ°ÑÊý¾Ýµº·½ÃæµÄ֪ʶ×ܽáһϡ£
XML Êý¾Ýµº £¨ data islands £©¾ÍÊDZ» html Ò³ÃæÒýÓûòÕß°üº¬µÄ xml Êý¾Ý£¬ÊÇ´Ó IE5 ¿ªÊ¼ÒýÈëµÄÒ»Ïî¼¼Êõ¡£¿ÉÒÔͨ¹ý xml ±êÇ©ºÜÇáËɽ«Êý¾Ýµº²åÈëµ½ html ÎĵµÖС£ÄÇôÔõô·ÃÎÊ xml Êý¾ÝµºµÄÊý¾ÝÄØ£¬ºÜ¼òµ¥£¬Í¨¹ý xml µÄ id ¡£ÔÚÒ³ ......
·Ü¶·Á˽«½üÒ»¸öÔÂÒÆÖ²gloox¿âµ½brewƽ̨£¬ÔÚxml½âÎöµÄ×¼±¸Õâ±ß»¨Á˲»ÉÙʱ¼ä¡£ÆÚ¼äÒ²ÖØÐ·â×°Á˱ê×¼¿âµÄstring¡¢map¡¢listÀ࣬ÏÖÔÚ»ØÍ·ÏëÏëÊÕ»ñ»¹ÊÇÂù´óµÄ£¬µ«ÊÇÃ²ËÆÊÇÎÞÓõġ£
gloox´Ó0.9°æ±¾¿ªÊ¼¾Íno dependency on iksemel anymore£¬¶øiksemel×î³õÊÇרÃÅΪjabberдµÄxml½âÎöÆ÷£¬Õâô¿´À´£¬¶ÔÕâ¸öʱ¼ä·Ç³£½ôÆÈµÄÏîÄ¿À´Ëµ£ ......