in reply to XML::Twig -- sorting by attribute

Is your main problem an issue with how to do what you want with XML::Twig, or more generally, how to sort on multiple fields in Perl gracefully?

It looks like you're getting a list of players with XML::Twig easily enough. Once you have that, sorting on two separate fields is not that difficult. Just use two tests in your sort codeblock:

# Warning, untested. # Given @players as above, my @sorted= sort { $a->atts->{vob} <=> $b->atts->{vob} || $b->first_child_text($field) <=> $a->first_child_text($field) } @players;
You might need to tweak the attribute test to do the Right Thing for null values. But this is the general technique for sorting on multiple keys: test to see if the primary key is different; if so order on that, and if not, order on the secondary key.

I hope this is what you were looking for :)

Alan