Panacea.NL als je geinteresserd bent in IT en Geneeskunde!
Verwijderd
Dat is conform de XML standaard.
http://www.w3.org/TR/2000/REC-xml-20001006#sec-cdata-sect
Een geldig XSL document voldoet uiteraard aan die standaard.
het gaat er om dat HTML opgemaakte tekst uit de database eerst in de XML komt en dan via de XSL gewoon als dezelfde HTML (maar wel geparsed) verschijnt
Panacea.NL als je geinteresserd bent in IT en Geneeskunde!
Wat bedoel je met gegenereerde data. Als je gewoon je XML uitpoept middels een script dan wil dit wel werken.Op vrijdag 24 mei 2002 22:40 schreef zoepercavia het volgende:
dat snap ik.. maar dan kan er geen gegenereerde data tussen.... of wel?
het gaat er om dat HTML opgemaakte tekst uit de database eerst in de XML komt en dan via de XSL gewoon als dezelfde HTML (maar wel geparsed) verschijnt
Ik zou die <xsl:cdata> trouwens niet gebruiken. Ook al vind ik 'm wel fraaier, het is niet standaard (voor zover ik weet).
voor de duidelijkheid, de XML (xml_content is pagina/content in XML structuur):
set xml_cdata = xmldoc.createCDataSection("ksjfsf<br/>sdfsdf")
xml_content.appendChild(xml_cdata)
--------------
in de XSL:
<xsl:cdata><value-of select="pagina/content"></xsl:cdata>
OUTPUT:
ksjfsf
sdfsdf
----------
in de XSL:
value-of select="pagina/content">
OUTPUT:
ksjfsf<br/>sdfsdf
Panacea.NL als je geinteresserd bent in IT en Geneeskunde!
copy-of? wat is het nut daarvan?
ik zal proberen het probleem kort en duidelijk te formuleren:
Een stukje HTML uit de database moet via XML en XSL geparsed in de HTML terecht komen...
database:
koe<br>schaap
XML:
<![CDATA[ koe<br>schaap ]]>
XSL:
??
HTML output na transform:
koe
schaap
wat moet ik in de XSL doen?! <xsl:cdata> werkt een beetje, maar is niet officieel, ik kan me niet voorstellen dat er geen andere oplossing voor is...
Panacea.NL als je geinteresserd bent in IT en Geneeskunde!
Panacea.NL als je geinteresserd bent in IT en Geneeskunde!
in de XML:
maak een CData sectie met createCDataSection
in de XSL:
<xsl:value-of select="." disable-output-escaping="yes" />
zo kan je mooi oude html uit je db gebruiken in je nieuwe XML systeem
Panacea.NL als je geinteresserd bent in IT en Geneeskunde!
1
| <message posted="12 " poster="Vampier" title="Vampier draait ze"><![CDATA[hier komt a`lles te" sta'an<br />:)]]></message> |
en in mijn XSL
1
2
3
4
5
| <table> <tr><td><xsl:value-of select="//message/@title"/></td></tr> <tr><td>Posted by :<xsl:value-of select="//message/@posted"/> @ <xsl:value-of select="//message/@poster"/></td></tr> <tr><td><xsl:value-of select="//message" disable-output-escaping="yes" /></td></tr> </table> |
Dit werkt perfect op IE maar mozilla en firebird werkt het niet
Wat ik dus wil is <html> coded parsen omdat dit zo in mijn database staat
[ Voor 128% gewijzigd door Vampier op 19-11-2003 19:47 ]
Maar transformeer je client-side of server-side? En wat is de foutmelding? Wat werkt niet? Wat is de output?
Wat ik wil ik dat de HTML code gewoon doorgegeven wordt als HTML code. Alles wordt client side getransformeerd. (dat wil ik zo houden want het doel is om het data verkeer drastisch naar beneden te halen.)
Op dit moment werkt het in IE maar niet in andere browsers.
- GrimaceODespair
- Registratie: December 2002
- Laatst online: 26-11 23:14
eens een tettenman, altijd ...
Verder: wat doe je nu precies? Je geeft nergens aan hoe je de xml en de xsl aan elkaar linkt, noch geef je aan wat er precies misloopt.
Wij onderbreken deze thread voor reclame:
http://kalders.be
<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" href="bla.xsl"?>
Zo koppel ik het aan elkaar
Wat er tussen cdata staat
1
| <root><replytracker posts="10"><reply><![CDATA[ <a onmousemove="javascript:display('Vampier - Vampier op fok! radio!!');" onmouseout="javascript:hide();" href="index.php?id=192#378" style="font-size:9px;font-weight:normal;" alt="Vampier - Vampier op fok! radio!!">Vampier op fok! radio!!</a>]]></reply><reply><![CDATA[ <a onmousemove="javascript:display('Nolius - Vampier op fok! radio!!');" onmouseout="javascript:hide();" href="index.php?id=192#377" style="font-size:9px;font-weight:normal;" alt="Nolius - Vampier op fok! radio!!">Vampier op fok! radio!!</a>]]></reply><reply><![CDATA[ <a onmousemove="javascript:display('Maarten - Vampier op fok! radio!!');" onmouseout="javascript:hide();" href="index.php?id=192#376" style="font-size:9px;font-weight:normal;" alt="Maarten - Vampier op fok! radio!!">Vampier op fok! radio!!</a>]]></reply><reply><![CDATA[ <a onmousemove="javascript:display('Vampier - Vampier op fok! radio!!');" onmouseout="javascript:hide();" href="index.php?id=192#375" style="font-size:9px;font-weight:normal;" alt="Vampier - Vampier op fok! radio!!">Vampier op fok! radio!!</a>]]></reply><reply><![CDATA[ <a onmousemove="javascript:display('steggy - Vampier op fok! radio!!');" onmouseout="javascript:hide();" href="index.php?id=192#374" style="font-size:9px;font-weight:normal;" alt="steggy - Vampier op fok! radio!!">Vampier op fok! radio!!</a>]]></reply><reply><![CDATA[ <a onmousemove="javascript:display('Vampier - Downtijd');" onmouseout="javascript:hide();" href="index.php?id=191#373" style="font-size:9px;font-weight:normal;" alt="Vampier - Downtijd">Downtijd</a>]]></reply><reply><![CDATA[ <a onmousemove="javascript:display('Peer - Downtijd');" onmouseout="javascript:hide();" href="index.php?id=191#372" style="font-size:9px;font-weight:normal;" alt="Peer - Downtijd">Downtijd</a>]]></reply><reply><![CDATA[ <a onmousemove="javascript:display('Ralph - It is really true!!');" onmouseout="javascript:hide();" href="index.php?id=190#371" style="font-size:9px;font-weight:normal;" alt="Ralph - It is really true!!">It is really true!!</a>]]></reply><reply><![CDATA[ <a onmousemove="javascript:display('Peer - Luuk Koelman bijt in het zand');" onmouseout="javascript:hide();" href="index.php?id=189#370" style="font-size:9px;font-weight:normal;" alt="Peer - Luuk Koelman bijt in het zand">Luuk Koelman bijt in het zand</a>]]></reply><reply><![CDATA[ <a onmousemove="javascript:display('Vampier - Luuk Koelman bijt in het zand');" onmouseout="javascript:hide();" href="index.php?id=189#369" style="font-size:9px;font-weight:normal;" alt="Vampier - Luuk Koelman bijt in het zand">Luuk Koelman bijt in het zand</a>]]></reply></replytracker><posttracker posts="10" ><post><![CDATA[ <a onmousemove="javascript:display('18-11-2003 - Vampier op fok! radio!!');" onmouseout="javascript:hide();" href="index.php?id=192" style="font-size:9px;font-weight:normal;">Vampier op fok! radio!!</a> ]]></post><post><![CDATA[ <a onmousemove="javascript:display('17-11-2003 - Downtijd');" onmouseout="javascript:hide();" href="index.php?id=191" style="font-size:9px;font-weight:normal;">Downtijd</a> ]]></post><post><![CDATA[ <a onmousemove="javascript:display('16-11-2003 - It is really true!!');" onmouseout="javascript:hide();" href="index.php?id=190" style="font-size:9px;font-weight:normal;">It is really true!!</a> ]]></post><post><![CDATA[ <a onmousemove="javascript:display('14-11-2003 - Luuk Koelman bijt in het zand');" onmouseout="javascript:hide();" href="index.php?id=189" style="font-size:9px;font-weight:normal;">Luuk Koelman bijt in het zand</a> ]]></post><post><![CDATA[ <a onmousemove="javascript:display('14-11-2003 - Sing-a-long : Korn All My Hate');" onmouseout="javascript:hide();" href="index.php?id=188" style="font-size:9px;font-weight:normal;">Sing-a-long : Korn All My Hate</a> ]]></post><post><![CDATA[ <a onmousemove="javascript:display('14-11-2003 - Shadows of the past');" onmouseout="javascript:hide();" href="index.php?id=187" style="font-size:9px;font-weight:normal;">Shadows of the past</a> ]]></post><post><![CDATA[ <a onmousemove="javascript:display('12-11-2003 - 80% of en employers want to quit their job!!');" onmouseout="javascript:hide();" href="index.php?id=186" style="font-size:9px;font-weight:normal;">80% of en employers want to q...</a> ]]></post><post><![CDATA[ <a onmousemove="javascript:display('11-11-2003 - American History part I : Colonialisation');" onmouseout="javascript:hide();" href="index.php?id=185" style="font-size:9px;font-weight:normal;">American History part I : Col...</a> ]]></post><post><![CDATA[ <a onmousemove="javascript:display('11-11-2003 - Multi Lingual');" onmouseout="javascript:hide();" href="index.php?id=184" style="font-size:9px;font-weight:normal;">Multi Lingual</a> ]]></post><post><![CDATA[ <a onmousemove="javascript:display('10-11-2003 - Aardbeving in Nederland');" onmouseout="javascript:hide();" href="index.php?id=183" style="font-size:9px;font-weight:normal;">Aardbeving in Nederland</a> ]]></post></posttracker><message time="18-11-2003 @ 04:59:38" topic="Vampier op fok! radio!!" poster="Vampier"><![CDATA[ Sinds 17 november is fok! radio weer in de lucht. <br /><br />Op de fok! site valt het volgende te vinden:<blockquote><font class="quote">quote:</font><hr />Wat is FOK!radio?<br /><br />FOK!radio is iedere week twee uur lang te horen en gaat -natuurlijk- over FOK! De eerste uitzending was op 16 september 2003, toen het programma nog op het internet radiostation Protune Live Radio werd uitgezonden. Helaas stopte dit station op 11 oktober waardoor FOK!radio na drie uitzendingen ook moest stoppen. Sinds 17 november is het programma echter weer terug, en hoe!<br /><br />Iedere week hebben we een aantal vaste items in het programma. Zo hoor je Yvonne die de laatste roddels binnen FOK! met je doorneemt. Ook stellen we iedere week een crew-lid en een user aan je voor. SunChaser gaat offtopic in zijn column en een van de vaste forumbezoekers neemt de afgelopen week van het forum met je door.<hr /></blockquote><br />De heren en Sunchaser vonden het een goed idee om mij te intervieuwen.... omdat ik stotter en Nederlands niet meer echt mijn 'meest gesproken taal' is zeg ik nogal een aantaal keer um. ook de vertraging op de lijn wou niet echt meehelpen (ik zat verbonden via skype.com)<br /><br />Als je een keer leuke interactieve radio wilt horen met het leukste forum van Nederlands <a href="www.fok.nl" target="_blank">www.fok.nl</a> dan moet je zeker een keer langskomen (ook om te posten [img]"./images/smileys/wink.gif"[/img])<br /><br />Voor meer info over fok radio <a href="http://frontpage.fok.nl/radio" target="_blank">klik hier</a><br /><br />voor het interview bezoek de volgende link:<br /><br /><a href="http://www.vampier.net/blog/photos/fokradio/vampier.mp3" target="_blank">http://www.vampier.net/blog/photos/fokradio/vampier.mp3</a> ]]></message></root> |
overbodige lange code ik weet.
alles wat er tussen cdata staat moet niet gerenderd worden. Verder heb ik een XSL.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
| <?xml version="1.0" encoding="ISO-8859-1"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template match="/"> <html> <head> <title><xsl:value-of select="//root/@title"/></title> <link rel="stylesheet" href="style.css" /> <script language="javascript" src="functions.js"></script> <style> .logo{position:absolute;top:10px;left:0px;width:192px;z-index:0;} .posttracker{position:absolute;top:100px;left:10px;width:192px;background:#eeeeee;z-index:2;background:url("images/backgorund.png");} .replytracker{position:absolute;top:320px;left:10px;width:192px;background:#eeeeee;z-index:2;background:url("images/backgorund.png");} .message{position:absolute;top:100px;left:225px;width:550px;z-index:1;background:url("images/bg.gif");} </style> </head> <body background="images/background.gif"> <div class="logo">[img]"images/logo.png"[/img]</div> <div id="news" style="position:absolute;z-index:5;top:-100px;" class="news"></div> <!-- last posting tracker --> <table border="0" class="posttracker"> <tr><td align="left">The last <xsl:value-of select="//posttracker/@posts"/> posts</td></tr> <xsl:for-each select="//post"> <tr><td>[img]"images/block.gif"[/img]<xsl:value-of select="." disable-output-escaping="yes"/></td></tr> </xsl:for-each> </table> <!-- reply tracker --> <table border="0" class="replytracker"> <tr><td align="left">The last <xsl:value-of select="//root/replytracker/@posts"/> reactions</td></tr> <xsl:for-each select="//reply"> <tr><td>[img]"images/block.gif"[/img]<xsl:value-of select="." disable-output-escaping="yes"/></td></tr> </xsl:for-each> </table> <table border="0" class="message"> <tr><td class="postheader"><xsl:value-of select="//message/@topic"/></td></tr> <tr><td class="postinfo">Posted by : <xsl:value-of select="//message/@poster"/> - <xsl:value-of select="//message/@time"/></td></tr> <tr><td><xsl:value-of select="//message" disable-output-escaping="yes"/></td></tr> </table> <script> //alert(document.body.innerHTML) </script> </body> </html> </xsl:template> </xsl:stylesheet> |
disable-output-escaping="yes"
Ik houd me precies aan de conventies van XML en XSL... gebruik de juiste syntaxen e.d.
In IE werkt het goed maar in andere browsers is het een hell.
(cdata wordt dan namelijk als text op de page neergezet.. dus met <br /> e.d zichtbaar.
Ik hoop dat het nu beter te begrijpen valt.
Alles wat er in de CDATA sections in de input staat moet niet gerenderd worden door de XSL parser, maar wel zo verstuurd naar de browser dat het wel gerenderd wordt? Dan moet het in de output dus niet naar een CDATA section. IE doet het kennelijk fout.Dave Shea schreef op 19 november 2003 @ 11:00:
Build and test your CSS in the most advanced browser available before testing in others, not after.
If you build a site testing in a broken browser, your code begins relying on the broken rendering of that browser. When it comes time to test in a more standards-compliant browser, you will be frustrated when that browser renders it improperly. Instead, start from perfection and then hack for the less able browsers. Your code will be more standards-compliant from the start, and you won't have to hack as much to support other browsers. Today, this means Mozilla, Safari, or Opera.
Rustacean
Bedankt voor jullie bijdragen
- GrimaceODespair
- Registratie: December 2002
- Laatst online: 26-11 23:14
eens een tettenman, altijd ...
Trouwens, andere vraag: heb je ondervonden dat er minder dataverkeer is, of hoop je dat alleen? Misschien zie ik het gewoon niet, maar ik snap niet hoe dat zou kunnen namelijk.
Wij onderbreken deze thread voor reclame:
http://kalders.be