débutant en xml... - XML/XSL - Programmation
Marsh Posté le 08-07-2003 à 10:20:34
Pour t'aider il nous faut un peu + d'info ( on est bon mais pas voyants non plus :-).
Quel message d'erreur exactement, quand et avec quel programme???
Pour éviter les smilies dans ton code utilise l'icone 'Fixed' ou 'C/C++'!
A+
Marsh Posté le 08-07-2003 à 10:26:58
Bon pour faire plus simple :
voici les adresses :
http://www.larochellerochefort.com/xml/entites.xsl
http://www.larochellerochefort.com/xml/entites.xml (ou il y a l'erreur)
Merci d'avance...
PS : le xml quand on débute c pas évident...
Marsh Posté le 08-07-2003 à 10:33:55
le_zell a écrit : ------------------------------------------------------------- |
<xsl:if test="BIPOLE/ENTITE/ADRESSE">
<xsl:value-of select="BIPOLE/ENTITE/ADRESSE" />
</xsl:if>
je pense que c ca
je debute aussi et c vrai que c pas facile
Edit : j avais oublié BIPOLE/ENTITE/ADRESSE
Marsh Posté le 08-07-2003 à 10:40:22
hop le fou a écrit : |
Bah c pas trop mal, mais si je veux que lorsque ADRESSE a une valeur alors on l'ecrit et sinon on met un - alors qu'est ce que je fais? car j'ai lu que le if de xsl n'a pas de else ...
Marsh Posté le 08-07-2003 à 10:43:28
le_zell a écrit : |
fo faire l inverse:
<xsl:if test="not(BIPOLE/ENTITE/ADRESSE)">-</xsl:if>
<xsl:value-of select="BIPOLE/ENTITE/ADRESSE"/>
comme tu n a pas de valeur ca va juste afficher - et si tu as une valeur tu affiches juste celle ci
Edit : j avais oublié le " fermant
Marsh Posté le 08-07-2003 à 10:47:58
hop le fou a écrit : |
ok ok alors bah la j'ai une erreur dans mon xml :
Méthode inconnue. -->not(BIPOLE<--/ENTITE/ADRESSE)
Marsh Posté le 08-07-2003 à 10:53:47
le_zell a écrit : |
g pas fermé les " "
c ptetre ca
Marsh Posté le 08-07-2003 à 12:19:09
hop le fou a écrit : |
bah non car y'avait une erreur de script sans les fermer...donc j'ai remis un " a la fin depuis plus d'erreurs de script mais j'ai ca :
<xsl:if test="not(BIPOLE/ENTITE/ADRESSE)">-</xsl:if>
<xsl:value-of select="BIPOLE/ENTITE/ADRESSE"/>
Methode inconnue ...
Quelqu'un peut-il nous aider?
Marsh Posté le 08-07-2003 à 12:25:25
le_zell a écrit : |
ce n'est pas le not qui pose un probleme
ca doit etre ton chemin d'acces dans ton fichier xml
vérifie que le chemin que tu donnes existes et que tu as bien mis <xsl:template match="??"/> comme il faut (remplacer les ?? par ce qu'il fo dans ton code)
Marsh Posté le 08-07-2003 à 13:47:35
hop le fou a écrit : |
étant donné que je débute...j'ai mis ca :
<xsl:template match="/"> |
Je sais mm po a quoi ca sert cette ligne lol!
Je sais pas si c bon, dans mon premier message y'a la structure de mon fichier xml
<BIPOLE> |
Marsh Posté le 08-07-2003 à 14:06:16
le_zell a écrit :
|
ca ve dire que ton chemin de base est la racine de ton doc
donc ce n'est pas le chemin qui déconne
mais sinon je sais pas...
essaie d'utiliser choose et when...
toutes les fonctions xsl sont ici:
http://selfhtml.selfhtml.com.fr/xm [...] tsxslt.htm
moi ca ma bien aidé
Marsh Posté le 08-07-2003 à 14:10:23
euh au fait tu as bien mis ca au milieu de balise d'affichage (du genre <td> ton truc </td> ) ?
Marsh Posté le 08-07-2003 à 15:00:14
hop le fou a écrit : euh au fait tu as bien mis ca au milieu de balise d'affichage (du genre <td> ton truc </td> ) ? |
Bon...j'ai bien avancé depuis lol mais c pas encore ca...voici mon nouveau problème :
<A target="_blank">
<xsl:attribute name="href">http://www.larochellerochefort.com/pages.php?page=fiche_entite&id_entite=<xsl:value-of select="ID_ENTITE" /></xsl:attribute>
<xsl:value-of select="DENOMINATION"/>
</A>
Bon pour expliquer je veux faire un lien vers un site avec un parametre dans l'url qui varie or le signe "=" n'a pas l'air de lui plaire...fo t il le coder??? des que je l'enleve tout va bien. Seulement j'en ai besoin pour pointer sur la bonne page...
J'ai mis en gras la partie qui gene le xml apparemment...
il me sort l'erreur :
Le symbole point-virgule était attendu. Erreur de traitement de la ressource file:///C:/larochellerochefort.com (dedie)/outils/xml/entites.xsl. Ligne 75, Position 86 |
Merci de ton aide Hop le fou !
Marsh Posté le 08-07-2003 à 15:07:32
le_zell a écrit :
|
je sais pas
essaye de mettre des ' '
en tout cas je ne crois pas qu il soit possible de coder =
sinon la derniere methode c d'utiliser une variable (je pense) mais ca fait galérer
Marsh Posté le 08-07-2003 à 15:14:29
Ouais en fait ct pas le '=' qu'il aimait pas c'etait le '&' ta peut etre une solution pour ca ?
http://www.larochellerochefort.com [...] id_entite=
ca ne marche toujours pas...Comment faire apparaitre un & sans que xml ne l'interprete ?
Marsh Posté le 08-07-2003 à 15:24:33
le_zell a écrit : Ouais en fait ct pas le '=' qu'il aimait pas c'etait le '&' ta peut etre une solution pour ca ? |
normalement xml ne l'interprete pas qd il est ecris & justement. ca sert a ca
l erreur est tjrs la meme?
Marsh Posté le 08-07-2003 à 15:34:56
hop le fou a écrit : |
Bah oui c ce que je comprends pas...j'ai lu de mon cote aussi que le & devait etre remplacé par & mais rien a faire il en veut pas...la je pige pas...
J'ai ecrit : http://www.larochellerochefort.com [...] id_entite=
et il me sort l'erreur :
Le symbole point-virgule était attendu. Erreur de traitement de la ressource file:///C:/larochellerochefort.com (dedie)/outils/xml/entites.xsl. Ligne 76, Position 105 |
Marsh Posté le 08-07-2003 à 15:42:13
le_zell a écrit :
|
ok j'ai trouvé!!!
il faut coder le & par &#38; et la ca fontionne nickel...
fiouuuuuuuu
allez a la suite maintenant !
Marsh Posté le 08-07-2003 à 15:50:24
le_zell a écrit :
|
je sais pas je vois pas...
c bizzare paske & et & c la meme chose...
Marsh Posté le 08-07-2003 à 16:36:46
hop le fou a écrit : |
En fait, ce que je crois comprendre c'est que normalement le fichier xml doit être relié à un document qui dit que & c'est & et moi je ne dois pas avoir cette ligne donc il ne remplace pas les & par des &...
Je suis en train de faire une dtd a moi ou il y a ce truc :
<!ENTITY amp "&#38;">
<!ENTITY lt "&#60;">
<!ENTITY gt ">">
<!ENTITY quot """>
<!ENTITY apos "'">
comme ca lorsque j'ecrirai & cela donnera &...
je pense que quelqu'un a deja du cree cette dtd et que dans l'entete du fichier xml il doit falloir y référer...mais comme je n'ai pas cette ligne...je fais a ma facon...
Marsh Posté le 08-07-2003 à 16:42:16
le_zell a écrit : |
la différence c qu on utilise pas le meme type de code:
tu utilise ceci : encoding="windows-1252"
moi j utilise ceci : encoding="iso-8859-1"
effectivement j avais pas bien lu le début de ton code...
Marsh Posté le 08-07-2003 à 16:50:06
hop le fou a écrit : |
en fait, j'avais changé ca depuis longtemps (j'avais vu partout que personne etait en codage windows-1252 alors j'ai changé vite fait!)
mais j'ai relié une dtd ou je défini :
<!ENTITY etcommercial "&#38;"> et partout ou j'ecris &etcommercial; ca le transforme en &! c du tout bon ! lol!
...ca commence a rentrer maintenant c pour transformer le tout en html...
comment fo faire?
Marsh Posté le 08-07-2003 à 16:54:28
le_zell a écrit : |
pas compri la question...
appliquer ta feuille de style xsl sur tes données xml?
Marsh Posté le 08-07-2003 à 16:56:48
hop le fou a écrit : |
bah en fait la sur mon poste j'ai des documents xml, xsl et une dtd...
c bien bo...mais comment utiliser le tout pour sortir du html standard...car cela on peut non?
Je peux voir le resultat correctement car je dispose de IE 6 mais ceux qui ne l'ont pas ne le verraient pas si je mettais le tout sur mon site web en l'état. Il faut d'abord transformer le tout en html (ou xhtml je sais po lol)
Merci de ton aide en tout cas! c sympa de pouvoir s'entraider...
Marsh Posté le 09-07-2003 à 09:14:59
le_zell a écrit : |
je sais pas moi je les affiche avec une servlet xsql a l aide de tomcat...
c tomcat je pense qui doit etre installé et qui va te sortir le code html
Marsh Posté le 09-07-2003 à 09:27:41
Transformer du XML en HTML consiste à développer un stylesheet qui te génère le code HTML à partir de ton XML. Tu as tous les éléments pour le faire maintenant.
En guise d'exemple un debut de stylesheet qui fait du HTML:
|
Attention, j'ai un peu élagé c'est juste pour te mettre sur la voie. Tu auras compris que cela consiste à ajouter les éléments HTML dans tes templates de façon à obtenir de l'HTML pur et dur!
A+
Marsh Posté le 10-07-2003 à 09:14:32
Attention, j'ai un peu élagé c'est juste pour te mettre sur la voie. Tu auras compris que cela consiste à ajouter les éléments HTML dans tes templates de façon à obtenir de l'HTML pur et dur! |
Merci pour ton aide avander...
Je vais essayer cela tout de suite et au cours de la journée je te demanderais surement qques trucs...
Encore merci...
Marsh Posté le 10-07-2003 à 09:35:32
le_zell a écrit :
|
Cet xml transformé est comptabile tous les navigateurs ? car dans ma barre d'adresse y'a toujours fichier.xml ca ne pose pas de problème? Le code reste en xml...il doit y avoir un problème...Le code source devient du html ???
Marsh Posté le 10-07-2003 à 14:02:20
le_zell a écrit : |
Allo ?
Marsh Posté le 10-07-2003 à 15:43:05
tiens fast?! comme on se retrouve ?
Merci pour les liens
Je voudrais une convertion xml "temps réelle" tu vois.
J'ai avancé depuis tout a l'heure puisque j'ai installé xalan qui est un processeur xslt java qui convertit tout document xml et sa feuille xsl associée en doc htm...tout ca me parait lourd qd mm
etant donné notre base PHP/MySQL on doit extraire x enregistrements sous forme xml puis y adjoindre une feuille xsl foutre le tout dans xalan et tout ca pour ressortir du html?
Quoi t'en penses?
Marsh Posté le 08-07-2003 à 10:14:28
bon voila mon fichier xml :
<?xml version="1.0" encoding="windows-1252"?>
<?xml-stylesheet type="text/xsl" href="entites.xsl" ?>
<BIPOLE>
<ENTITE>
<ID_ENTITE>2553</ID_ENTITE>
<DENOMINATION>Halte parentale Les Grenouilles</DENOMINATION>
<ADRESSE>Centre social Libération - 1 Place du marais</ADRESSE>
<CODE_POSTAL>17300</CODE_POSTAL>
<VILLE>Rochefort-sur-mer</VILLE>
<EMAIL></EMAIL>
<SITE_WEB></SITE_WEB>
<TELEPHONE>05 46 87 56 77</TELEPHONE>
<TELECOPIE></TELECOPIE>
<CONTACT></CONTACT>
<RESUME></RESUME>
<MISSION_FONCTION>Halte garderie</MISSION_FONCTION>
<PRODUITS_SERVICES>Garde d'enfants le lundi de 9h00 à 12h00 et tous les après-midi de 13h30 à 18h00</PRODUITS_SERVICES>
<INFORMATIONS></INFORMATIONS>
<COMPLEMENT_INFO></COMPLEMENT_INFO>
<PUBLIC>Parents</PUBLIC>
<IMAGE_1></IMAGE_1>
<IMAGE_2></IMAGE_2>
<IMAGE_3></IMAGE_3>
<COPYRIGHT_1></COPYRIGHT_1>
<COPYRIGHT_2></COPYRIGHT_2>
<COPYRIGHT_3></COPYRIGHT_3>
<SOURCE>mairie rochefort</SOURCE>
<DATE_SAISIE>12-09-2002</DATE_SAISIE>
<NAF></NAF>
<SIRET></SIRET>
<LOGIN>Login_2553</LOGIN>
<PASSWORD>HRRTpmGk</PASSWORD>
<ID_FILIERE>0</ID_FILIERE>
<VISIBLE>1</VISIBLE>
</ENTITE>
.
.
.</BIPOLE>
-------------------------------------------------------------
Jusque la (lol) ca va...
maintenant je voudrais que dans mon fichier xsl
si la valeur de tel noeud n'est pas nulle alors on l'affiche j'ai fais un truc du genre :
<xsl:choose>
<xsl:when test="(BIPOLE/ENTITE/ADRESSE/!='')">
-
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="ADRESSE" />
</xsl:otherwise>
</xsl:choose>
mais bon j'ai une erreur de jeton incompréhensible pour moi peut etre que vous saurez m'aider...
j'aurais surement d'autres questions lol!
a tout de suite j'espere...