XSLT avec un document XML validé avec XML schema pb....

XSLT avec un document XML validé avec XML schema pb.... - XML/XSL - Programmation

Marsh Posté le 09-01-2008 à 23:29:56    

Bonsoir,  
 
petite question si je valide mon fichier xml avec un xml schema comme ci dessous, mon second fichier xsl n'arrive pas à appliquer la transformation avec le noeud root. Alors que ce la fonctionnait très bien avec la validation DTD (donc la balise root sans les xmlns:...)?????? Pourquoi :pt1cable:  :pt1cable:  Merci

Citation :

<?xml version="1.0" encoding="UTF-8"?>
<root xmlns="http://xml.netbeans.org/schema/SimpleXSD"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xml.netbeans.org/schema/SimpleXSD SimpleXSD.xsd">
     
    <DEPARTEMENT nom='un'>
        <SECTION sigle='un_un'>
            <label>Mathématiques pour les débutants</label>
            <responsable>XXX</responsable>
            <agent>XXX</agent>
            <agent>YYY</agent>
        </SECTION>
    </DEPARTEMENT>
    <DEPARTEMENT nom='deux'>
        <SECTION sigle='deux_un'>
            <label>Mathématiques pour les débutants</label>
            <responsable>AA</responsable>
            <agent>AA</agent>
            <agent>CC</agent>
        </SECTION>
        <SECTION sigle='deux_deux'>
            <label>Mathématiques pour les débutants</label>
            <responsable>AAB</responsable>
            <agent>AAB</agent>
            <agent>CCB</agent>
        </SECTION>
    </DEPARTEMENT>
</root>


 
et mon XSL:
 

Citation :

<?xml version="1.0" encoding="UTF-8" ?>
 
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
    <xsl:output method="html"/>
   
    <xsl:template match="/">
        <html>
            <head>
                <title>SimpleXSL.xsl</title>
            </head>
            <body>
                <xsl:apply-templates select = 'root'/>
            </body>
        </html>
    </xsl:template>
     
    <xsl:template match = 'root'>
        <OL>
            <xsl:for-each select = './DEPARTEMENT'>                
                <LI>
                    <xsl:value-of select='name()' /><xsl:text> </xsl:text><xsl:value-of select='./@nom' />:
                    <xsl:for-each select = './SECTION'>
                        <br/><xsl:value-of select='./label' />
                        <br/><xsl:text>Responsable : </xsl:text><xsl:value-of select='./responsable' />
                        <br/><xsl:text>Agent :</xsl:text>
                        <xsl:for-each select = './agent'>
                               <br/><xsl:value-of select='.' />
                        </xsl:for-each>
                        <br/>
                    </xsl:for-each>
                </LI>
            </xsl:for-each>
        </OL>
    </xsl:template>
</xsl:stylesheet>


 
 
 

Reply

Marsh Posté le 09-01-2008 à 23:29:56   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed