use strict; use XML::Rules; my $filter = XML::Rules->new( style => 'filter', rules => { ReferenceID => sub { my ($tag, $attr) = @_; if ($attr->{referenceIDType} eq 'FXDD') { $attr->{_content} = "the changed content"; } return $tag => $attr; } } ); $filter->filter(\*DATA); __DATA__ FXDDILN233 FXDDILN233