[discussie] XML, XSL, Databases en meer

Pagina: 1
Acties:
  • 195 views sinds 30-01-2008
  • Reageer

  • Quinie
  • Registratie: Juli 2001
  • Laatst online: 29-07-2025
Ik probeer mij wat te verdiepen in het begrip XML. Na het lezen van de faq ben ik op een aantal sites terecht gekomen welke mij redelijk goede info geven over XML.

Hellaas kan ik voor mezelf nog niet alle eindjes aan elkaar knoppen. Daarom ook dit discussie topic. Met de bedoeling over dit onderwerp toch wat meer duidelijkheid te krijgen.

Ik heb kunnen op maken uit de reeds bezochte sites dat xml veel weg heeft qua opmaak van HTML. XML wordt in tegenstelling tot HTML nimmer getoond aan de gebruiker. XML is een methodiek om een aantal gegevens te groeperen en via rules te tonen aan de gebruiker (XSL). XML is dus een klein databaseje ( :? ).

Echter hoe XML en XSL samenwerken is mij nergens duidelijk uit geworden.
Gellijk krijg ik hierbij ook de vraag of XML dan een vervanging is voor bv. Mysql.

Mijn inziens niet. Ik ken de voorbeelden van XML waarbij nog steeds gebruik wordt gemaakt van een database. Maar hoe werkt het/dit dan :?

plaats je je gegevens in de db. vul je XML met die gegevens en maak daar een query op met XSL. :? of.. snap ik het echt niet :?

Tevens kom ik snel dingen tegen zoals:
- Xhive - een XML database (wat doet dit :?)
- cocoon - De apache implementatie voor XML :?
- Tomcat - vereist voor cocoon welke het mogelijk maakt met servlets te werken. Waarom nodig :?

Graag dus een open discussie over de werking van XML, de voordelen boven het gebruik van bv. PHP en een gewone DB. En aanvullende links met meer info omtrend dit verschijnsel graag :)

en een toevoeing voor de FAQ maybe http://www.w3.org/XML/1999/XML-in-10-points

[ Voor 0% gewijzigd door Quinie op 09-10-2002 12:27 . Reden: zoals gewoonlijk typos ]


http://www.Quinie.nl
http://soundcloud.com/quinie
https://www.wereoutthere.nl


  • Limhes
  • Registratie: Oktober 2001
  • Laatst online: 19-08 19:06
Quinie schreef op 09 oktober 2002 @ 12:25:
Graag dus een open discussie over de werking van XML
XML 'werkt' niet, 't is 'n manier om data gestructureerd op te slaan. That's all afaik.

  • Basszje
  • Registratie: Augustus 2000
  • Laatst online: 25-08 09:37

Basszje

Reisvaap!]

XML kan je vaak gebruiken om makkelijker gegevens te gebruiken welke niet altijd goed in een database passen, bv voor gegevens uitwisselen tussen verschillende servers ( webservices o.a. ) .

Anderzijds geloof ik nog niet zo heel erg in XSL en XSLT omdat practisch geen enkele browser dit voldoende ondersteund.

Wat wel handig is om de XML serverside te parsen via PHP en dan in HTML de output te geven.

Kijk bijvoorbeeld naar Tweakers.net . Deze wil hun nieuws aanbieden zodat andere mensen die op hun eigen site kunnen gebruiken, zonder dat die gebruiker gelijk toegang moet hebben tot de database. Zij outputten data in een standaard formaat ( XML ) en geven dat aan de buitenwereld.

Ik kom langs met mijn script, pak de XML en kan die zo nadat ik de structuur ken parsen op mijn webpagina. Simpel en makkelijk dus :)

En zodra ik bv eigen data beschikbaar wil maken voor webbrowser, PDA, mobiel etc dan kan je gewoon een XML core maken met de data erin en voor elk platform deze op hun eigen manier parsen richting eigen markup language .

Ook voor bv language file waarbij je altijd van die tabellen krijg met vervelend veel attributen kan XML erg handig zijn :) .

Beware of listening to the imposter; you are undone if you once forget that the fruits of the earth belong to us all, and the earth itself to nobody.


  • Quinie
  • Registratie: Juli 2001
  • Laatst online: 29-07-2025
