Afficher page XML dans browser + ajout xhtml

Afficher page XML dans browser + ajout xhtml - HTML/CSS - Programmation

Marsh Posté le 12-08-2005 à 10:46:07    

Bonjour,
 
Dans le cadre d'une application je suis amené à devoir afficher a l'ecran le contenu d'une page XML et je voudrais exploiter la capacité de certains browsers à l'indenter / colorer correctement , jusqu'a la pas de problemes. Le probleme vient du fait qu'autre cette page je dois mettre une serie de forms et de boutons sur la meme page ... Hors evidemment je ne peux pas le faire en ajoutant le xhtml dans l'xml sinon le code sera tout simplement affiché. Je ne peux nonplus pas transformer le xml en un string xhtml sinon on perd l'indentation & co ...  
 
Je me demandais donc s'il est possible de definir des zones contenant un mime different ... J'ai regardé dans les spec html mais je n'ai rien trouvé de vraiment concluant ... Mes collegues m'ont proposé de créer un (i)frame contenant l'xml inclu dans la page xhtml mais si je trouve "plus propre" c'est bien :) . Sinon j'avais pensé a refaire moi meme une servlet qui emule le comportement du browser mais vu la nature de nos documents je me suis rendu compte que ce serait un travail trop long par rapport au besoin...
 
Merci d'avance


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 12-08-2005 à 10:46:07   

Reply

Marsh Posté le 12-08-2005 à 11:07:50    

XSL ?
va serait pas ta solution par hasard ?
 
http://www.commentcamarche.net/xml/xmlxsl.php3


Message édité par gatsusat le 12-08-2005 à 11:08:34
Reply

Marsh Posté le 12-08-2005 à 11:41:35    

