# L'exemple "Voiture" du cours DOM-1 - première mouture

use strict;
use warnings;
use XML::DOM;

# le fichier sera lu automatiquement en UTF-8, 
# on prépare les impressions sur la sortie standard
binmode(STDOUT, ":utf8");

my $parseur = XML::DOM::Parser->new();
my $doc = $parseur->parsefile("Voiture.xml");

my $voiture = $doc->getDocumentElement();
my $nom = $voiture->getTagName();
print("$nom\n");

my $marque = $voiture->getAttribute("marque"); 
my $modele = $voiture->getAttribute("mod\x{00E8}le");
print("$marque $modele\n");

my @cmt = $voiture->getChildNodes();
foreach my $enf ( @cmt ){
   print ($enf->getNodeName());
   print(" ");
}
print("\n");

my $carosserie = $cmt[1]; # après le saut de ligne
my @caps = $carosserie->getChildNodes();
foreach my $cap ( @caps ){
   print ($cap->getNodeName());
   print(" ");
}
print("\n");
my $capot = $caps[1]; # idem
my $txt = $capot->getFirstChild(); # capot est une feuille
my $chn = $txt->getData();
print("$chn\n");

# et c'est tout pour le moment


