Hallo allemaal,
Ik ben begonnen met wat XML/XSLT transformaties omdat er een klant redelijk veel data via XML gaat aanleveren en dat min of meer direct getoond kan worden op de website. Na een beetje rondzoeken, heb ik besloten om niet de XML-data te gaan parsen met de hand, maar om het om te zetten naar XHTML/HTML mbv XSLT.
Alles leuk lief een aardig, na een x-aantal examples van de site van w3schools en uit het boek, learning XML, O'Reilly... dacht ik laat ik eens gaan proberen, wat data uit mijn mooie xml files op het scherm te toveren.... En natuurlijk lukt dit me van geen kanten...(gebruik windows, firebird of IE als client, waar de ondersteuning voor XSLT in zit, de bedoeling is echter om de transformaties server side dmv php te gaan doen)
Onderstaand het belangrijkste stukje XML-data
Het simpelste stukje XSLT dat ik gemaakt heb om data op het scherm te zetten.
Natuurlijk werkt dit niet, en het werkt niet vanwege de xmlns="http://www.sportsml.org/schema/" declaratie in het XML-element <sports-content>
Nu ben ik dus gaan zoeken, naar hoe ik dit probleem kan oplossen, maar google en w3schools kunnen me niet echt helpen. Ik snap waarom namespaces nodig zijn, maar ik zie niet in hoe ik er in mijn XSLT code voor kan zorgen, dat ik de elementen uit de juiste XML-namespace kan selecteren...
Natuurlijk werkt het allemaal wel, als ik die declaratie weg ga laten in mijn XML-document alleen zou ik zo min mogelijk wijzigingen aan het XML-document willen uitvoeren omdat deze redelijk vaak ge-update gaat worden vanuit de klant.
De klant heeft toegezegd niets aan de structuur ed van het XML document te veranderen en deze volgens een bepaalde standaard te zullen maken. Oftewel ik moet dit probleem aan de XSLT kant oplossen en denk dat het alleen een probleem is vanwege kennisgebrek aan mijn kant.
Iemand een tip of eventueel de oplossing?
Ik ben begonnen met wat XML/XSLT transformaties omdat er een klant redelijk veel data via XML gaat aanleveren en dat min of meer direct getoond kan worden op de website. Na een beetje rondzoeken, heb ik besloten om niet de XML-data te gaan parsen met de hand, maar om het om te zetten naar XHTML/HTML mbv XSLT.
Alles leuk lief een aardig, na een x-aantal examples van de site van w3schools en uit het boek, learning XML, O'Reilly... dacht ik laat ik eens gaan proberen, wat data uit mijn mooie xml files op het scherm te toveren.... En natuurlijk lukt dit me van geen kanten...(gebruik windows, firebird of IE als client, waar de ondersteuning voor XSLT in zit, de bedoeling is echter om de transformaties server side dmv php te gaan doen)
Onderstaand het belangrijkste stukje XML-data
code:
1
2
3
4
5
6
7
| <?xml version="1.0" encoding="ISO-8859-1"?> <?xml-stylesheet type="text/xsl" href="lineup.016.xsl"?> <sports-content xmlns="http://www.sportsml.org/schema/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sportsml.org/schema/ ../../schema/sportsml.xsd"> ... een heleboel geordende data </sports-content> |
Het simpelste stukje XSLT dat ik gemaakt heb om data op het scherm te zetten.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
| <?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" >
<xsl:output method="html" encoding="ISO-8859-1" />
<xsl:template match="sports-content">
<html>
<head>
<title>XML/XSLT Example</title>
</head>
<body>
<h1>Sports Event</h1>
</body>
</html>
</xsl:template>
</xsl:stylesheet> |
Natuurlijk werkt dit niet, en het werkt niet vanwege de xmlns="http://www.sportsml.org/schema/" declaratie in het XML-element <sports-content>
Nu ben ik dus gaan zoeken, naar hoe ik dit probleem kan oplossen, maar google en w3schools kunnen me niet echt helpen. Ik snap waarom namespaces nodig zijn, maar ik zie niet in hoe ik er in mijn XSLT code voor kan zorgen, dat ik de elementen uit de juiste XML-namespace kan selecteren...
Natuurlijk werkt het allemaal wel, als ik die declaratie weg ga laten in mijn XML-document alleen zou ik zo min mogelijk wijzigingen aan het XML-document willen uitvoeren omdat deze redelijk vaak ge-update gaat worden vanuit de klant.
De klant heeft toegezegd niets aan de structuur ed van het XML document te veranderen en deze volgens een bepaalde standaard te zullen maken. Oftewel ik moet dit probleem aan de XSLT kant oplossen en denk dat het alleen een probleem is vanwege kennisgebrek aan mijn kant.
Iemand een tip of eventueel de oplossing?
[ Voor 29% gewijzigd door 0528973 op 18-11-2004 17:20 ]
Pascal