#!/usr/bin/perl -w use warnings; use strict; use DBI; use XML::Twig; #http://xmltwig.com/xmltwig/tutorial/yapc_twig_s4.html for good references!!! header(); my $twig = new XML::Twig( TwigHandlers => #Gene-track element will be called when each player element has been parsed { "Entrezgene_unique-keys" => \&dbxref #"Dbtag_tag" => \&dbxref #funzt nicht, weil es mehere TagElemente diesen Typs gibt #"Object-id_id" => \&dbxref #funzt nicht, weil es mehere TagElemente diesen Typs gibt } ); $twig->parsefile("Homo_sapiens.ags"); #built the twig sub dbxref { my ($twig, $dbxref) = @_; #leider gehen diese Ansätze nicht, da ich nur das 'erste Kind' erfassen kann. Wie kann ich weitere Subelemente aufrufen? my $id = first_child('Dbtag') #->second_child('Dbtag_db')->text; my $db = first_child('Dbtag') #->second_child('Dbtag_tag')->third_child('Object-id')->fourth_child('Obejct-id_id')->text; print "$id\t$db\n"; }