Limhes schreef op 09 oktober 2002 @ 12:28:
[...]
XML 'werkt' niet, 't is 'n manier om data gestructureerd op te slaan. That's all afaik.
Oke duidelijk. Maar praktijk nu. Ik wil een user DB opzetten. Ik heb geen zin meer om dit voor ieder platform te schrijven. Dus XML kan oplossing bieden. toch :?
maar moet ik nu al mijn users in XML zetten. en met XSL gaan werken :? en zo ja hoe werken die twee samen. En volgens mij als ik het zo inricht ben ik niet goed bezig. toch :?


http://www.Quinie.nl
http://soundcloud.com/quinie
https://www.wereoutthere.nl


  • LordLarry
  • Registratie: Juli 2001
  • Niet online

LordLarry

Aut disce aut discede

Nog niet eens 'op te slaan'. :)

We adore chaos because we like to restore order - M.C. Escher


  • Limhes
  • Registratie: Oktober 2001
  • Laatst online: 19-08 19:06
Quinie schreef op 09 oktober 2002 @ 12:33:
Ik wil een user DB opzetten. Ik heb geen zin meer om dit voor ieder platform te schrijven. Dus XML kan oplossing bieden. toch :?
Ik zie niet in in hoe verre XML hier de enige uitweg biedt... Neem een standaard DB als MySQL en bijna elk platform kan hier met bijna elke taal in gaan zitten lezen en schrijven.

  • baggah
  • Registratie: December 2000
  • Laatst online: 06-08 22:47
Hier wat sites....:
Voor xsl:[url=http://nl.php.net/manual/en/function.explode.php]http://nl.php.net/manual/en/function.explode.php[/url
Voor xml: http://www.w3schools.com/xml/default.asp

Verwijderd

Limhes heeft helemaal gelijk (allicht ;))

Een paar puntjes:
- XML beschrijft data
- XSL is een stylesheet waarmee je de data die beschreven wordt in een XML document bijvoorbeeld als web document kan laten zien
- XML is zeker geen vervanging voor mySQL (zoals ik het zie)
- Door XML geeft MicroSoft (let op, ik zeg hierbij niet dat XML van MS is. Zij dragen wel deel aan de ontwikkeling ervan) eindelijk toe dat er een standaard moet komen waarmee data beschreven wordt. Hiermee kan dan ook heel makkelijk hetzelfde document in verschillende programma's gebruikt worden (klinkt makkelijker dan dat het is.)

Mochten mijn punten niet kloppen dan hoor ik dat graag en mocht er mij nog dingen binnen schieten dan edit ik ff

edit:

type ik een bericht staan er tich antwoorden bij :?

  • Limhes
  • Registratie: Oktober 2001
  • Laatst online: 19-08 19:06
Verwijderd schreef op 09 oktober 2002 @ 12:37:
Limhes heeft helemaal gelijk (allicht ;))
_/-\o_

  • Quinie
  • Registratie: Juli 2001
  • Laatst online: 29-07-2025
Limhes schreef op 09 oktober 2002 @ 12:36:
[...]


Ik zie niet in in hoe verre XML hier de enige uitweg biedt... Neem een standaard DB als MySQL en bijna elk platform kan hier met bijna elke taal in gaan zitten lezen en schrijven.
Als het goed begrijp is het dan niet meer mogelijk om mijn gebruikers (of misschien niet zo'n goed voorbeeld) beschikbaar te stellen aan de buiten wereld zonder toegang tot mijn db

en wat doet xhive dan (XML database. verzameld die alle XML files ofzo :?)
baggah: zal links ff doornemen na mijn pauze


http://www.Quinie.nl
http://soundcloud.com/quinie
https://www.wereoutthere.nl


  • Limhes
  • Registratie: Oktober 2001
  • Laatst online: 19-08 19:06
Quinie schreef op 09 oktober 2002 @ 12:39:
Als het goed begrijp is het dan niet meer mogelijk om mijn gebruikers (of misschien niet zo'n goed voorbeeld) beschikbaar te stellen aan de buiten wereld zonder toegang tot mijn db
Als je een nieuwssite hebt is dat idd moeilijker. XML is gewoon via de browser te bezichtigen etc., maar wat wel een probleem is is dat als je database erg groot wordt, iedereen die een klein beetje data wilt hebben, telkens het hele bestand moet ophalen, terwijl bij een DB alleen een recordset wordt overgezonden.

  • Basszje
  • Registratie: Augustus 2000
  • Laatst online: 25-08 09:37

Basszje

Reisvaap!]

Limhes schreef op 09 oktober 2002 @ 12:42:
[...]


Als je een nieuwssite hebt is dat idd moeilijker. XML is gewoon via de browser te bezichtigen etc., maar wat wel een probleem is is dat als je database erg groot wordt, iedereen die een klein beetje data wilt hebben, telkens het hele bestand moet ophalen, terwijl bij een DB alleen een recordset wordt overgezonden.
XML is ook helemaal niet bedoeld voor standaard database werk, zoals ik het zie.
Maar wel voor Webservices e.d. Daarom hamert MS trouwens ook zo op dingen als XMLHTTP voor hun .NET omgeving een uitkomst. :)

