XML/XSL => générer du (x)html ?

XML/XSL => générer du (x)html ? - XML/XSL - Programmation

Marsh Posté le 05-03-2004 à 13:33:52    

Bonjout a tous  
 
Je suis novice dans le domaine, je connais xml et un peu XSL.
Je me me demandais s'il était possible de faire un site entierement avec le XML et XLS ? si oui comment ?
 
Etait -il possible de generer dynamique (à la demande du client) un page html avec les données xml/xsl?
Car dans les urls, il en va pas tapper index.xml mais index.html
 
Des sites se disent entierement fait en xml mais comment font-il pour avoir des pages html ? faut-il une base ?
 
j'ai entendu parler de cocoon mais a quoi sert exactement ce soft ?


Message édité par Phive le 05-03-2004 à 15:36:31

---------------
/!\ Post powered by Phive-online.com /!\
Reply

Marsh Posté le 05-03-2004 à 13:33:52   

Reply

Marsh Posté le 05-03-2004 à 13:36:29    

cocoon -> va voir sur le site, il est tres bien http://cocoon.apache.org/
pour faire des site entierement en xml (on peut considerer que le XHTML est du XML deja), tu peux aller voir le topic XTML ou alors aller là:
http://incongru.webdynamit.net/LaNouvelleFAQ
 
sinon avec ta XSL tu peux tres bien faire un document HTML à partir des données contenu dans ton XML :jap:
cf . http://www.commentcamarche.net/xml/xmlxsl.php3


Message édité par uriel le 05-03-2004 à 13:42:28

---------------
IVG en france
Reply

Marsh Posté le 05-03-2004 à 14:14:20    

uriel a écrit :

cocoon -> va voir sur le site, il est tres bien http://cocoon.apache.org/
pour faire des site entierement en xml (on peut considerer que le XHTML est du XML deja), tu peux aller voir le topic XTML ou alors aller là:
http://incongru.webdynamit.net/LaNouvelleFAQ
 
sinon avec ta XSL tu peux tres bien faire un document HTML à partir des données contenu dans ton XML :jap:
cf . http://www.commentcamarche.net/xml/xmlxsl.php3


 
J'ai repris l'exemple de CCM comme cela :
Monfichier xml :


<?xml version="1.0" encoding="iso-8859-1"?>
  <?xml-stylesheet type="text/xsl" href="fichierxsl.xsl"?>
 
<personne>
 <nom>Pillou</nom>
 <prenom>Jean-François</prenom>
</personne>
 
<personne>
 <nom>VanHaute</nom>
 <prenom>Nico</prenom>
</personne>
 
<personne>
 <nom>Andrieu</nom>
 <prenom>Seb</prenom>
</personne>


 
mon fichier xsl :


<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl" xmlns="http://www.w3.org/TR/REC-html40" result-ns="">
 <xsl:template match="/">
  <HTML>
   <HEAD>
    <TITLE>Titre de la page</TITLE>
   </HEAD>
   <BODY BGCOLOR="#FFFFFF">
    <xsl:apply-templates/>
   </BODY>
  </HTML>
 </xsl:template >
 
 <xsl:template match="personne" >
  <ul>
   <li>
   <xsl:value-of select="nom"/>
   -
   <xsl:value-of select="prenom"/>
   </li>
  </ul>
 </xsl:template >
</xsl:stylesheet>


 
Il me fait une erreur me disant que seul un element "personne" est autorisé. Du coup j'ai fait le test avec un seul personne ca marche bien. Comment faire pour en avoir plusieurs.
 
En ayant c'est 2 fichiers je n'arrive tjs pas avoir un doc html. QD je lance le fichier xml c'est tjs un fichier xml.
Faut il que je fasse qd meme un doc xhtml dans lequel je mettrai mes balises xml et auquel j'appliquerai ma feuille de style xsl ?
 
