[XML+XSL] Tags meegeven binnen XML data?

Pagina: 1
Acties:

  • samo
  • Registratie: Juni 2003
  • Laatst online: 23-05 21:38

samo

yo/wassup

Topicstarter
Ik ben voor een vriend een website aan het bouwen (hobby) maar daar gaat meer tijd inzitten dan verwacht. Aangezien deze persoon geen server side scripting wenst, het liefst zelf de pagina updaten maar geen geduld heeft om HTML te leren, probeer ik nu de site verder te maken met XML + XSL.
Echter, ik zit vast.
Ik heb voor elkaar:
- de XML pagina wordt weergegeven in IE & FireFox
- de XSL template wordt toegepast
Maar ik ben geen ster in XML, en heb vanalles bekeken (got seatch, w3c) maar weet niet hoe het heet wat ik zoek, noch waar ik het precies kan vinden.
Ik wil namelijk wel dat de editor (vriend) de mogelijkheid krijgt om text strong te maken, maar ook om een
regel te onderbreken. Echter, als de <b> tag of de <br/> tag in de xml file staan, worden die dus natuurlijk niet uitgevoerd.
Ik vraag mij dus af: wat moet ik doen, of hoe het het geen waarmee ik moet werken om zoeits simpels werkend te krijgen.

Bekend van cmns.nl | ArneCoomans.nl | Het kindertehuis van mijn pa in Ghana


  • w3news
  • Registratie: Mei 2004
  • Laatst online: 09-03 10:15
http://www.w3schools.com
hier is vast nog wel wat nuttigs te vinden.

over de <b> en <br> problemen, dat probleem had ik eerst ook.
Toen dacht ik, gebruik gewoon de forum tegens, en maak een js die die tekens omzet.
dan staat in de tekst dan
ipv <br>
dan krijg je zoiets: http://www.w3news.org/mcn-info.xml
(voor dit bestand werd geen xslt gebruikt, alleen xmldom)

Een beter internet begint bij jezelf...


  • w3news
  • Registratie: Mei 2004
  • Laatst online: 09-03 10:15
http://www.w3schools.com
hier is vast nog wel wat nuttigs te vinden.

over de <b> en <br/> problemen, dat probleem had ik eerst ook.
Toen dacht ik, gebruik gewoon de forum tegens, en maak een js die die tekens omzet.
dan staat in de tekst dan [ br /] ipv <br/>
dan krijg je zoiets: http://www.w3news.org/mcn-info.xml
(voor dit bestand werd geen xslt gebruikt, alleen xmldom)

(sorry dat 2x er staat, was niet de bedoeling, quote ipv edit :o )

[ Voor 25% gewijzigd door w3news op 17-08-2004 01:33 ]

Een beter internet begint bij jezelf...


  • samo
  • Registratie: Juni 2003
  • Laatst online: 23-05 21:38

samo

yo/wassup

Topicstarter
Van deze site heb ik ook mijn 'xml kennis'.
Het probleem dat ik daar heb is dat ik geen idee heb over welke term ik meer moet lezen.
De javascript oplossing lijkt echter vrij duidelijk, en ik denk dat ik daar inderdaad maar eens naar ga zoeken.

Bekend van cmns.nl | ArneCoomans.nl | Het kindertehuis van mijn pa in Ghana


  • w3news
  • Registratie: Mei 2004
  • Laatst online: 09-03 10:15
Dan moet je wel goed opletten dat w3schools alleen de IE oplossing geeft om xml te laden via javascript.

b.v.
var xmlDoc = new ActiveXObject("Microsoft.XMLDOM")
xmlDoc.async="false"
xmlDoc.load("note.xml")

Dat werkt wel in IE, maar in mozilla heb je dan een probleem.
Ik gebruik het als volgt:

function loadXML (url) {
var httpRequest;
if (typeof ActiveXObject != 'undefined') {
httpRequest = new ActiveXObject('Microsoft.XMLHTTP');
}
else if (typeof XMLHttpRequest != 'undefined') {
httpRequest = new XMLHttpRequest();
}
if (httpRequest) {
httpRequest.open('GET', url, false);
httpRequest.send(null);
return httpRequest.responseXML;
}
else {
return void 0;
}
}

Dit werkt in Mozilla en IE.
Opera werkt niet, maar die ondersteund dit ook niet.

Een beter internet begint bij jezelf...


  • samo
  • Registratie: Juni 2003
  • Laatst online: 23-05 21:38

samo

yo/wassup

Topicstarter
_/-\o_
Da's alvast mooi meegenomen
Nog een vraag hieromtrend: ik gebruik de pagina's standalone in een frame (makkelijker), en link de XML met de XLS door hetvolgende in het XML bestand te zetten:
code:
1
<?xml-stylesheet type="text/xsl" href="index.xsl"?>

Is dat voldoende, en zijn er argumenten tegen deze methode?