Beware of listening to the imposter; you are undone if you once forget that the fruits of the earth belong to us all, and the earth itself to nobody.


  • Limhes
  • Registratie: Oktober 2001
  • Laatst online: 19-08 19:06
Basszje schreef op 09 oktober 2002 @ 12:43:XML is ook helemaal niet bedoeld voor standaard database werk, zoals ik het zie.
Maar wel voor Webservices e.d. Daarom hamert MS trouwens ook zo op dingen als XMLHTTP voor hun .NET omgeving een uitkomst. :)
En ik maar denken dat jij helemaal niets van XML afwist :)

  • Orphix
  • Registratie: Februari 2000
  • Niet online
De allergrootste bestaansreden voor XML is cross-platform, gestandardiseerde en human-readable datauitwisseling.
Iedereen die vroeger weleens een binair 'fileformat' heeft verzonnen en tot de conclusie kwam dat er later nog iets in het fileformat bij moest ... weet precies waarom dit is uitgevonden.
Door middel van XML en gebruik van standaard parsers kan elk programma relatief zeer gemakkelijk communiceren met andere programma's, webservices, configuraties inlezen, logfiles bekijken, XHTML websites inlezen, etc.
DAT is de belangrijkste reden imho en niks anders.

XML is dus nooit bedoeld als vervanger voor een database. Een database kan vele malen efficienter met massale gegevensopslag omgaan dan welke XML parser dan ook.

Ohja en XSL is dus eigenlijk een hulpmiddel om een willekeurig XML formaat te laten voldoen (lees: te veranderen in) aan jouw gewenste (of door je programma verwachte) formaat.

[ Voor 0% gewijzigd door Orphix op 09-10-2002 12:51 . Reden: XSL ]


  • machiel
  • Registratie: Januari 2000
  • Laatst online: 16-07 18:09
Het idee is simpel. XML is een standaard om data te definieren. XML is gewoon tekst dus altijd met het blote oog te bekijken en controleren. Hoe je de XML-tekst opslaat mag je zelf weten, meest voor de hand ligt om het op te slaan in een bestand. Dan kan je gewoon met notepad je data aanpassen en uitbreiden. Dit heeft beperkingen als je met meerde gebruikers tegelijk een xml-document wilt wijzigen of lezen. Dus kan je ervoor kiezen om de XML in een speciale database op te slaan. Een database kan de toegang beter regelen, is sneller dan een tekstbestand en netwerkverbindingen zijn mogelijk etc.

Samengevat: XML is opslagmediumonafhankelijk.

XSL is ervoor om XML om te zetten van de standaardstructuur in een andere indeling. Met XSL transformeer je dus een XML document in een ander document. Meest voor de hand ligt om het om te zetten in HTML omdat HTML een tekstgebaseerde opmaaktaal is. Maar je kan het orginele XML document ook in een ander XML document omzetten. Zo ondersteun MS Office 10 een eigen XML standaard met eigen tags (<ms:tabel> ofzo).

Database of Tekstbestand->XML(+XSL)=HTML of Word of SVG of ...

Er bestaat overigens ook een XML query language waarmee je a la SQL selecties kan doen in een XML document.

  • Basszje
  • Registratie: Augustus 2000
  • Laatst online: 25-08 09:37

Basszje

Reisvaap!]

Limhes schreef op 09 oktober 2002 @ 12:47:
[...]

En ik maar denken dat jij helemaal niets van XML afwist :)
Errrrr en hoezo dat niet dan :?

Beware of listening to the imposter; you are undone if you once forget that the fruits of the earth belong to us all, and the earth itself to nobody.


  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024

Alarmnummer

-= Tja =-