Du coup j'aurai besoin de plusieur truc :  
XML/XSL pour mes données
Xhtml/css pour mettre ne forme mes données .
Est ce bien cela ?


---------------
/!\ Post powered by Phive-online.com /!\
Reply

Marsh Posté le 05-03-2004 à 14:15:23    

Sinon autre question :  
A partir de mes 2 documents (xml et xsl) est-il possible d'avoir un fichier html automatiquement ?


---------------
/!\ Post powered by Phive-online.com /!\
Reply

Marsh Posté le 05-03-2004 à 14:21:45    

Sinon je viens de refaire un autre test :
 
Mon fichier xml que j'avais j'en ai fait un fichier html (juste ne changeant lextension) le truc c'est qu'il m'affiche bien mes 2 personnes mais pas selon ma feuille de style xsl.
 
Quelqu'un pourrait til me guider  :hello:


---------------
/!\ Post powered by Phive-online.com /!\
Reply

Marsh Posté le 05-03-2004 à 14:42:02    

Je viens de trouver un exemple :  
http://membres.lycos.fr/clotilde/etexts/bnf/comte.htm
 
Nous avons donc bien une page html.
 
 
Et ils disent ceci :  
Ce catalogue est disponible en version XML accompagnée d'une feuille de style XSL conforme à la spécification du W3C (nécessitant pour être vue sous MSIE5 le  nouveau parseur de Microsoft). Nous en donnons ici une version HTML générée automatiquement à l'aide de cette feuille de style.
 
 
 
Comment faire cette génération automatique ?
Elles se fait qd et ou ? a la volée ?
j'arrive pas bien a comprendre.


Message édité par Phive le 05-03-2004 à 14:42:18

---------------
/!\ Post powered by Phive-online.com /!\
Reply

Marsh Posté le 07-03-2004 à 19:40:02    

:bounce:  
 :hello:  
 :sol:  
 :whistle:  
 :(  
 :cry:  
 :love:


---------------
/!\ Post powered by Phive-online.com /!\
Reply

Marsh Posté le 08-03-2004 à 12:46:32    

En fait, comme dit precedemment, tu peux utiliser cocoon pour faire ca.
Quand tu va demander la page truc.html, cocoon va la générer a partir de truc.xml et truc.xsl.

Reply

Marsh Posté le 08-03-2004 à 16:55:05    

Oki marchi bien pour votre aide....
 
Maintenant reste juste a installer et configurer cocoon et ca c une autre paire de manche...


---------------
/!\ Post powered by Phive-online.com /!\
Reply

Marsh Posté le 08-03-2004 à 17:03:13    

chapi456 a écrit :

En fait, comme dit precedemment, tu peux utiliser cocoon pour faire ca.
Quand tu va demander la page truc.html, cocoon va la générer a partir de truc.xml et truc.xsl.


 
au fait une kestion :  
 
Est ce que cette page existe deja ou bien elle va être créer automatique à la demande de l'utilisateur ?


---------------
/!\ Post powered by Phive-online.com /!\
Reply

Marsh Posté le 08-03-2004 à 17:03:13   

Reply

Marsh Posté le 08-03-2004 à 17:04:47    

Phive a écrit :


 
au fait une kestion :  
 
Est ce que cette page existe deja ou bien elle va être créer automatique à la demande de l'utilisateur ?


 
tu peux faire les 2


---------------
IVG en france
Reply

Marsh Posté le 08-03-2004 à 17:08:20    

Coucou !!
 
Désolé pour le retard .. Petite information supplémentaire..
 
XML et XSLT sont quand même des outils d'avenir qu'il ne faut pas prendre à la légère, sache que ce que tu veux faire est entièrement possible, meme sans cocoon.
 
Par contre ce que tu ne semble pas comprendre c'est que l'XML associé à du XSL, n'est pas de l'interpreté mais plutot du compilé (Arretz moi si je dis des conneries)
 
Toujours est-il que tu as un besoin d'un parser pour étudier ton fichier XML et lui attaché le style définit dans tes fichiers XSL ..
 
Si tu veux bien t'amuser tu peux voir çà en natif dans les distrib LINUX ...
 
 
Et si tu veux faire du travail de pro, je te conseil d'utiliser DOCBOOK (c'est une forme de XML normalisé par une DTD propre) et des feuille de styles XSLT. ..
 
