Bonjour,

Une nouvelle question de débutant...

Je souhaite copier l'intégralité d'un document .xml, lui-même déjà le fruit de transformations, et remplacer certains éléments par d'autres. Du classique me direz-vous.

Lorsque je lance la transformation, il ne se passe rien.

XML source (un morceau; le début étant plutôt long):
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
<?xml version="1.0" encoding="ISO-8859-1"?>
 
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
   <fo:page-sequence master-reference="pages-standard">
      <fo:flow flow-name="corps-IR">
         <fo:block-container>
            <div xmlns:tns="http://www.tei-c.org/ns/1.0" type="contenu">
 
               <div type="did">
 
                  <div xmlns="urn:isbn:1-931666-22-9" type="titre">...</div>
 
               </div>
            </div>
           <fo:block-container>
     </fo:flow>
    </fo:page-sequence>
</fo:root>
Le XSL:

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
 
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    xmlns:fo="http://www.w3.org/1999/XSL/Format"
    xmlns:tei="http://www.tei-c.org/ns/1.0"
    xmlns:tns="http://www.tei-c.org/ns/1.0"
    exclude-result-prefixes="xs"
    version="1.0" >
 
    <xsl:template match="/" xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:tns="http://www.tei-c.org/ns/1.0">
        <xsl:copy-of select="node()"/>
    </xsl:template>
 
    <xsl:template match="//fo:root//fo:page-sequence[@master-reference='pages-standard']//fo:flow[@flow-name='corps-IR']//fo:block-container/tns:div[@type='contenu']" xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:tns="http://www.tei-c.org/ns/1.0">
        <fo:block>
            <xsl:apply-templates/>
        </fo:block>
    </xsl:template>
 
</xsl:stylesheet>
Le résultat voulu:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
<fo:block-container>
            <fo:block>               
               <div type="did">                  
                  <div xmlns="urn:isbn:1-931666-22-9" type="titre">...</div>
               </div>
            </fo:block>
 <fo:block-container>
Je ne suis pas certain d'avoir bien compris comment fonctionne le namespace. Mais il se peut aussi que le chemin soit mauvais.Voire les deux...

Qu'est-ce que j'oublie?

J.