Iedereen die vroeger weleens een binair 'fileformat' heeft verzonnen en tot de conclusie kwam dat er later nog iets in het fileformat bij moest ... weet precies waarom dit is uitgevonden.
:X :X ;)
Orphix schreef op 09 oktober 2002 @ 12:50:
Ohja en XSL is dus eigenlijk een hulpmiddel om een willekeurig XML formaat te laten voldoen (lees: te veranderen in) aan jouw gewenste (of door je programma verwachte) formaat.
Het XML formaat kan natuurlijk niet willekeurig zijn voor XSLT, omdat je anders geen goeie transformatie erop kan laten plaats vinden. En wat ik niet helemaal uit je woorden kan opmaken (maar wel bedoelt) is dat je mbv XSLT naar meer dan alleen XML kan wegschrijven. Je kan ook iets anders genereren zoals Java,HTML etc etc.

  • The Lord
  • Registratie: November 1999
  • Laatst online: 09:57
XML is een methodiek om een aantal gegevens te groeperen
Hmm. Ik zou het liever formuleren als 'XML is een methodiek om data te beschrijven'.

XML is slechts de beschrijving. Het biedt de mogelijkheid om data te groeperen. Maar het staat volledig los van het opslagmodel.

XML kun je in een tekstbestand opslaan (als .txt, .xml, .543, .whatever), maar natuurlijk ook in een database als één groot tekstveld (of een Excel sheet, of....).

De andere kant op kun je ook data transformeren naar XML. Bijvoorbeeld de velden [naam], [adres], [woonplaats] uit een database tabel ophalen en transformeren in XML formaat (een grote string bijvoorbeeld) en deze dan weer wegschrijven naar een ander opslagmodel. Bijvoorbeeld een [.xml] bestand.

Die XML kun je dan eventueel weer gebruiken in combinatie met XSL, welke tranformatie 'rules' beschrijft.

Die XSL kan dus bijvoorbeeld transformeren van XML naar HTML, xHTML, WML, enzovoorts.

Ik denk dat dit jou vragen fundamenteler beantwoord?

geeft geen inhoudelijke reacties meer


  • The Lord
  • Registratie: November 1999
  • Laatst online: 09:57
Mmm, mijn reactie lijkt wel een beetje erg op die van 'mickgreen'. Zijn/haar tweede zin past echter niet in het verhaal :
XML is een standaard om data op te slaan.
Maar dit wordt bezworen door :
Samengevat: XML is opslagmediumonafhankelijk.
Daar had ik overheen gelezen. Anyway, ik hoop dat Tweakend Nederlandstaligen je voldoende op weg hebben geholpen.

geeft geen inhoudelijke reacties meer


Verwijderd

Neemt niet weg dat als jij iets maakt voor een website, het bijna niet nodig is om hiervoor XML te gebruiken omdat dat gewoon overdone is.
Een gastenboek, forum o.i d. op XML is gewoon dikke onzin.

Als je echter data beschikbaar wil stellen aan derden is het wel een optie omdat je liever niet hebt dat die gasten in jou DB morgen rondneuzen.

  • Quinie
  • Registratie: Juli 2001
  • Laatst online: 29-07-2025
Ja het zak nu langzaam allemaal naar beneden. XML is dus data beschrijven. En hierdoor is gewoon wat makkelijker om aan een enkel record meer data te hangen dan een kompleet nieuw veld aan je db toe te voegen. De data van XML kan makkelijk worden uitgewisseld. zo van kijk hier is mijn data met de beschrijving van wat het is. haal er maar uit wat je nodig bent.

Tevens lees ik net dat je deze beschrijving ook vanuit je DB kunt maken (logisch daar staan de gegevens ook al)

Maar is het dan bv mogelijk om een XML te maken die vanuit de DB (users) wordt gevoed waarbij slecht 1 enkele gebruiker een mobiel nummer heeft zonder dat hier een database veld voor is :?


http://www.Quinie.nl
http://soundcloud.com/quinie
https://www.wereoutthere.nl


  • Bobco
  • Registratie: Januari 2001
  • Laatst online: 30-10-2023

Bobco

I used to dream about Verona.

Quinie schreef op 09 oktober 2002 @ 13:51:
Maar is het dan bv mogelijk om een XML te maken die vanuit de DB (users) wordt gevoed waarbij slecht 1 enkele gebruiker een mobiel nummer heeft zonder dat hier een database veld voor is :?
Als je een relationele database op de 'juiste' manier gebruikt zul je alle gegevens moeten structureren. Elk attribuut dat je wilt opslaan, zoals een mobiel telefoonnummer, zul je moeten opslaan. Uiteraard kun je bepaalde dingen ongestructureerd opslaan, maar dat beperkt de zoekmogelijkheden in de database sterk en zorgt vaak ook voor een boel andere problemen.

