NAME XML::Chain - chained way of manipulating and inspecting XML documents SYNOPSIS use XML::Chain qw(xc); my $div = xc('div', class => 'pretty') ->c('h1')->t('hello') ->up ->c('p', class => 'intro')->t('world!'); say $div->as_string; #

hello

world!

DESCRIPTION ☢ at this moment XML::Chain is in early prototype phase ☢ This module provides fast and easy way to create and manipulate XML elements via set of chained method calls. EXPORTS xc A factory method creating new XML::Chain object with a document element as provided in parameters. For example: my $icon = xc('i', class => 'icon-download icon-white'); # See "c, append_and_current" for the element parameter description. CHAINED METHODS c, append_and_current Appends new element to current elements and changes context to them. New element is defined in parameters: $xc->c('i', class => 'icon-download icon-white') # First parameter is name of the element, then followed by optional element attributes. t, append_text Appends text to current elements. xc('span')->t('some')->t(' ')->t('more text') # some more text First parameter is name of the element, then followed by optional element attributes. root Sets document element as current element. say xc('p') ->t('this ') ->c('b') ->t('is')->up ->t(' important!') ->root->as_string; #

this is important!

up, parent Traverse current elements and replace them by their parents. METHODS as_string, toString Returns string representation of current XML elements. Call root before to get a string representing the whole document. $xc->as_string $xc->root->as_string XML::Chain uses overloading, so string interpolation also works: my $xc = xc('overload'); say "$xc"; # CONTRIBUTORS The following people have contributed to the Sys::Path by committing their code, sending patches, reporting bugs, asking questions, suggesting useful advice, nitpicking, chatting on IRC or commenting on my blog (in no particular order): you? BUGS Please report any bugs or feature requests via https://github.com/meon/XML-Chain/issues. AUTHOR Jozef Kutej COPYRIGHT & LICENSE Copyright 2009 Jozef Kutej, all rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.