Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

pb perl/balisage xml. help!

2 réponses
Avatar
chamsz
Bonjour,
Je n'arrive pas à mettre au point un algo efficace pour traiter le probl
ème suivant:
j'ai trois fichiers d'entrée présentant un même texte balisé de façons d
ifférentes
ex:
premier fichier : mot à mot
<w id="word_0">Les</w>
<w id="word_1">Misérables</w>

deuxième fichier: phrase par phrase
<s>Les Misérables</s>
<s>Un roman de Victor Hugo</s>

troisième fichier: balisage structurel:
<text><body><div><head>Les Misérables</head><p>Un roman de Victor Hugo</
p>

Ajoutons que le fichier mot-à-mot n'a pas exactement les mêmes mots que
les autres fichiers
(ex: <w id="word_12">de</w>
<w id="word_13">le</w>
à la place de "du")
et que les balises peuvent s'imbriquer. ex <div><div></div><div></div></
div>


Mon but est de synchroniser les trois fichiers pour en obtenir un quatri
ème avec des pointeurs sur les identifiants de mot, qui en gros ferait ç
a
<text span=word_0..word_12000>
<body span=word_0..word 10000>
<head id=head_0 span=word_0..word_1>
<s id=s_0 span=word_0..word_1>
par exemple

Je n'arrive pas à mettre au point un algo me permettant de synchroniser
les fichiers, c'est à dire de générer les bons pointeurs (span) sur les
mots pour toutes les balises tout en gérant l'imbrication.

Si vous avez une idée à me soumettre, je vous en serai très reconnaissan
te

Chamsz

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Article poste via Voila News - http://www.news.voila.fr
Le : Tue Nov 4 17:08:40 2003 depuis l'IP : anancy-110-1-21-25.w81-248.abo.wanadoo.fr [VIP 545908826327]

2 réponses

Avatar
Jean-Michel Hiver
Je ne comprends absolument rien a ce que tu veux faire...
Avatar
Samuel Mouniée
Bonjour,

Bonjour,
Je n'arrive pas à mettre au point un algo efficace pour traiter le probl
ème suivant:
j'ai trois fichiers d'entrée présentant un même texte balisé de façons d
ifférentes
ex:
premier fichier : mot à mot
<w id="word_0">Les</w>
<w id="word_1">Misérables</w>

deuxième fichier: phrase par phrase
<s>Les Misérables</s>
<s>Un roman de Victor Hugo</s>

troisième fichier: balisage structurel:
<text><body><div><head>Les Misérables</head><p>Un roman de Victor Hugo</
p>

Ajoutons que le fichier mot-à-mot n'a pas exactement les mêmes mots que
les autres fichiers
(ex: <w id="word_12">de</w>
<w id="word_13">le</w>
à la place de "du")
et que les balises peuvent s'imbriquer. ex <div><div></div><div></div></
div>


et un fichier unique regroupant les 3 schemas, avec des namespaces ?
apres on a une seule structure a manipuler.

<?xml ?>
<document id="doc1">
<sem:title>
<lex:sentence count="1">
<lex:word count="1">Les</word>
<lex:word count="2">Miserable</word>
</lex:sentence>
</sem:title>
<sem:author>
<lex:sentence count="2">
<sem:foo>
<lex:word>de</lex:word>
</sem:foo>
<lex:word>Victor</lex:word>
<lex:word>Hugo</lex:word>
</lex:sentence>
</sem:author>
<sem:content>
<lex:remplace>
<lex:word>du</lex:word>
<lex:by>
<lex:word>de</lex:word>
<lex:word>le</lex:word>
<lex:word>
</lex:remplace>
</sem:content>
</document>

ce n'est qu'une piste, je ne dis en aucun cas avoir la solution. je ne
connais pas de solution simple pour manipuler 3 XML d'un coup, a moins
de faire des XSLT qui genere des XSLT, c'est faisable mais il faut se
casser la tete sur les namespaces et les echappements de tags et d'entités.



Mon but est de synchroniser les trois fichiers pour en obtenir un quatri
ème avec des pointeurs sur les identifiants de mot, qui en gros ferait ç
a
<text span=word_0..word_12000>
<body span=word_0..word 10000>
<head id=head_0 span=word_0..word_1>
<s id=s_0 span=word_0..word_1>
par exemple

Je n'arrive pas à mettre au point un algo me permettant de synchroniser
les fichiers, c'est à dire de générer les bons pointeurs (span) sur les
mots pour toutes les balises tout en gérant l'imbrication.


le plus simple est de travailler sur un document unique.

en gros votre probleme actuel est faire de la reconnaissance de noeud
texte pour les associer en ce document unique.

vous pouvez le faire avec XML::LibXML pour avoir une structure
INFOSET/DOM de vos documents XML. A partir de la, vous devez naviguer
dans les feuilles de vos arbres, faire de la reconnaissance/association
de motifs pour regrouper les feuilles, generer un nouveau document, et
enfin enregistrer.


Si vous avez une idée à me soumettre, je vous en serai très reconnaissan
te

Chamsz





.s'nuoM