Bonjour à tous,
J'essaie d'extraire d'un fichier au format xliff, les balises <g> mais je n'y parviens pas.
En fait, l'arbre a cette forme :
Il y a deux type 2 textes: celui dans la balise 'source', et celui dans l'élément 'g', fils de l'élément 'source'. Je voudrais récuperer que le contenu de l'élément g sauf que à chaque fois c'est tout le contenu qui sort sous cette forme :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38 <xliff version="1.2" xmlns:cp="www.adobe.com/captivate"> <file datatype="x-cp" date="2009-04-03" > <header> <tool tool-company="Adobe" tool-id="AdobeCaptivate" tool-name="AdobeCaptivate" tool-version="2.0"/> <count-group name="countGroup1"> <count count-type="total" unit="trans-unit">264</count> <count count-type="total" unit="word">1006</count> <count count-type="total" unit="x-cp-slides">22</count> </count-group> </header> <body> <group cp:datatype="x-object" extype="4" id="10001" restype="x-cp-project"> <group cp:datatype="x-property" datatype="plaintext" extype="73" restype="x-cp-project-exp-line-1"> <trans-unit id="10001-73"> <source>Début</source> </trans-unit> </group> <group cp:datatype="x-object" extype="11" id="10026" restype="x-cp-slides"> <group cp:datatype="x-property" datatype="plaintext" extype="337" restype="x-cp-slide-label"> <trans-unit id="73525-337"> <source>cours 1</source> </trans-unit> </group> <group cp:datatype="x-object" extype="69" id="10796" restype="x-cp-items"> <group cp:datatype="x-object" extype="19" id="10800" restype="x-cp-text-caption"> <group cp:datatype="x-rtf" datatype="rtf"> <group cp:datatype="x-paragraph"> <trans-unit id="10800-19-1"> <source> <g css-style="font-family:'VERDANA, nil';color:#5976AE;font-size:16.0pt" ctype="x-cp-font" id="10800-19-1-1">Course Objectives</g> </source> </trans-unit> </group> </group> </group> etc.
"264100622Débutcours 1Course Objectives"
D'ailleurs j'ai remarqué que par défaut il applique la règle:
et je n'arrive même pas à mettre des espaces entre les phrases dans l'output.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 <xsl:template match="/"> <xsl:apply-templates/> </xsl:template>
J'ai essayé un code du style:
mais ça ne donne aucun résultat. Je tourne en rond.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 <xsl:template match="group"> <xsl:if test="@cp:datatype/text()='x-paragraph'"> <xsl:for-each select="source/g"> <xsl:value-of select="."/> </xsl:for-each> </xsl:if> <xsl:apply-templates/> </xsl:template>
Quelqu'un pourrait-il m'aider?
Merci
Mariane
Partager