Bein le probleme de l'xsl c'est qu'il s'applique (à ce que j'en sais) a tout le document...
 
Donc si je met 3 lignes de code XML a afficher comme tel, et apres 2 lignes a interpreter par XSLT, et que je joint un xslt.. Toute la page sera intepretée par xslt ... A moins qu'il y ait moyen de limiter l'action ... mais j'en ai pas vu pour le moment ... je vais faire quelques recherches quand meme


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 12-08-2005 à 13:59:02    

Je pense pas que tu trouves mieux que la frame, à part de le gérer toi même ce qui t'assure du rendu peu importe le browser. http://www.sitepoint.com/article/h [...] e-code-php

Reply

Marsh Posté le 12-08-2005 à 14:15:40    

Oui mais ça doit s'integrer dans le reste de ma servlet et du serveur ... Je me vois mal demander a mon chef de mettre un client httpd dans le projet pour pouvoir faire du highlighting sur du xml [:petrus75]


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 12-08-2005 à 14:36:57    

Je pensais que tu bossais en PHP, http://www.xml.com/pub/a/2003/07/30/formatting.html mais je sens que tu vas me dire que la license du truc te convient pas [:petrus75]


Message édité par push le 12-08-2005 à 14:37:42
Reply

Marsh Posté le 12-08-2005 à 14:48:34    

Va falloir que j'en parle au boss [:petrus75] J'peux pas decider d'ajouter une lib comme ça mais en tous cas merci pour ton aide :D


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 12-08-2005 à 14:57:54    

sinon pour le xslt tu peux évidemment limiter les transformations à certaine partie, si tu enfermes ton code xml à indenter/colorier dans des balises qui les distinctent du reste de ton code xhtml, si tu trouves un xsl qui fait le boulot ce serait peut-être encore plus simple.

Reply

Marsh Posté le 12-08-2005 à 15:02:44    

esox_ch a écrit :

Hors evidemment je ne peux pas le faire en ajoutant le xhtml dans l'xml sinon le code sera tout simplement affiché.


Depuis quand ? J'ai déjà affiché plusieurs fois des fichiers XML contenant de l'XHTML, et jamais l'XHTML n'a été affiché :??:

Reply

Marsh Posté le 12-08-2005 à 15:15:38    

Ce que je voulais dire est que si j'ecris :
 
<xml>
 <tag1>
  <tag2 />
 </tag1>
<p>Bonjour</p>
</xml>
 
Le tout sera interpreter comme etant du xml (et c'est normal), le <p>Bonjour</p> ne sera pas interpreter (et afficher) comme étant un paragraphe contenant "Bonjour" ... mais je me suis p-e mal exprimé ...
 
@push : Je connais encore mal le xsl (je suis entrain d'essayer de m'y mettre pour un projet perso), je vais essayer ça ...


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 12-08-2005 à 15:15:38   

Reply

Marsh Posté le 12-08-2005 à 15:15:42    

Le monsieur y dit juste que si y rajoute du code xhtml pour ses boutons and co à son fichier xml, y vera le code et pas ses boutons ce qui est assez logique.

Reply

Marsh Posté le 12-08-2005 à 15:21:28    

Je viens de faire un petit test et ça a pas marché, je m'y prend sans doutes mal .
 
Enfait ce que je voudrais faire (je sais que ma syntaxe est fausse :( ) c'est :  
 

Code :
  1. <?xml version="1.0" encoding="ISO-8859-1"?>
  2. <root>
  3. <element>
  4.   <?xml-stylesheet type="text/xsl" href="xslt.xsl"?>
  5.   <son />
  6.   <?xml-stylesheet:end?>
  7. </element>
  8. </root>


 
Pour que seul l'element son soit interpreté par xsl


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 12-08-2005 à 15:22:53    

:sweat:
 
Donc en gros, tu voudrais que le morceau en XHTML soit interprété comme de l'XHTML ?

Reply

Marsh Posté le 12-08-2005 à 15:27:54    

Exact, tout en gardant la fonction "highlight" du browser ... Enfait la maniere la plus simple de representer la chose est de s'imaginer une frame contenant exclusivement de l'xml (donc interpretée par le browser comme etant effectivement de l'xml) et une autre frame avec de l'xhtml interpreté comme tel ... J'ai pensé que ça existait étant donné que ça ressemble un peu au "probleme" du multipart-data dans les emails [:pingouino]


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 12-08-2005 à 15:32:05    

J'ai plus touché à ça depuis longtemps mais je pense pas que t'ai le droit de déclarer ta feuille de style à cette endroit là, et pour limiter l'interpretration ça se passe avec <xsl:template> et des match dans ton fichier xsl, si t'enfermes ton code xml dans des balises comme j'ai dis plus haut ça devient simple, un seul match sur cette balise et tu te retrouves à traiter juste ton code xml.


Message édité par push le 12-08-2005 à 15:34:56
Reply

Marsh Posté le 12-08-2005 à 16:09:00    

esox_ch a écrit :

Exact, tout en gardant la fonction "highlight" du browser ... Enfait la maniere la plus simple de representer la chose est de s'imaginer une frame contenant exclusivement de l'xml (donc interpretée par le browser comme etant effectivement de l'xml) et une autre frame avec de l'xhtml interpreté comme tel ... J'ai pensé que ça existait étant donné que ça ressemble un peu au "probleme" du multipart-data dans les emails [:pingouino]


Y'a moyen :D Tiens ça serait marrant à faire d'ailleurs :D

Reply

Marsh Posté le 12-08-2005 à 16:39:34    

Si tu me donnes une piste j'veux bien le faire pour la communauté :D *Mon dieu que je suis généreux [:petrus75]*
 
 
Heu ... ok  *tcheu s't'édit :D*


Message édité par esox_ch le 12-08-2005 à 17:05:41

---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 12-08-2005 à 16:47:28    

En mixant des div, des span avec des classes qui font la coloration, y'a moyen [:dawa] Et en jouant avec les espaces de noms pour voir ce qui est XHTML et ce qui ne l'est pas [:dawa]

Reply

Marsh Posté le 12-08-2005 à 17:06:01    

Bonne chance :D C'est en dessus de mes capacité et connaissances je crois :D


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 12-08-2005 à 17:21:50    

je suis tombé là-dessus http://www.informatik.hu-berlin.de [...] mlverbatim
 
There's the possibility to render several XML nodes at once without outputting the parent node
 
j'ai pas testé mais ça vaut peut-être le coup d'essayer.

Reply

Marsh Posté le 13-08-2005 à 00:30:14    

Très mal fait malheureusement : <span> et & nbsp; au programme :(

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

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