Bekend van cmns.nl | ArneCoomans.nl | Het kindertehuis van mijn pa in Ghana


  • w3news
  • Registratie: Mei 2004
  • Laatst online: 09-03 10:15
dit is prima.
Als je de xml al zo aan de xslt hebt gelinkt, dan hoef je dat ene ook niet meer te gebruiken, of je moet nog een extra xml bestand aan willen roepen.

Een beter internet begint bij jezelf...


  • marcusk
  • Registratie: Februari 2001
  • Laatst online: 26-09-2023
Kun je niet beter simpelweg xsl:copy-of gebruiken?

code:
1
2
3
4
  <xsl:template match="bericht">
    <h1><xsl:value-of select="@titel"/></h1>
    <xsl:copy-of select="."/>
  </xsl:template>

Zie http://www.gamecom.nl/files/marcus/xsl/.

  • Woudloper
  • Registratie: November 2001
  • Niet online

Woudloper

« - _ - »

@ TS: Wellicht kan je eens kijken naar de onder hande zijnde FAQ van W&G daarin is André ook bezig met XML/XSL stuk, zie: http://www.rikkertkoppes.com/gotfaq/showbook.asp?bookId=10

  • samo
  • Registratie: Juni 2003
  • Laatst online: 23-05 21:38

samo

yo/wassup

Topicstarter
marcusk schreef op 17 augustus 2004 @ 03:41:
Kun je niet beter simpelweg xsl:copy-of gebruiken?

code:
1
2
3
4
  <xsl:template match="bericht">
    <h1><xsl:value-of select="@titel"/></h1>
    <xsl:copy-of select="."/>
  </xsl:template>

Zie http://www.gamecom.nl/files/marcus/xsl/.
Dat lijkt het truukje te zijn! Zonder java-script. Dank u!

Bekend van cmns.nl | ArneCoomans.nl | Het kindertehuis van mijn pa in Ghana


  • djluc
  • Registratie: Oktober 2002
  • Laatst online: 23-05 14:53
Aangezien deze persoon geen server side scripting wenst, het liefst zelf de pagina updaten maar geen geduld heeft om HTML te leren, probeer ik nu de site verder te maken met XML + XSL.
* djluc snapt nog steeds niet hoe je die gegevens gaat opslaan...

  • Doublehomme
  • Registratie: Juli 2002
  • Niet online
Als ik een stukje bold wil hebben en het staat tussen <b> tags doe ik dat zo:
XML:
1
2
3
4
5
<xsl:template match="b">
  <b>
    <xsl:value-of select="." /> 
  </b>
 </xsl:template>

en dat voor <br/> dus ook ongeveer hetzelfde.

Verwijderd

ik geloof dat
code:
1
2
3
<xsl:template match="b|br|u|i">
   <xsl:copy-of select="." /> 
 </xsl:template>

hier een prima oplossing voor was

  • samo
  • Registratie: Juni 2003
  • Laatst online: 23-05 21:38

samo

yo/wassup

Topicstarter
djluc schreef op 17 augustus 2004 @ 22:39:
[...]
* djluc snapt nog steeds niet hoe je die gegevens gaat opslaan...
dan uploadt hij de xml bestanden zelf, die worden redelijk simpel. maar hoeft hij niet tussen de vormgevingscode te zoeken... Aangezien IE ook kan ftp'en kan ik heb dat nog wel leren... :)
Doublehomme schreef op 17 augustus 2004 @ 22:44:
Als ik een stukje bold wil hebben en het staat tussen <b> tags doe ik dat zo:
XML:
1
2
3
4
5
<xsl:template match="b">
  <b>
    <xsl:value-of select="." /> 
  </b>
 </xsl:template>

en dat voor <br/> dus ook ongeveer hetzelfde.
Komt dan niet alles wat bold is aangegeven daar te staan, en niet meer in het midden van de text waar hij het zelf kan opgeven?
Verwijderd schreef op 17 augustus 2004 @ 22:47:
ik geloof dat
code:
1
2
3
<xsl:template match="b|br|u|i">
   <xsl:copy-of select="." /> 
 </xsl:template>

hier een prima oplossing voor was
Ik heb al wel de naam van het xml item dat gekopieerd moet worden, maar html tags die er tussen staan moesten ook werken. De copy-oplossing van w3news lijkt te werken...

[ Voor 66% gewijzigd door samo op 17-08-2004 23:03 ]

Bekend van cmns.nl | ArneCoomans.nl | Het kindertehuis van mijn pa in Ghana


  • Doublehomme
  • Registratie: Juli 2002
  • Niet online
Mijn oplossing is eigenlijk hetzelfde als die van mophor, alleen hij doet het gelijk voor <b> <br/> <u> en <i>
Als je wil dat gewoon alle html functies gebruikt kunnen worden dan kun je inderdaad die copy-of gebruiken van w3.
Pagina: 1