Cliquez ici.
Accueil
 chercher             Plan du site             Info (English version) 
L'histoire de XML s'écrit en ce moment même. XMLfr vous aide à la suivre et à en dégager les tendances.Les listes de discussions XMLfr sont à votre disposition pour réagir sur nos articles ou simplement poser une question.Si vous ètes passionnée(e) par XML, pourquoi ne pas en faire votre métier ?XMLfr n'est heureusement pas le seul site où l'on parle de XML. Découvrez les autres grâce à XMLfr et à l'ODP.Les partenaires grâce auxquels XMLfr peut se développer.Pour tout savoir sur XMLfr.XMLfr sans fil, c'est possible !Pour ceux qui veulent vraiment en savoir plus sur XML.L'index du site.
 Commentaires et questions non techniques.Commentaires et questions techniques.

 
Cliquez ici.

From: Habieb Mammar Halima (habieb@gprhp.insa-lyon.fr)
Date: 09/12/2002 - 09:43


Bonjour tout le monde,

j'ai crée un doc XML et une feuille de style XSLT, quand j'appelle la transformation depuis le navigateur tout se passe bien et la feuille de style s'applique bien au doc, par contre si j'appelle la transformation depuis une page ASP avec la methode transformNode, un message de erreur non specifiée s'affiche à chaque fois. je ne comprends pas pourquoi.

Voici les doc XML, XSLT et ASP.

1- XML Document
<?xml version="1.0"?>

