Bonjour,

je vais essayer d'expliquer mon problème le plus clairement possible :
J'ai un fichier .svg de ce type :
<?xml version="1.0" encoding="UTF-8" standalone="no"?>

<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN"

"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd" [

<!ATTLIST svg xmlns: xlink CDATA #FIXED "http://www.w3.org/1999/xlink">

]>

<!-- Generated by neato version 1.16 (Tue Sep 14 22:15:32 UTC 2004)

For user: Bill Gates Title: RNA polymerase II Pages: 1 -->

<svg width="602pt" height="679pt"

viewBox = "-1 -1 601 678"

xmlns="http://www.w3.org/2000/svg" xmlns: xlink="http://www.w3.org/1999/xlink">

<g id="graph0" class="graph" transform = "scale(0.597166)"

style="font-family:Times-Roman;font-size:14.00;">

<title>RNA polymerase II</title>

<text text-anchor="middle" style="font-size:10.00;" x="499" y="1120">RNA POLYMERASE II Network of Protein Complexes (27 complex(es), 133 proteins -- as of Jun 07, 2007)</text>

<g id="edge24" class="edge"><title>YNL236w-&gt;&lt;PolII-Med&gt;</title>

<path style="fill:none;stroke:silver;" d="M177,764C185,749 194,734 202,718"/>

<ellipse cx="202" cy="718" rx="1" ry="1" style="fill:none;stroke:silver;"/>

</g>

<g id="node23" class="node"><title>YLR071c</title>

<a xlink:href="http://pin.mskcc.org/web/graphviz.ProteinServlet?protein=YLR071c&amp;species=2" xlink:title="YLR071c">

<ellipse cx="212" cy="793" rx="12" ry="4" style="fill:skyblue;stroke:skyblue;"/>

<text text-anchor="middle" style="font-size:5.00;fill:navy;" x="212" y="795">YLR071c</text>

</a>

</g>

</g>

</svg>
Que je pense il est possible de résumer comme suit (pour ce que je souhaite en faire -> voir plus loin) :

<svg>
<g>
<g class="edge">
<title>OrigineEdge-&gt;DestEdge</title>
</g>
<g class="node">
<title>Noeud</title>
</g>
</g>
</svg>
Je voudrais le transformer en ce type de fichier :

<graphml...>
<graph edgedefault="undirected">

<node id="Noeud" />

<edge id="OrigineEdge_DestEdge" source="OrigineEdge" target="DestEdge" />

</graph>
</graphml>
J'essaye désepérément de tirer quelque chose du processeur xslt, mais tout ce que j'arrive à avoir c'est l'ensemble des éléments textes du fichier de départ. C'est à dire un fichier de ce style (ici il n'est pas complet):

<?xml version="1.0" encoding="utf-8"?>


RNA polymerase II
RNA POLYMERASE II Network of Protein Complexes (27 complex(es), 133 proteins -- as of Jun 07, 2007)
YNL236w-&gt;&lt;PolII-Med&gt;
YNL236w-&gt;&lt;Mediator&gt;
YPL042c-&gt;&lt;PolII-Med&gt;
YPL042c-&gt;&lt;Mediator&gt;
YPL042c-&gt;&lt;Srb8-11&gt;
YPL042c-&gt;&lt;Srb8/9/10/11&gt;
YNL025c-&gt;&lt;PolII-Med&gt;
YNL025c-&gt;&lt;Mediator&gt;
YNL025c-&gt;&lt;Srb8-11&gt;
YNL025c-&gt;&lt;Srb8/9/10/11&gt;
YHR041c-&gt;&lt;PolII-Med&gt;
YMR033w
YMR033w
YGR275w
YGR275w
YDR073w
YDR073w
YNR023w
YNR023w
Avec en prime les noeuds "node" en double.
Voici mon programme :
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0"
xmlns: xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:output method="xml" encoding="utf-8"/>


<xsl:template match="/svg">
<graph>

<xsl:apply-templates select="//g"/>
</graph>
</xsl:template>

<xsl:template match="//g[@class=node]">

</xsl:template>
</xsl:stylesheet>
Dans un premier temps je ne cherchais qu'à récupérer les noeuds (ça me semblait plus facile), je n'ai pas beaucoup d'expérience en xslt alors peut être est-ce une erreur bateau... en tout cas entre tutoriel et bouquin je n'ai pas trouvé...

Merci beaucoup de vos conseils.