Subject: | &make_sax2_attributes() returns an array, not a hash |
According to the "Perl SAX 2.0 Binding" document, an elements attributes are "a hash keyed by JClark namespace notation..."
XML::Filter::SAX1toSAX2::make_sax2_attributes sets the Attributes key as an array reference. Shouldn't it be something like :
<snip>
foreach my $key (keys %{$element->{Attributes}}) {
my $namespace = $self->_namespace($key);
my $value = $element->{Attributes}{Value};
$element->{'Attributes'}{"{}$key"}{'Name'} = $key;
$element->{'Attributes'}{"{}$key"}{'LocalName'} = $key;
$element->{'Attributes'}{"{}$key"}{'NamespaceURI'} = $namespace;
$element->{'Attributes'}{"{}$key"}{'Prefix'} = $namespace; # ?
$element->{'Attributes'}{"{}$key"}{'Value'} = $value;
}
</snip>