Om je vraag te beantwoorden: XML is uiteraard geen magisch hulpmiddel dat opeens gegevens tevoorschijn kan toveren. Als jij van je users een mobiel telefoonnummer wilt bijhouden zul je hier, zie de vorige paragraaf, bij voorkeur een apart veld in je database voor opnemen. Op die manier wordt het bijvoorbeeld mogelijk om heel snel alle users die een mobiel nummer hebben te selecteren.

Ik denk dat je voor jezelf eerst maar eens moet proberen hoe je een user zou beschrijven in XML. Welke gegevens wil je opslaan, hoe vaak komen ze voor, van wat voor type zijn de gegevens en zijn ze verplicht of niet. Kijk eerst eens naar wat uitleg over DTDs en/of Schemas en probeer te begrijpen wat die dingen betekenen. Waarschijnlijk kun je dan zelf de vragen beantwoorden die je nu hier stelt.


En goede inleiding is onder andere hier bij IBM te vinden (wel even registreren).

With the light in our eyes, it's hard to see.


  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

Basszje:
Anderzijds geloof ik nog niet zo heel erg in XSL en XSLT omdat practisch geen enkele browser dit voldoende ondersteund.

Wat wel handig is om de XML serverside te parsen via PHP en dan in HTML de output te geven.
Serverside XSLT gebruiken om vanuit XML een HTML, WML, VML, JavaScript, (vul maar in) -pagina te genereren... geloof je daar ook niet in? ;)

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


Verwijderd

zoek eens op mbravenboer...... hier op tweakers.

  • Quinie
  • Registratie: Juli 2001
  • Laatst online: 29-07-2025
Bedankt alle voor jullie reactie het is mij nu inieder geval een stuk duidelijker dan vanochtend.


http://www.Quinie.nl
http://soundcloud.com/quinie
https://www.wereoutthere.nl


  • machiel
  • Registratie: Januari 2000
  • Laatst online: 16-07 18:09
The Lord schreef op 09 oktober 2002 @ 13:21:
Mmm, mijn reactie lijkt wel een beetje erg op die van 'mickgreen'. Zijn/haar tweede zin past echter niet in het verhaal :

[...]


Maar dit wordt bezworen door :

[...]


Daar had ik overheen gelezen. Anyway, ik hoop dat Tweakend Nederlandstaligen je voldoende op weg hebben geholpen.
mickgreen is een hij, en XML is geen manier op data op te slaan maar een manier om data te definieren.

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

mickgreen:
mickgreen is een hij, en XML is geen manier op data op te slaan maar een manier om data te definieren.


Definieren vind ik een vreemd woord in deze context... Data definieren.... Kan er niet zo veel van bakken eerlijk gezegd. Bedoel je niet gewoon beschrijven :?

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


Verwijderd

ik ben nu ook bezig met xml en xsl. ik zie het zo:
xml is pure DATA op een voorgeschreven manier beschreven en weergegeven, xsl is de STYLSHEET die de DATA vormgeeft en SELECTEERD. zonder stylesheet ziet een xml bestand eruit als een enorm bestand met een helehoop nodes. pas wanneer je er een leuke xsl stylesheet tegen aan gooit, wordt het interessant.

voorbeeld:
je hebt een xml bestand met data over allemaal users, naw gegevens dat soort shit. dit bestand kan elke extensie hebben, als er IN dat bestand maar de definitie staat van "dit is een xml bestand en hier staat de stylesheet" daar is een speciale syntax voor:
code:
1
2
3
4
5
<?xml version="1.0" encoding="ISO-8859-1"?> 
// "dit is xml"
<?xml-stylesheet type="text/xsl" href="XSL.xsl"?>
 // "maak de xml volgens deze stylesheet op"
hieronder de data in xml formaat

deze stylesheet heb ik nu de extensie xsl gegeven maar hier geld ook weer het maakt niet uit wat voor extensie als er in het xsl bestand maar goed staat beschreven wat het is. syntax voor een stylesheet:
code:
1
2
3
4
5
6
<?xml version="1.0" encoding="ISO-8859-1"?> 
// "dit is xml"
<xsl:stylesheet version="1.0" 
mlns:xsl="http://www.w3.org/1999/XSL/Transform"> 
//"en ik ben een stylesheet"
hieronder de vormgevingsregels in xml formaat


met een xsl (stylesheet) kun je ook bepaalde queries uitvoeren (Xpath) die ervoor zorgen dat bijvoorbeeld alleen de namen worden getoond. of je zegt toon alleen de namen beginnend met een A.
ook kan je de opmaak regelen. stel je wilt dat het bestand een (x)html bestand wordt, dan geef je in de xsl stylesheet aan dat er hier en daar html tags omheen gegoten moeten worden. maar je kunt er natuurlijk ook een iets anders van maken (kaal textbestand, comma separted file, whateva).