<!-- edited with XML Spy v4.3 (http://www.xmlspy.com) by ICTT (ICTT) -->

<!DOCTYPE Page SYSTEM "travail.dtd">

<?xml-stylesheet type="text/xsl" href="new_page.xsl"?>

<Page>

<bloc name="Partie 1">

<element name="version 1" signature="L3V2M0" state="1" sign_mat="T3I2S0">

<content type="text">

La mémoire est la fonction la plus largement sollicitée dans la plupart de nos actes : se souvenir d'un numéro de téléphone, du nom à mettre sur un visage, raconter un week-end passé avec tous ses détails, retrouver une date de l'histoire de France ...

Il faut puiser dans sa mémoire aussi bien pour reconstituer son emploi du temps de la semaine que pour retrouver de vieux souvenirs.

</content>

<content type="image" width="10" high="30">

brain_labeled.gif

</content>

</element>

<element name="version 2" signature="L1V5M0" state="0">

<content type="text">

légende de l'image

</content>

<content type="image" width="80" high="150">

big.jpg

</content>

</element>

<element name="voix off" signature="L0V0M4" state="0">

<content type="sound" duration="3">

comment.wav

</content>

</element>

<rules>

<combi>L3V2M0$1</combi>

<combi>L1V5M0$1</combi>

<combi>L0V0M4$1</combi>

<combi>L3V2M0$L0V0M4$1</combi>

<combi>L1V5M0$L0V0M4$1</combi>

</rules>

</bloc>

<bloc name="Partie 2">

<element name="Texte long 2" signature="L5V0M0" state="1" sign_mat="T5I0S0">

<content type="text">

La première partie est liée à la perception et effectue une première analyse des stimulations. Le système limbique transforme l'information reçue par le cerveau en modes appropriés pour le traitement en vérifiant constamment l'information relayée au cerveau par les sens, et en la comparant à une expérience antérieure. Il s'agit du registre d'informations sensorielles.

Le rôle du registre d'informations sensorielles consiste à percevoir les stimulations qui vous entourent et à les rendre disponibles, une fraction de seconde, pour que votre cerveau puisse en faire un traitement approfondi.

</content>

</element>

<element name="Texte moyen 2" signature="L3V0M0" state="1" sign_mat="T3I0S0">

<content type="text">

Elle s'occupe de trier les informations et de les conserver un certain temps pour déterminer ce qui sera enregistré et ce qui sera laissé de côté. Elle permet l'analyse et le traitement de toute stimulation que vous avez reçue et dont vous avez pris conscience. Il peut s'agir d'une information qui provient de votre environnement (stimulation extérieure) aussi bien que de vos propres pensées (stimulation intérieure).

</content>

</element>

<element name="Graphique 2" signature="L0V4M0" state="0">

<content type="image" width="40" high="80"> graph.jpg </content>

</element>

<rules>

<combi>

L5V0M0$L3V0M0$2

</combi>

<combi>

L3V0M0$L0V4M0$2

</combi>

<combi>

L5V0M0$L0V4M0$2

</combi>

</rules>

</bloc>

<bloc name="Partie3">

<element name="Texte long 3" signature="L4V0M0" state="1" sign_mat="T4I0S0">

<content type="text">

La mémoire à court terme étant un espace de mémoire temporaire, sa durée varie de quelques secondes à quelques minutes. Une information complètement nouvelle restera beaucoup moins longtemps qu'une information connue. Si aucun effort n'est fait pour conserver l'information, elle disparaîtra rapidement de l'espace de mémoire et vous l'oublierez. Dans le cas d'une information que vous connaissiez, vous pourrez toujours aller la rechercher dans votre mémoire à long terme, mais s'il s'agissait d'une nouvelle information, elle sera complètement disparue.

</content>

</element>

<element name="Texte moyen 2" signature="L2V0M0" state=" 0">

<content type="text">

ble bla bla...

</content>

</element>

<element name="version 2" signature="L1V4M0" state="1" sign_mat="T1I2S0">

<content type="image" width="2" high="5">

attention.jpg

</content>

<content type="text">

L'attention

</content>

</element>

<rules>

<combi>L4V0M0$3</combi>

<combi>L2V0M0$3</combi>

<combi>L1V4M0$3</combi>

<combi>L4V0M0$L1V4M0$3</combi>

<combi>L2V0M0$L1V4M0$3</combi>

</rules>

</bloc>

</Page>

2- XSL Document
<?xml version="1.0" encoding="UTF-8"?>

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xsl1="http://www.w3.org/TR/WD-xsl" >

<xsl:template match="/">

<html>

<body>

<xsl:apply-templates select="Page"/>

</body>

</html>

</xsl:template>

<xsl:template match="Page">

<div>

<xsl:apply-templates select="bloc"/>

</div>

</xsl:template>

<xsl:template match="bloc">

<table>

<td>

<xsl:apply-templates select="element"/>

</td>

</table>

</xsl:template>

<xsl:template match="element">

<xsl:if test="@state=1">

<xsl:if test="substring(@signature,2,1)=1">

<xsl:if test="2&lt;=substring(@signature,4,1) and substring(@signature,4,1)&lt;=5">

<xsl:apply-templates select="content">

<xsl:with-param name="disposition">1</xsl:with-param>

</xsl:apply-templates>

</xsl:if>

</xsl:if>

<xsl:if test="substring(@signature,2,1)&gt;1">

<xsl:if test="substring(@signature,4,1)=4 or substring(@signature,4,1)=5">

<xsl:apply-templates select="content">

<xsl:with-param name="disposition">2</xsl:with-param>

</xsl:apply-templates>

</xsl:if>

<xsl:if test="substring(@signature,4,1)=2 or substring(@signature,4,1)=3 or substring(@signature,4,1)=0">

<table>

<xsl:apply-templates select="content">

<xsl:with-param name="disposition">3</xsl:with-param>

</xsl:apply-templates>

</table>

</xsl:if>

<xsl:if test="substring(@signature,4,1)=1 and substring(@signature,6,1)&gt;0">

<table>

<xsl:apply-templates select="content">

<xsl:with-param name="disposition">4</xsl:with-param>

</xsl:apply-templates>

</table>

</xsl:if>

</xsl:if>

<xsl:if test="substring(@signature,2,1)=0">

<xsl:apply-templates select="content">

<xsl:with-param name="disposition">5</xsl:with-param>

</xsl:apply-templates>

</xsl:if>

</xsl:if>

</xsl:template>

<xsl:template match="content">

<xsl:param name="disposition"/>

<xsl:choose>

<xsl:when test="@type='text'">

<xsl:if test="$disposition=1">

<p align="center"><xsl:value-of select="."></xsl:value-of></p>

</xsl:if>

<xsl:if test="$disposition=2">

<xsl:choose>

<xsl:when test="2=substring(../@signature,2,1) or substring(../@signature,2,1)=3">

<p ><font size="5"><xsl:value-of select="."></xsl:value-of></font></p>

</xsl:when>

<xsl:otherwise>

<p ><xsl:value-of select="."></xsl:value-of></p>

</xsl:otherwise>

</xsl:choose>

</xsl:if>

<xsl:if test="$disposition=3 or $disposition=4 ">

<xsl:choose>

<xsl:when test="2=substring(../@signature,2,1) or substring(../@signature,2,1)=3">

<td><font size="5"><xsl:value-of select="."></xsl:value-of></font></td>

</xsl:when>

<xsl:otherwise>

<td><xsl:value-of select="."></xsl:value-of></td>

</xsl:otherwise>

</xsl:choose>

</xsl:if>

</xsl:when>

<xsl:when test="@type='image'">
<xsl:if test="$disposition=1 or $disposition=2 or $disposition=5 " >

<p align="center"><img>

<xsl:attribute name="SRC">

<xsl:value-of select="."/>

</xsl:attribute>

</img>

</p>

</xsl:if>

<xsl:if test="$disposition=3">

<td>

<img>

<xsl:attribute name="SRC">

<xsl:value-of select="."/>

</xsl:attribute>

</img>

</td>

</xsl:if>

<xsl:if test="$disposition=4">

<p align="center"><img>

<xsl:attribute name="SRC">

<xsl:value-of select="."/>

</xsl:attribute>

</img>

</p>

</xsl:if>

</xsl:when>

<xsl:when test="@type='sound'">

<xsl:if test="$disposition=4">

<bgsound>

<xsl:attribute name="SRC">

<xsl:value-of select="."/>

</xsl:attribute>

</bgsound>

</xsl:if>

</xsl:when>

</xsl:choose>

</xsl:template>

</xsl:stylesheet>

3- ASP page
<%
sXMLFilename="xml/news.xml"
sXSLFilename="xml/news.xsl"
   
'On charge le document XML
set objxml = Server.CreateObject("Microsoft.XMLDOM")
objxml.async = false
if (objxml.load(Server.MapPath(sXMLFilename)))= true then
  
'Puis le document XSL
set objxsl = Server.CreateObject("Microsoft.XMLDOM")
objxsl.async = false

if (objxsl.load(Server.MapPath(sXSLFilename))) =true then
  
' The following call doesn't work
Response.write (objxml.transformNode(objxsl))

else
response.write("Pb with XSL document")
end if
else
response.write("Pb with XML document")
end if
%>

Merci d'avance.

Halima.

--
Devenez redacteur <XML>fr et contribuez au developpement du
xml francophone (http://xmlfr.org/infos/redacteurs/) !

Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).

Cette liste est a votre disposition pour discuter en francais de tout sujet technique lie a XML.

Pour resilier votre abonnement, envoyez un message contenant la commande "unsubscribe" a xml-tech-request@xmlfr.org (mailto:xml-tech-request@xmlfr.org?Subject=unsubscribe)



Archive générée par hypermail 2.1.3 le 28/06/2004 - 11:06 UTC

webmaster@xmlfr.org

 

xml tech

Discussions techniques au sujet de XML.

Cette liste est à votre disposition pour discuter en français de tout sujet technique lié à XML.



Devenez rédacteur <XML>fr et contribuez au développement du xml francophone !
Les documents publiés sur ce site le sont sous licence "Open Content"
Conception graphique
  l.henriot@online.fr  

Conception, réalisation et hébergement