in reply to getting ancestors of element
I would recommend mirod's site http://xmltwig.org/xmltwig/ as he is the author of XML::Twig. I find this section http://xmltwig.org/xmltwig/twig_stable.html particularly useful.
I think your code my @names = $twig->ancestors('values'); has two problems. Firstly it is actually looking for ancestors of the string itself (and there are none). You need to find every tag within the string and find theirancestors. Secondly you have an optional condition on the ancestors: the ('values') bit. This means you would only get ancestors called 'values'. If you want every ancestor, no condition is needed.