een aantal hele goeie links die mij dit inzicht verschafte zijn:
deze XSL Tutorial - http://www.w3schools.com/xsl/
deze XML Tutorial - http://www.w3schools.com/xml/

nadat je die tuts heb gedaan heb je waarschijnlijk een goed beeld hoe de wereld van xml en xsl in elkaar zit. eigenlijk is het een hele eenvoudige wereld en alleen maar een standaard. wat je verder met die standaard doet is een heel ander verhaal... ik ben nog weinig voorbeelden van (web)applicaties tegen gekomen waarbij gebruik van xml werd gemaakt.
behalve dan de turbotracker van tweakers. dit is een nieuws dump in xml formaat. dit kan je binnen halen en zelf opmaken met een xsl stylesheet en op je eigen site gooien. of je insert de data uit het xml bestand in je eigen db en verwerkt het op die manier verder. dat is de kracht van xml omdat het zo standaard is opgemaakt kan je het zelf makkelijk verwerken.

edit:
de code tag aangepast (rekte de hele pagina uit)

  • rollebol
  • Registratie: Mei 2000
  • Laatst online: 09-06 12:38
Ik vind het veel handiger om tegen XML aan te kijken als een formaat waar je met een eenvoudige library in bijna iedere programmeertaal die er toe doet gestructureerde informatie kan representeren. Je moet jezelf niet afvragen 'hoe gebruik ik dit buzzword op een of andere manier en waarom'. Je moet denken vanuit het probleem en dan denken 'ja, XML is hier handig voor'.

XML wordt in het bedrijfsleven veel gebruikt om informatie tussen bedrijven uit te wisselen. Omdat door de DTD (of het schema) is gedefinieerd hoe die data gestructureerd moet worden, kan de IT-afdeling van bedrijf A gewoon aan de slag zonder heel erg hard te hoeven overleggen met dezelfde afdeling van bedrijf B. Het is langzaam EDI (de binaire jakkie-bah-variant van gegevensuitwisseling uit de vorige eeuw) aan het vervangen in nieuwe toepassingen die communiceren tussen bedrijven/sites/bedrijfsonderdelen.

Voor bestandsformaten vind ik het ook handig. Als database in principe niet, maar als je per se wil, het object relational model van Oracle, of die toestanden van MS-SQL, daar zou je naar kunnen kijken. Het specifieke nut van xhive heb ik nog niet door (maar ik ben wel nieuwsgierig).

Op alle plaatsen waar je gegevens uitwisselt met een vreemde entiteit is XML handig. Ik leg het zelf altijd uit (en velen hier zullen het er niet mee eens zijn) als 'een gestructureerde vorm van tab-delimited waarbij ieder veld een naam heeft en meerdere subvelden kan hebben'.

[ Voor 0% gewijzigd door rollebol op 10-10-2002 12:04 . Reden: nuancerinkjes ]


  • machiel
  • Registratie: Januari 2000
  • Laatst online: 16-07 18:09
drm schreef op 10 oktober 2002 @ 10:54:

[...]


Definieren vind ik een vreemd woord in deze context... Data definieren.... Kan er niet zo veel van bakken eerlijk gezegd. Bedoel je niet gewoon beschrijven :?
Nog beter. _/-\o_

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

[nohtml]
Verwijderd schreef op 10 oktober 2002 @ 11:21:
XML: data, XSL: stylesheet, XPath: queries
Wat XML betreft heb je volgens mij gelijk, maar ik zou de combinatie XSL, XPath liever een transformatietaal noemen. Het heeft in eerste instantie weinig met styling van een document te maken, alswel meer met giet data van de ene vorm in de andere, waar het uiteindelijk ook het meest voor gebruikt wordt.

Kortom: XSLT* gebruikt XPath als "tool" om data vanuit XML te transformeren in elke andere gewenste vorm.

*de 'T' in XSLT staat niet voor niets voor transformatie ;)
mickgreen:
Nog beter. _/-\o_
Beschrijven door structurering. Hmm... Ik ben er nog steeds niet tevreden over :D ;)

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


Verwijderd

