#/usr/bin/perl -w
#positionnement
# cd /cygdrive/D/MASTER-TAL/BAO_ga/
# cd /cygdrive/D/PLURITAL/ProjetEncadre2/
# cd /cygdrive/D/PLURITAL/ProjetEncadre2/sauvegarde/saved_to_give/BAO2

#lancement
#perl bao2_Cordial2XML.pl 

#En-tête

#----------------------------------------------------------- 
#PREPARATIFS
my $DUMPFULL=""; 						#initialisation de la variable contenant le flux de sortie
my $output="Sortie_Bao2_Cordial2XML.xml";		#test et ouverture du fichier de sortie
if (!open (FILEOUT,">$output")) { die "Pb a l'ouverture du fichier $output1"};

#----------------------------------------
# FORMATAGE du XML
print FILEOUT "<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>\n";
print FILEOUT "<PARCOURS>\n";
print FILEOUT "<NOM>Ginka YANKOVA</NOM>\n";
print FILEOUT "<SortieCordial>Sortie en XML de l'extraction traitée avec Cordial</SortieCordial>\n";


#Transformer Sortie_Cordial.cnr en Sortie_Cordial.xml

if (!open (FILEIN,"Sortie_Bao2_Cordial.cnr")) { die "Pb a l'ouverture du fichier $output1"};
#open(FILEIN,"Sortie_Cordial.txt"); 		
my $flag_ouvrante=2;	#pour écrire une balise ouvrante/fermante; $flag_ouvrante=1 =>la balise est ouverte

while (<FILEIN>) {
	my $ligne=$_;
	chomp($ligne); #enlever la marque de fin
	
	if ($ligne=~/"/){
		$ligne="guillemets_double	guillemets_double	PCTSPC";
	};
	if ($ligne=~/&/){
		$ligne="et_commercial	et_commercial	PCTSPC";#punctuation spéciale
	};
	
	if (!($ligne=~/\\r/)){#commence un nouveau contenu
		@decoup_ligne=split(/\t/,$ligne);
		$DUMPFULL.="\n\t<token>\"".$decoup_ligne[0]."\"</token>";
		$DUMPFULL.="<lemme>".$decoup_ligne[1]."</lemme>";
		$DUMPFULL.="<partofspeech>".$decoup_ligne[2]."</partofspeech>";
	}
	else{#si lecture de "\r" et:
		if ($flag_ouvrante==0){#la balise <contenu>  était fermée
			$DUMPFULL.="\n\n\t<contenu>";
			$flag_ouvrante=1;#à la lecture suivante de \r il faut mettre une balise fermante
		}
		if ($flag_ouvrante==1){#la balise <contenu> était ouverte
			$DUMPFULL.="\n</contenu>";
			$flag_ouvrante=0;#à la lecture suivante de \r il faut mettre une balise ouvrante
		};
		if ($flag_ouvrante==2){#le titre de la rubrique est lu
			$DUMPFULL.="\n</rubrique>\n<contenu>\n";
			$flag_ouvrante=1;#la balise est ouverte
		};
		
	};#else
};#while	


print FILEOUT "<ETIQUETAGE>\n<rubrique>\n".$DUMPFULL. "</ETIQUETAGE>\n";
print FILEOUT "</PARCOURS>\n";

close(FILEOUT);
close(FILEIN);				
	