Ensuite tu as des procs en natif dans linux pour transformer le tout
 
JE sais qu'il existe des feuille de style XSLT pour docbook ultra complète (Pour générer automatiquement des sommaires, etc .. J'ai travaillé 2 mois sur çà , et crois tu peux faire de jolies trucs, c'est d'ailleur ce qu'utilise O'reilly pour faire leur bouquin ;)
 
Enfin bref voilà cherche dans la direction de Docbook si tu veux aller plus loin..
 
Au fait pour le truc de générer dynamiquement tes pages WEB, çà voudrais dire que ton serveur à la demande du client transforme tes fichiers XML c'est pas forcément le plus performant, ceci dit, PHP Le fait :)
 
Mais le vieux c'est java, dans ces cas là (je ne suis pas expert) mais une solution J2EE me paraitrait correspondre, pour les traitement ..
 
J'espere que je ne t'ai pas trop perdu, si tu veux des réponses plus précises PV moi :)

Reply

Marsh Posté le 08-03-2004 à 17:10:58    

c'est clair que DocBook c'est vraiment tres puissant (remplacer lateX ?) mais pas evident au debut (comme LateX en fait)... :jap:


---------------
IVG en france
Reply

Marsh Posté le 08-03-2004 à 17:14:07    

Ouai enfin DOCBOOK c pas dur, c du XML ... Après appliquer les SCRIPTS XSLT existants, c'est un peu plus cho :p
 
Mais docbook, y'a de la doc ladessus déjà et c'est pas compliqué à comprendre c de l'arborescence de colégien (Book, Chapter, para, ...)
 

Reply

Marsh Posté le 09-03-2004 à 11:44:48    

Bah merci bcp pour tous ces renseignements...
En tout cas y a de quoi faire....
Je vais essayer de me renseigner a droites à gauche pour voir et recuperer des truc pertinents pour mon projet :)


---------------
/!\ Post powered by Phive-online.com /!\
Reply

Marsh Posté le 09-03-2004 à 11:50:14    

Le truc ou j'ai un peu de mal c'est au niveau des processeurs (genre sablotron,Domxml,Xsltproc, Cocoon)...j'ai du mal a piger leur fonctionnement et a les faire marcher egalement...


---------------
/!\ Post powered by Phive-online.com /!\
Reply

Marsh Posté le 09-03-2004 à 11:56:34    

Phive a écrit :

Le truc ou j'ai un peu de mal c'est au niveau des processeurs (genre sablotron,Domxml,Xsltproc, Cocoon)...j'ai du mal a piger leur fonctionnement et a les faire marcher egalement...


 
C'est kler que c'est pas le plus facile à faire fonctionner
 
Il faut bien comprendre que dans le processus XML / XSLT il y'a 4 trucs principaux qui rentrent en jeux...
 
1) La DTD c'est qui permet de dire que ton document XML est valide (Va voir DTD dans commentcamarche.net, ça doit y être) En général la DTD est obligatoire sinon le precesseur ne va pas validé ton document et il ne le transformera pas
 
2) Tu as le fichier ou les fichierrs XML qui contient le contenu, et qui doit être conforme à ta DTD
 
3) Les scripts XSLT qui présente comment transformer ton XML  
 
4) Et enfinc les processeurs XslProc; Cocoon, Sax, etc ... Je ne sais même plus le quel j'utilisai , le proc s'occupe de la transformation, il lie le XML et regarde pour chaque balisage comment le SCRIPT XSLT lui dit de réagir.. et pour çà transforme :)
 
 
Tu peux essayer en natif sous windows avec Docbooktohtml, je crois :)
 
 
Y'a un autre truc qu'il faut savoir aussi si tu utilises Docbook, c'est que la DTD peut être conforme pour XML ou SGML :)

