IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

XSL/XSLT/XPATH XML Discussion :

[XSL] Fusionner 2 xml


Sujet :

XSL/XSLT/XPATH XML

  1. #21
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 565
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 565
    Points : 21 630
    Points
    21 630
    Par défaut
    ... Et qu'est-ce qui ne va pas ? Il faudra que ce soit quoi, le résultat ?

  2. #22
    Membre du Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 66
    Points : 42
    Points
    42
    Par défaut
    Salut Thelvin, tout d'accord merci d'accorder ton temps pour mon problème. Alors le résultat que je veux ce qu'il y ait un seul fichier release-notes.xml qui contiendrai ses infos d'origine ainsi que les infos qui proviennent du fichier navigator-clirr-result.xml du genre:
    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
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
     
    <?xml version="1.0" encoding="UTF-8"?>
    <release-note>
    	<date>
    		2011-04-22
    	</date>
    	<info>
    <module-name>epg-core</module-name>
    <module-version>1.6-SNAPSHOT</module-version>
    <build-context>
    <mvm-version>1.0.72</mvm-version>
    <msc-version>MHAP-1.0.61-2</msc-version>
    <xapi-version>MHAP-1.0.28-1</xapi-version>
    </build-context>
    		<baseline-compare baseline="EPG_CORE_20110422112406" previous="EPG_CORE_1.5"/>
    	</info>
    	<tasks>
    		<task>
    			<id>
    				PRD_FR#6670
    			</id>
    			<release>
    				EPG_CORE/MAIN
    			</release>
    			<completed>
    				2011-04-21
    			</completed>
    			<resolver>
    				fda
    			</resolver>
    			<synopsis>
    				add ErrorModel in Core
    			</synopsis>
    			<description>
    				The ErrorModel framework is now added in Epg_core
    			</description>
    			<pcrs/>
    			<objects>
    				<object>
    					<name>
    						ErrorMessage.java
    					</name>
    					<version>
    						1
    					</version>
    				</object>
    				<object>
    					<name>
    						ErrorModel.java
    					</name>
    					<version>
    						1
    					</version>
    				</object>
    				<object>
    					<name>
    						MessageEvent.java
    					</name>
    					<version>
    						1
    					</version>
    				</object>
    				<object>
    					<name>
    						error
    					</name>
    					<version>
    						1
    					</version>
    				</object>
    				<object>
    					<name>
    						platform
    					</name>
    					<version>
    						4
    					</version>
    				</object>
    				<object>
    					<name>
    						stb
    					</name>
    					<version>
    						1
    					</version>
    				</object>
    			</objects>
    		</task>
    	</tasks>
    </release-note>
     
    <diffreport>
      <difference binseverity="INFO" srcseverity="INFO" class="mhepg.platform.util.MonoThreadTimer" method="protected long getExpirationTime()">Method 'protected long getExpirationTime()' has been added</difference>
      <difference binseverity="INFO" srcseverity="INFO" class="mhepg.platform.util.MonoThreadTimer" method="protected mhepg.platform.util.MonoThreadTimer getNextTimer()">Method 'protected mhepg.platform.util.MonoThreadTimer getNextTimer()' has been added</difference>
      <difference binseverity="INFO" srcseverity="INFO" class="mhepg.platform.util.MonoThreadTimer" method="protected boolean getRunning()">Method 'protected boolean getRunning()' has been added</difference>
      <difference binseverity="INFO" srcseverity="INFO" class="mhepg.platform.util.MonoThreadTimer" method="protected void setExpirationTime(long)">Method 'protected void setExpirationTime(long)' has been added</difference>
      <difference binseverity="INFO" srcseverity="INFO" class="mhepg.platform.util.MonoThreadTimer" method="protected void setNextTimer(mhepg.platform.util.MonoThreadTimer)">Method 'protected void setNextTimer(mhepg.platform.util.MonoThreadTimer)' has been added</difference>
      <difference binseverity="INFO" srcseverity="INFO" class="mhepg.platform.util.MonoThreadTimer" method="protected void setRunning(boolean)">Method 'protected void setRunning(boolean)' has been added</difference>
      <difference binseverity="INFO" srcseverity="INFO" class="mhepg.platform.util.ProgramEventManager">Class mhepg.platform.util.ProgramEventManager added</difference>
      <difference binseverity="INFO" srcseverity="INFO" class="mhepgp.platform.boot.BootManager">Class mhepgp.platform.boot.BootManager added</difference>
      <difference binseverity="INFO" srcseverity="INFO" class="mhepgp.platform.boot.BootProcess">Class mhepgp.platform.boot.BootProcess added</difference>
      <difference binseverity="INFO" srcseverity="INFO" class="mhepgp.platform.boot.BootProcessManager">Class mhepgp.platform.boot.BootProcessManager added</difference>
      <difference binseverity="INFO" srcseverity="INFO" class="mhepgp.platform.util.DefaultProgramEventManager">Class mhepgp.platform.util.DefaultProgramEventManager added</difference>
    </diffreport>
    Et au lieu ça avec mon code xslt il efface les infos de release-notes.xml origine et affiche seulement celles de navigator-clirr-result.xml dans mon fichier release-notes.xml. C'est ça mon problème.

  3. #23
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 565
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 565
    Points : 21 630
    Points
    21 630
    Par défaut
    Oui je sais que ton fichier XSLT est mal utilisé, mais on verra ça après.

    Ce que tu cherches à faire est impossible. Un fichier XML a exactement un élément racine.
    Si tu mets deux documents XML l'un à la suite de l'autre, ça fait deux éléments racines. Dans ton cas <release-note> et <diffreport>. Pas faisable. Il faut étudier comment fusionner ça en un seul document. Une possibilité est de placer les deux sous une seule balise <racine>, par exemple.

  4. #24
    Membre du Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 66
    Points : 42
    Points
    42
    Par défaut
    Salut Thevin, merci pour ton idée j'ai résolu mon problème. Pour ceux qui seront intéressés:
    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
     
    <?xml version="1.0"?>
     
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:output indent="yes"/>
    <xsl:param name="clirr.result.xml.file"></xsl:param>
     
    <xsl:variable name="doc.var" select="document($clirr.result.xml.file)" />
     
     
    <xsl:template match="@* | node()">
    <xsl:copy>
    <xsl:apply-templates select="@* | node()"/>
    </xsl:copy>
    </xsl:template>
     
    <xsl:template match="release-note">
    	<xsl:copy>
    	<clirr-report>
    		<diffreport>
    			<xsl:copy-of select="$doc.var/diffreport//*"/>
    		</diffreport>
    	</clirr-report>
    	<xsl:apply-templates select="@* | node()"/>
    </xsl:copy>
     
    </xsl:template> 
     
     </xsl:stylesheet>

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. Réponses: 1
    Dernier message: 26/05/2009, 14h05
  2. [XSL-FO] [Débutant] xml, xsl, fo fop pdf ...ahhh !
    Par enigma dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 05/08/2005, 09h14
  3. [XSL] Parser fichier xml : erreurs + incompréhensions
    Par totobouchon dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 19/07/2005, 15h47
  4. [XML][XSL][FOP] transformation xml avec fop
    Par Le Marlou dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 05/12/2003, 16h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo