Ik ben niet echt goed in samenvatten, laat staan van onderwerpen/kwesties die ik zelf nog niet helemaal bevat, dus mijn excuses voor de lange en potentieel erg onduidelijke post:
Ik heb een poosje geleden de vraag gesteld of het mogelijk is om een statische html web site te genereren vanuit XML bronbestanden. Het antwoord was positief, en sindsdien ben ik bezig om mijn bestaande web site (http://members.home.nl/xolox) om te zetten in XML. Ongeveer de helft van de HTML bestanden is nu omgezet in XML, en ik heb twee XSL stylesheets, een voor alle pagina's en een voor mijn web log. Alles oke tot nu toe, ben erg blij met de combinatie van Ant en XML & XSL, maar ik heb 1 probleem nog steeds niet op kunnen lossen.
Ik gebruikte tot nu toe altijd relatieve links voor mijn hele web site. Op deze manier werkt alles zowel lokaal als online. Mocht ik mijn bestanden ergens anders uploaden, dan werkt alles dus ook gewoon. Ideaal, maar ik heb geen idee hoe ik deze opzet kan behouden in XML.
Toen ik mijn bestanden omzette in XML liet ik eerst de hardcoded links (ala about_me/contact.html) even staan, zodat ik meteen kon zien of alles een beetje functioneerde. En dat deed het gelukkig ook.
Heel erg leuk, maar als ik als bron voor mijn web site XML gebruik, wil ik natuurlijk wel gebruik maken van de voordelen van XML, en niet alsnog vastzitten aan van die hardcoded html links.
Ik hoop/neem aan dat jullie snappen wat ik bedoel?
Als ik de links in mijn XML bestanden laat verwijzen naar de nog te maken html-bestanden, is dat natuurlijk nogal belachelijk, en het doet ook het concept van XML als bron teniet...
Hoe kan ik in mijn XML bestanden document relatieve links maken, die door mijn XSL stylesheet gecorrigeerd worden tot werkende links voor de html versie van mijn web site?
En nog iets: Ant verwerkt in 1 keer mijn hele verzameling XML bestanden met hetzelfde XSL stylesheet, en pleurt ze volgens de originele directory-layout onder mijn output directory. Maar als ik nu bijvoorbeeld een navigatie menu in mijn XSL stylesheet toevoeg, hoe kan ik er dan voor zorgen dat deze links vanuit alle directory's werken (eg. gecorrigeerd worden tot relatieve links)?
Bij voorbaat mijn dank!
Peter Odding
PS. Ik heb XML Base al eens bekeken, maar dit leek me niet de oplossing, omdat ik het niet kan gebruiken om document relatieve links te maken, maar site relatieve links...
PS2. Ik heb al een paar dagen op internet gezocht naar oplossingen voor dit probleem, maar heb geen duidelijke informatie kunnen vinden. Ik heb bijvoorbeeld wel een XSL library gevonden, met functies als util:getRelativeUri, maar dan zou ik voor elk XML bestand dat verwerkt wordt, een parameter met het absolute pad naar het bestand mee moeten kunnen geven, en ik heb geen idee hoe ik dit in Ant zou moeten doen.
Ik heb een poosje geleden de vraag gesteld of het mogelijk is om een statische html web site te genereren vanuit XML bronbestanden. Het antwoord was positief, en sindsdien ben ik bezig om mijn bestaande web site (http://members.home.nl/xolox) om te zetten in XML. Ongeveer de helft van de HTML bestanden is nu omgezet in XML, en ik heb twee XSL stylesheets, een voor alle pagina's en een voor mijn web log. Alles oke tot nu toe, ben erg blij met de combinatie van Ant en XML & XSL, maar ik heb 1 probleem nog steeds niet op kunnen lossen.
Ik gebruikte tot nu toe altijd relatieve links voor mijn hele web site. Op deze manier werkt alles zowel lokaal als online. Mocht ik mijn bestanden ergens anders uploaden, dan werkt alles dus ook gewoon. Ideaal, maar ik heb geen idee hoe ik deze opzet kan behouden in XML.
Toen ik mijn bestanden omzette in XML liet ik eerst de hardcoded links (ala about_me/contact.html) even staan, zodat ik meteen kon zien of alles een beetje functioneerde. En dat deed het gelukkig ook.
Heel erg leuk, maar als ik als bron voor mijn web site XML gebruik, wil ik natuurlijk wel gebruik maken van de voordelen van XML, en niet alsnog vastzitten aan van die hardcoded html links.
Ik hoop/neem aan dat jullie snappen wat ik bedoel?
Als ik de links in mijn XML bestanden laat verwijzen naar de nog te maken html-bestanden, is dat natuurlijk nogal belachelijk, en het doet ook het concept van XML als bron teniet...
Hoe kan ik in mijn XML bestanden document relatieve links maken, die door mijn XSL stylesheet gecorrigeerd worden tot werkende links voor de html versie van mijn web site?
En nog iets: Ant verwerkt in 1 keer mijn hele verzameling XML bestanden met hetzelfde XSL stylesheet, en pleurt ze volgens de originele directory-layout onder mijn output directory. Maar als ik nu bijvoorbeeld een navigatie menu in mijn XSL stylesheet toevoeg, hoe kan ik er dan voor zorgen dat deze links vanuit alle directory's werken (eg. gecorrigeerd worden tot relatieve links)?
Bij voorbaat mijn dank!
Peter Odding
PS. Ik heb XML Base al eens bekeken, maar dit leek me niet de oplossing, omdat ik het niet kan gebruiken om document relatieve links te maken, maar site relatieve links...
PS2. Ik heb al een paar dagen op internet gezocht naar oplossingen voor dit probleem, maar heb geen duidelijke informatie kunnen vinden. Ik heb bijvoorbeeld wel een XSL library gevonden, met functies als util:getRelativeUri, maar dan zou ik voor elk XML bestand dat verwerkt wordt, een parameter met het absolute pad naar het bestand mee moeten kunnen geven, en ik heb geen idee hoe ik dit in Ant zou moeten doen.