Reply

Marsh Posté le 09-03-2004 à 11:57:57    

Phive a écrit :

Le truc ou j'ai un peu de mal c'est au niveau des processeurs (genre sablotron,Domxml,Xsltproc, Cocoon)...j'ai du mal a piger leur fonctionnement et a les faire marcher egalement...


je crois surtout que tu essaye de commencer par attaquer des trucs énormes ...
 
je sais pas dans quel techno tu ais, mais si c'est du java (comme le laisse penser le fait que tu t'orientais vers cocoon), fais toi quelques pages XML qui seront transformées en html via une XSL. Ce genre de truc se fait en quelques lignes dans une servlet ...


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 09-03-2004 à 13:12:45    

Si tu as installé le parser de Microsoft il y a un minuscule MsXSL.EXE que tu peut télécharger et alors en ligne de commande tu tapes : msXSL truc.xml truc.xsl -o truc.html
 
Excellent pour comprendre le méchanisme, après si cela te suffit pas tu peut toujours investiger Cocoon, si tu te plonge dedans direct tu risque au mieux de te noyer...  
 
Bon courage!

Reply

Marsh Posté le 09-03-2004 à 13:15:16    

Avander a écrit :

Si tu as installé le parser de Microsoft il y a un minuscule MsXSL.EXE que tu peut télécharger et alors en ligne de commande tu tapes : msXSL truc.xml truc.xsl -o truc.html


il me semble aussi qu'il y a une page ASP qui fait un truc équivalent ... mais je sais plusôù on la trouve :/


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 15-03-2004 à 12:56:13    

salut,
je trouve le parser microsoft à l'air vraiment pratique car c'est vraiment ce que je désire faire mais existe-il un equivalent pour linux ? Ou encore mieux, existe-t-il un parser java qui serait indépendant de la plateforme utilisée?
 
Merci
++


Message édité par ohan le 15-03-2004 à 12:56:19
Reply

Marsh Posté le 15-03-2004 à 12:59:07    

ohan a écrit :

salut,
 Ou encore mieux, existe-t-il un parser java qui serait indépendant de la plateforme utilisée?


 
 oui: http://xml.apache.org/xerces2-j/index.html
 
 


---------------
IVG en france
Reply

Marsh Posté le 15-03-2004 à 13:11:46    

Citation :

Par contre ce que tu ne semble pas comprendre c'est que l'XML associé à du XSL, n'est pas de l'interpreté mais plutot du compilé (Arretz moi si je dis des conneries)


Tu dis des conneries. C'est ni l'un ni l'autre. Tes fichiers XML et XSL sont des données.  
A+,


Message édité par gilou le 15-03-2004 à 13:13:31

---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
Reply

Marsh Posté le 15-03-2004 à 15:59:17    


merci, je vais jeter un coup d'oeil !

Reply

Marsh Posté le 15-03-2004 à 21:52:04    

ohan a écrit :

existe-t-il un parser java qui serait indépendant de la plateforme utilisée?


ben de base java est multiplateforme donc si il existe un parser java, il est directement multiplateforme.
 
En plus, si tu utilises une version de java supérieur ou égale à la 1.3 le parser est directement inclu.

Reply

Marsh Posté le 15-03-2004 à 22:13:31    

Ce que je voullais dire "existe-t-il un parser java ou un qui serait multiplateforme"

Reply

Marsh Posté le 17-03-2004 à 00:39:07    

ohan a écrit :

Ce que je voullais dire "existe-t-il un parser java ou un qui serait multiplateforme"

[:rofl] [:rofl]
A+,


Message édité par gilou le 17-03-2004 à 00:39:40

---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

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