From 7ad42bb3b510baa203bfc4126e0b1b3181f9e861 Mon Sep 17 00:00:00 2001 From: "sgunderson@bigfoot.com" <> Date: Thu, 1 Mar 2007 03:13:58 +0100 Subject: [PATCH] Parse the IDs properly. perl-sax/simple passes! --- perl-sax/XML/TemplateSAX.pm | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/perl-sax/XML/TemplateSAX.pm b/perl-sax/XML/TemplateSAX.pm index 18c8d68..ff68c1f 100644 --- a/perl-sax/XML/TemplateSAX.pm +++ b/perl-sax/XML/TemplateSAX.pm @@ -39,6 +39,10 @@ sub start_element { my ($self, $data) = @_; my $obj = $self->{'obj'}; + # find the ID, if any + my $id = $data->{'Attributes'}->{'{http://template.sesse.net/}id'}; + $id = $id->{'Value'} if (defined($id)); + # within a replacement; just ignore everything return if (!defined($obj)); @@ -48,7 +52,7 @@ sub start_element { my $match = undef; for my $key (keys %$obj) { if ($key =~ /^#(.*)$/) { - if ($data->{'NamespaceURI'} eq 'http://template.sesse.net/' && $data->{'LocalName'} eq $1) { + if (defined($id) && $id eq $1) { $match = $obj->{$key}; last; } -- 2.39.2