XML is een meta-taal, d.w.z. het is een 'taal' om een andere 'taal' in te beschrijven. De taal die je ermee beschrijft wordt vastgelegd in een DTD, of nog nauwkeuriger in een Schema. Zo kan je bijv. een op XML gebaseerde taal ontwikkelen om boeken in te beschrijven. Deze beschreven taal is dan bruikbaar om gegevens op een gestructureerde manier in weer te geven. XML is hierarchisch van aard, d.w.z. dat in een op XML gebaseerd document er 1 'root' node is, en daaronder evt. childs, met daar evt. nog meer childs, etc.

Op XML gebaseerde talen zijn uiterst geschikt voor de uitwisseling van gegevens, omdat de taal eenduidig omschrijft hoe de gegevens eruit zien, zodat zender en ontvanger elkaar zullen ze begrijpen zolang ze de volledige taal is geimplementeerd. Daarnaast zijn er voor XML op allerlei platformen parsers te vinden, waardoor veer van het werk voor het genereren, lezen en controleren van XML documenten met weinig inspanning gedaan kan worden.

Ook is een op XML gebaseerde taal een geschikte vorm van gegevensopslag (bijv. als file of in een database) als de gegevens op verschillende wijzen geinterpreteerd / gepresenteerd moeten worden. Daarbij kan je gebruik maken van XSLT. Hiermee kan je ook met weinig inspanning de gegevens omzetten van een geldig XML formaat naar enig ander gewenst resultaat.

NB: Heel vaak zullen de op XML gebaseerde gegevens als 'XML' worden aangeduid, maar dit is eigenlijk te algemeen. Er wordt namelijk pas betekenis aan de gegevens gegeven door de op XML gebaseerde taal.

  • Genoil
  • Registratie: Maart 2000
  • Laatst online: 12-11-2023
Quinie schreef op 09 oktober 2002 @ 12:25:

- cocoon - De apache implementatie voor XML :?
- Tomcat - vereist voor cocoon welke het mogelijk maakt met servlets te werken. Waarom nodig :?
Cocoon is geen XML implementatie, het is een XML-based publishing framework. De reden dat je er een servlet container als Tomcat voor nodig hebt is heel simpel: Cocoon is een servlet.

Het bijzondere aan Cocoon vind ik dat ze XML gebruiken om een pipeline-architectuur te beschrijven, waarvan de onderlinge componenten middels XML (lees: SAX-events) met elkaar kletsen. Voor data-opslag ben je geheel vrij om te kiezen wat je wilt (NXD, SQL, LDAP), als er maar netjes XML uitkomt. Voor output geldt hetzelfde, als er maar netjes XML ingaat. Ook is het eenvoudig uitbreidbaar met je eigen (in Java of XSP geprogrammeerde) componenten, mits ze XML kletsen.

Waar het nu vrij beperkt is om de flow van je applicatie te controleren (gewenste pipeline wordt geselecteert op basis van URI, en evt. splitsingen in de pipelines op basis van parameters), wordt het met Cocoon 2.1 helemaal feest met 'flowscript' een XML based scriptttaal waarmee je de 'flow' van webapps nog beter kan controleren.

Verwijderd

Verwijderd schreef op 09 oktober 2002 @ 12:37:
Limhes heeft helemaal gelijk (allicht ;))

Een paar puntjes:
- XML beschrijft data
- XSL is een stylesheet waarmee je de data die beschreven wordt in een XML document bijvoorbeeld als web document kan laten zien
- XML is zeker geen vervanging voor mySQL (zoals ik het zie)
- Door XML geeft MicroSoft (let op, ik zeg hierbij niet dat XML van MS is. Zij dragen wel deel aan de ontwikkeling ervan) eindelijk toe dat er een standaard moet komen waarmee data beschreven wordt. Hiermee kan dan ook heel makkelijk hetzelfde document in verschillende programma's gebruikt worden (klinkt makkelijker dan dat het is.)

Mochten mijn punten niet kloppen dan hoor ik dat graag en mocht er mij nog dingen binnen schieten dan edit ik ff

