Panacea.NL als je geinteresserd bent in IT en Geneeskunde!
Verwijderd
Naar mijn weten hoort dat tussen <![CDATA[ en ]]> te staan.
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.
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.
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
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).
als ik enkel in de XML cdata voor een stuk HTML uit de database gebruik dan poept de XSL ongeparsde HTML uit. Met <xsl:cdata></xsl:cdata> wordt de HTML pas geparsed
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
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...
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!
nog maar even een aanvulling, ik snap nu het nut van copy-of, maar de html wordt nog altijd ongeparsed weergegeven...
Panacea.NL als je geinteresserd bent in IT en Geneeskunde!
zo.. opgelost, ik zal even de oplossing geven voor mensen die willen weten hoe 'oude' HTML uit een database (dus niet XHTML) weer te geven via XML en XSL (met ASP).
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
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!
Ik heb nu
en in mijn XSL
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
PHP:
1
| <message posted="12 " poster="Vampier" title="Vampier draait ze"><![CDATA[hier komt a`lles te" sta'an<br />:)]]></message> |
en in mijn XSL
PHP:
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 ]
Had je imo ook wel een nieuw topic voor mogen aanmaken.
Maar transformeer je client-side of server-side? En wat is de foutmelding? Wat werkt niet? Wat is de output?
Maar transformeer je client-side of server-side? En wat is de foutmelding? Wat werkt niet? Wat is de output?
hehehe een nieuw topic starten wordt meestal afgestraft met UTFS 
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.
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.
euhm... weet je zeker dat je xsl client-side wilt laten renderen? Lijkt me niet zo verstandig, omdat je je wel erg afhankelijk maakt van de mogelijkheden van de client.
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.
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
goed
<?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
overbodige lange code ik weet.
alles wat er tussen cdata staat moet niet gerenderd worden. Verder heb ik een XSL.
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.
<?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
PHP:
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.
PHP:
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
Het is jammer om het complete project naar de /dev/null te gooien nu ik er bijna ben. Maar er zit denk ik niets anders op... ik denk dat ik het maar in javascript ga ombouwen dat krijg ik tenminste wel op elke browser (behalve op lynx) draaiende 
Bedankt voor jullie bijdragen
Bedankt voor jullie bijdragen
Als je toch zo ambitieus bezig bent (da's niet pejoratief bedoeld
), kan je de boel misschien porten naar een serverside oplossing? Er bestaat een XSLT module voor Apache, en ik neem aan de met IIS toch ook wel één en ander is op te lossen.
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.
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
Pagina: 1