Stel dat je op basis van data in een database een webpagina wilt genereren met als tussenstap XML. Dan kun je twee dingen doen.
1. De data in de database opslaan als XML, je hoeft dan nog slechts de boel te transformeren met XSLT (of door de domxmltree lopen en een template invullen). Nadeel: met xmldata in een database niet meer snel en fijn je data kunt filteren en sorteren met een sql-query als je bijvoorbeeld alleen de elements <title> en <data> uit een heleboel xml-stukjes van het type <message> wilt hebben.
Voordeel: Alle soorten data kunnen in dezelfde dbtable, dus supergeneriek.
2. De data op een 'normale' manier in een netjes geconstrueerde database zetten. Je query uitvoeren, xml genereren, en vervolgends of wat voor manier dan ook transformeren naar xslt. Voordelen: snel filteren/sorteren van je data, en makkelijk gebruiken van je data in verschillende views.
Nadeel: het kost een extra stap en daarom parsetime. Tevens zul je alsnog voor alle soorten data verschillende tables moeten maken waardoor het dus meer werk kost om een nieuw soort pagina te maken.
Als je het zo bekijkt lijkt het helemaal niet zo praktisch om xml te gebruiken alhoewel het principe wel zeer aanlokkelijk vanwere de potentiele generiek-heid.
Zie ik mogelijkheden over het hoofd? Zijn er nog andere suggesties wat betreft manieren om XML te gebruiken in een website of cms als je van templates af wilt?
Je zou userattributes of rechten bijvoorbeeld ook nog kunnen opslaan als xmlstring. Tevens zou je een form waarmee je de userattributes kunt wijzigen weer beschrijven in xml. De mogelijkheden zijn oneindig maar hoe praktisch zijn ze, wat is jullie mening?
1. De data in de database opslaan als XML, je hoeft dan nog slechts de boel te transformeren met XSLT (of door de domxmltree lopen en een template invullen). Nadeel: met xmldata in een database niet meer snel en fijn je data kunt filteren en sorteren met een sql-query als je bijvoorbeeld alleen de elements <title> en <data> uit een heleboel xml-stukjes van het type <message> wilt hebben.
Voordeel: Alle soorten data kunnen in dezelfde dbtable, dus supergeneriek.
2. De data op een 'normale' manier in een netjes geconstrueerde database zetten. Je query uitvoeren, xml genereren, en vervolgends of wat voor manier dan ook transformeren naar xslt. Voordelen: snel filteren/sorteren van je data, en makkelijk gebruiken van je data in verschillende views.
Nadeel: het kost een extra stap en daarom parsetime. Tevens zul je alsnog voor alle soorten data verschillende tables moeten maken waardoor het dus meer werk kost om een nieuw soort pagina te maken.
Als je het zo bekijkt lijkt het helemaal niet zo praktisch om xml te gebruiken alhoewel het principe wel zeer aanlokkelijk vanwere de potentiele generiek-heid.
Zie ik mogelijkheden over het hoofd? Zijn er nog andere suggesties wat betreft manieren om XML te gebruiken in een website of cms als je van templates af wilt?
Je zou userattributes of rechten bijvoorbeeld ook nog kunnen opslaan als xmlstring. Tevens zou je een form waarmee je de userattributes kunt wijzigen weer beschrijven in xml. De mogelijkheden zijn oneindig maar hoe praktisch zijn ze, wat is jullie mening?