edit:
type ik een bericht staan er tich antwoorden bij :?
Helemaal gelijk wat betreft de punten die je opnoemt.
Nog even wat extra info en toeveoging bij het maken van een XML bestand kan gebruik gemaakt worden van een DTD.
Dit is een bestand waarin de afspraken over het XML bestand van te voren staan aangegeven.
Met behulp van een parser kan dan bekeken worden of je XML bestand klopt met wat er in dat afspraken bestand staat.
Is er aan alle afspraken gehouden, dan komt er meestal alleen te staan hoeveel elementen er zijn en nog wat dingen en dan is het goed.
Anders krijg je foutmeldigen (errors) met (meestal) daarbij de plaats (line) waar de fout "ongeveer" zit.
Zo kunnen dus ook meerdere mensen tegelijk aan 1 dokument werken en zal het uiteindelijk wanneer het bij elkaar wordt gevoegd goed werken.
Maar natuurlijk is het ook goed wanneer je meerdere XML bestanden moet maken voor het zelfde onderwerp / product.
Dan nog even over XSL:
het is inderdaad geheel juist wat je zegt er over, maar er is een nadeel wat ontstaat vergeleken met het overbekende CSS dokument.
Want bij het gebruik van een XSL dokument, kan de stijl van het dokument op zich en nog wat andere dingen (die in CSS wel kunnen) niet veranderd worden.
Met een XSL stylesheet kunnen we meerdere keren door het XML document
bladeren en eruit halen wat we willen afdrukken.
Helaas is het (voor zo ver ik weet) niet mogelijk een XSL-en een CSS stylesheet teglijktertijd toe te passen op een XML bestand.

PS.Nogmaals dit alles is geen critiek maar toevoeging van informatie aan het geheel. 8)

  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
jsserver: Nog even wat extra info en toeveoging bij het maken van een XML bestand kan gebruik gemaakt worden van een DTD. Dit is een bestand waarin de afspraken over het XML bestand van te voren staan aangegeven.
Of zoals MrX al eerder zei:
MrX: XML is een meta-taal, d.w.z. het is een 'taal' om een andere 'taal' in te beschrijven. De taal die je ermee beschrijft wordt vastgelegd in een DTD, of nog nauwkeuriger in een Schema.
jsserver: Met behulp van een parser kan dan bekeken worden of je XML bestand klopt met wat er in dat afspraken bestand staat.
Strikt gezien is dit onzin. Helaas wordt de term 'parser' vaak wel erg ruim geinterpreteerd, soms wordt er zelfs gesproken van "het parsen van XML mbv een XSL Transformatie".

Voor goed begrip is het belangrijk om goed te weten wat componenten nu eigenlijk doen en hoe de verschillende zaken rond XML samenwerken. Een parser doet niets anders dan het interpreteren van een tekst input tegen een bepaalde grammatica voor de taal van deze tekst. Een XML parser doet dit niets anders dan een XML document interpreteren tegen een XML grammatica.

Een DTD is geen grammatica voor XML: het is een soort grammatica die beschrijft hoe de boom die genoteerd is in XML syntax gestructureerd mag zijn. Het wordt daarom ook wel een boom grammatica genoemd.

Het controleren of een XML document aan een schema voor dit XML document voldoet wordt valideren genoemd. Deze validatie staat los van het parsen van een XML document, maar is wel vaak geimplementeerd in hetzelfde software product als waar de parser zelf onderdeel vanuit maakt. Omdat er tegenwoordig echter nogal wat meer schema talen voor XML zijn, zie je steeds meer validators die niet meer in de parser geintegreerd zijn, maar werken op een gestandaardiseerde interface zoals SAX.
jsserver: Dan nog even over XSL: het is inderdaad geheel juist wat je zegt er over, maar er is een nadeel wat ontstaat vergeleken met het overbekende CSS dokument. Want bij het gebruik van een XSL dokument, kan de stijl van het dokument op zich en nog wat andere dingen (die in CSS wel kunnen) niet veranderd worden.
XSLT is niets anders dan een transformatie taal voor XML. Met behulp van XSLT kan je dus XML documenten transformeren naar anders XML documenten. Het heeft daarom eigenlijk niets met CSS te maken. Dat het toch een stylesheet taal wordt genoemd, is eigenlijk een historische fout. XSLT is oorspronkelijk ontworpen om XML documenten te transformeren naar XSL Formatting Objects, een ander onderdeel van de XSL standaard. XSLT is echter veel breder van toepassing gebleken en ik vermoed dat het nu nog maar voor een zeer klein percentage gebruikt wordt voor het transformeren van XML naar XSL-FO.
Helaas is het (voor zo ver ik weet) niet mogelijk een XSL-en een CSS stylesheet teglijktertijd toe te passen op een XML bestand.
Je kan met een XSL Transformatie een XML document gewoon transformeren naar een XHTML document en daarin verwijzen naar een CSS stylesheet. Ze sluiten elkaar dus allerminst uit. Ook kan je in het algemeen gewoon processing instructions produceren met een XSL Transformatie.

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment

Pagina: 1