my $doc = XML::Template::process_file('../xml/clone.xml', {
'color' => 'red',
'#things' => [
- { 'li' => 'Raindrops on roses', 'li.class' => 'odd' },
- { 'li' => 'Whiskers on kittens', 'li.class' => 'even' },
- { 'li' => 'Bright copper kettles', 'li.class' => 'odd' },
- { 'li' => 'Warm, woolen mittens', 'li.class' => 'even' }
+ { 'li' => 'Raindrops on roses', 'li/class' => 'odd' },
+ { 'li' => 'Whiskers on kittens', 'li/class' => 'even' },
+ { 'li' => 'Bright copper kettles', 'li/class' => 'odd' },
+ { 'li' => 'Warm, woolen mittens', 'li/class' => 'even' }
]
});
print $doc->toString;
# check all substitutions to see if we found anything
# appropriate
for my $key (keys %$obj) {
- if (($key =~ /^\Q$tag\E\.(.*)$/) ||
- (defined($id) && $key =~ /^#\Q$id\E\.(.*)$/)) {
+ if (($key =~ /^\Q$tag\E\/(.*)$/) ||
+ (defined($id) && $key =~ /^#\Q$id\E\/(.*)$/)) {
$child->setAttribute($1, $obj->{$key});
}
my $doc = XML::Template::process_file('../xml/clone.xml', {
'color' => 'red',
'#things' => [
- { 'li' => 'Raindrops on roses', 'li.class' => 'odd' },
- { 'li' => 'Whiskers on kittens', 'li.class' => 'even' },
- { 'li' => 'Bright copper kettles', 'li.class' => 'odd' },
- { 'li' => 'Warm, woolen mittens', 'li.class' => 'even' }
+ { 'li' => 'Raindrops on roses', 'li/class' => 'odd' },
+ { 'li' => 'Whiskers on kittens', 'li/class' => 'even' },
+ { 'li' => 'Bright copper kettles', 'li/class' => 'odd' },
+ { 'li' => 'Warm, woolen mittens', 'li/class' => 'even' }
]
});
print $doc->toString;
my $doc = XML::Template::process_file('../xml/clone.xml', {
'color' => 'blue',
- '#things' => XML::Template::alternate('li.class', [
+ '#things' => XML::Template::alternate('li/class', [
{ 'li' => 'Raindrops on roses' },
{ 'li' => 'Whiskers on kittens' },
{ 'li' => 'Bright copper kettles' },
$doc = XML_Template_process_file('../xml/clone.xml', array(
'color' => 'red',
'#things' => array(
- array( 'li' => 'Raindrops on roses', 'li.class' => 'odd' ),
- array( 'li' => 'Whiskers on kittens', 'li.class' => 'even' ),
- array( 'li' => 'Bright copper kettles', 'li.class' => 'odd' ),
- array( 'li' => 'Warm, woolen mittens', 'li.class' => 'even' )
+ array( 'li' => 'Raindrops on roses', 'li/class' => 'odd' ),
+ array( 'li' => 'Whiskers on kittens', 'li/class' => 'even' ),
+ array( 'li' => 'Bright copper kettles', 'li/class' => 'odd' ),
+ array( 'li' => 'Warm, woolen mittens', 'li/class' => 'even' )
)
));
print $doc->dump_mem();
$doc = XML_Template_process_file('../xml/clone.xml', array(
'color' => 'blue',
- '#things' => XML_Template_alternate('li.class', array(
+ '#things' => XML_Template_alternate('li/class', array(
array( 'li' => 'Raindrops on roses' ),
array( 'li' => 'Whiskers on kittens' ),
array( 'li' => 'Bright copper kettles' ),
# appropriate
foreach (array_keys($obj) as $key) {
# FIXME: we would want something like \Q and \E here...
- if (preg_match('/^' . $tag . '\.(.*)$/', $key, $matches) ||
- ($id != null && preg_match('/^#' . $id . '\.(.*)$/', $key, $matches))) {
+ if (preg_match('/^' . $tag . '\/(.*)$/', $key, $matches) ||
+ ($id != null && preg_match('/^#' . $id . '\/(.*)$/', $key, $matches))) {
$child->set_attribute($matches[1], $obj[$key]);
}