[XML] wie kan dit eens uitleggen?

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

  • GiLuX
  • Registratie: Juni 1999
  • Laatst online: 12-11-2025
net een introductie over xml op devshed.com gelezen en ik moet zeggen dat ik na het lezen daarvan er nog minder van begrijp dan ervoor.

als je vervolgens de reacties op het artikel leest dan krijg ik het idee dat mensen bij het horen van het woord alleen al in soort van surialistische paniek reactie los breken.

ik heb van horen zeggen dat het heel handig is om je data in databases op te slaan ed.

kan iemand mij een link geven naar een artikel oid dat dit illusreerd met lots of examples?

"I disagree with what you are saying, but I will defend to the death your right to say it." -- not clear who


  • Dennis
  • Registratie: Februari 2001
  • Laatst online: 17:26

  • Tim
  • Registratie: Mei 2000
  • Laatst online: 23-07 15:18

Tim

in XML is een tag eigenlijk een groepje tags..

<nieuwsbericht> { <table><tr><td> }
<datum>31-1-00</datum> { <div class="small">Op 31-1-00</div> }
<plaats>Zierikzee</plaats> {<B>Zierikzee -</b>}

Eigenlijk een soort templates, et als verschil dat het bij XML de bedoeling is dat dit client-side gebeurt (maar NS ondersteund het nog niet)

  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Tja in feite is XML helemaal niets. XML is slechts een syntax om data gestructureerd te presenteren. XML bemoeit zich dus absoluut niet met de weergave van deze gegevens voor een lezer.

Een simpel voorbeeldje van een XML document kan zijn:
code:
1
2
3
4
5
6
7
8
9
<AddressBook>
   <Person>
    <Name>Martin Bravenboer</Name>
    <EmailAddress>martin@pandoramix.org</EmailAddress>
   </Person>
   <Person>
    ...
   </Person>
</AddressBook>

Deze XML file bevat dus alleen data.

Verschillende applicaties kunnen nu deze data gebruiken. Je kan bijvoorbeeld een e-mail client schrijven die bij een gegeven naam een e-mail address zoekt. Ook zou je een stylesheet kunnen maken die dit adresboek weergeeft in een browser.

Als je deze data in een eigen formaat zou stoppen of bijvoorbeeld in HTML (nog erger ;) ). Zou het veel lastiger zijn om ermee te werken vanuit verschillende applicaties. HTML files geven bijvoorbeeld niet weer wat iets is maar hoe je het wilt weergeven. Daar zou een e-mail client niets mee kunnen.

XML wordt vooral gebruikt voor communicatie. Als opslag-medium in databases is het niet erg populair omdat het nogal wat onnodige ruimte inneemt. Verder heeft het een aantal eigenschappen die het niet erg geschikt maken voor het uitvoeren van queries.

XML zie je dus vooral als syntax van een communicatie protocol tussen applicaties (denk bijvoorbeeld aan SOAP, Jabber, Wasp ;) ). Verder wordt XML in de database wereld vooral gebruikt als resultaat van queries of voor het invoeren van data.

Je kan XML transformeren naar een andere XML file met behulp van XSL. Met XSL kan je de XML file van hierboven omzetten naar XHTML, waardoor je het in een browser zou kunnen weergeven.

Als je er echt veel meer over wilt weten zou ik er een goed boek over kopen. Zelf heb ik maar 1 boek: Professional XML van Wrox. Hierin staat eigenlijk alles wat je zou moeten weten.

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


  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Op maandag 04 juni 2001 17:30 schreef Timpie2000 het volgende:
Sorry, maar dit is toch niet echt een goede omschrijving van de betekenis van XML :) . Wellicht doe je er goed aan ook eens die tutorials te lezen ;) .

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


  • Dennis
  • Registratie: Februari 2001
  • Laatst online: 17:26
Op maandag 04 juni 2001 17:42 schreef mbravenboer het volgende:
Sorry, maar dit is toch niet echt een goede omschrijving van de betekenis van XML :) . Wellicht doe je er goed aan ook eens die tutorials te lezen ;) .
Goh net stond er nog iets anders ;)

  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Op maandag 04 juni 2001 17:44 schreef dennisdotcom het volgende:
Goh net stond er nog iets anders ;)
Hum ja, ik verslikte me even ;) .

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


  • oh,when?
  • Registratie: April 2000
  • Niet online

oh,when?

...

Hier zijn ook nog wat interresante antwoorden te vinden :)

"You're only as good, as what you did last week."


  • Passenger
  • Registratie: Januari 2000
  • Laatst online: 19-08 11:41
stel, je hebt een applicatie op 2 lagen... een data-laag, en een presentatie laag... dan is xml dus eigenlijk de datalaag, en xsml (of hoe dat ook heet... hetgene wat bepaalt hoe het eruit komt zien + hetgene dat er ook daadwerkelijk uit komt) zeg maar de presentatielaag?


(hmm.. dit klinkt eigenlijk wel heel erg vaag.. maar goed)

  • Tim
  • Registratie: Mei 2000
  • Laatst online: 23-07 15:18

Tim

Op maandag 04 juni 2001 17:42 schreef mbravenboer het volgende:

[..]

Sorry, maar dit is toch niet echt een goede omschrijving van de betekenis van XML :) . Wellicht doe je er goed aan ook eens die tutorials te lezen ;) .
zo werd het aan mij uitgelegd..

  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Op maandag 04 juni 2001 20:28 schreef Tu-Tone het volgende:
stel, je hebt een applicatie op 2 lagen... een data-laag, en een presentatie laag... dan is xml dus eigenlijk de datalaag, en xsml
XSL zoals ik hierboven noemde :)
zeg maar de presentatielaag?
Dat klopt inderdaad volledig.
(hmm.. dit klinkt eigenlijk wel heel erg vaag.. maar goed)
Dit klopt inderdaad ook volledig ;) .

Misschien is het leuk om het nut van XML nog even te illustreren aan de hand van een heel praktisch voorbeeld.

Op het moment werk ik mee aan het Wasp.Messenger project. Hiervoor hebben we een bestandsbeheer applicatie nodig (a la Visual Source Safe, CVS). Wasigh heeft echter een eigen systeem gemaakt in PHP. Deze PHP pagina's produceren HTML.

Nu wilden we eigenlijk een stand-alone applicatie gaan maken. Het vervelende was echter dat alle regels qua security en verwerking van gegevens al in de PHP files zat. Deze produceren echter HTML, waarmee je in een client applicatie weinig kunt.

Nu gaan we het echter anders aanpakken. Er komt een 'core' waarin alle bestandsbeheer-logic wordt verwerkt. Deze core levert aan een client XML documenten, waarin dus alleen data zit en niet de opmaak van die data.

We kunnen nu makkelijk een web-based client maken door deze XML documenten met XSL te transformeren naar HTML. Maar we kunnen echter ook makkelijk een stand-alone applicate maken die de XML documenten verwerkt en deze in een fraaie grafische userinterface toont.

Op deze manier heb je dus een data laag en een presentatie. Dit is in feite de core. Deze maakt in dit geval dynamisch XML documenten aan. Deze XML documenten vormen het protocol waarmee je met de core kunt werken. De web-based client met XSL en de stand-alone client vormen de presentatie laag, die helemaal niks van de regels die gelden voor de data hoeft af te weten.

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


  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Op maandag 04 juni 2001 20:40 schreef Timpie2000 het volgende:
zo werd het aan mij uitgelegd..
Tja, dan begreep jouw uitlegger het ook niet :) .

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


  • Passenger
  • Registratie: Januari 2000
  • Laatst online: 19-08 11:41
Op maandag 04 juni 2001 20:46 schreef mbravenboer het volgende:
[een heel lang verhaal :) ]
dus even kort samengevat... xml regelt de data, en het maakt gewoon geen *censuur-piep* uit waar deze gegevens in gebruikt worden (een webinterface, een standalone applicatie, etc.)? volgens mij begin ik dan nu toch ook eindelijk het nut achter xml te zien :)

  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Op maandag 04 juni 2001 21:22 schreef Tu-Tone het volgende:
dus even kort samengevat... xml regelt de data, en het maakt gewoon geen *censuur-piep* uit waar deze gegevens in gebruikt worden (een webinterface, een standalone applicatie, etc.)?
Je bent fantastisch! Helemaal goed :) .
volgens mij begin ik dan nu toch ook eindelijk het nut achter xml te zien :)
Heb ik mijn tijd weer nuttig besteed ;) .

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


  • Rense Klinkenberg
  • Registratie: November 2000
  • Laatst online: 15-09 23:45
Op maandag 04 juni 2001 21:22 schreef Tu-Tone het volgende:

[..]

dus even kort samengevat... xml regelt de data, en het maakt gewoon geen *censuur-piep* uit waar deze gegevens in gebruikt worden (een webinterface, een standalone applicatie, etc.)? volgens mij begin ik dan nu toch ook eindelijk het nut achter xml te zien :)
Da's idd. kort samengevat waar het op neer komt ja. Dat is ook de hele gein van XML, je kan het overal voor gebruiken. 't maakt niet uit of je XML opent op UNIX, Mac, DOS of Win, browser, scriptje, applicatie, enz.

  • Passenger
  • Registratie: Januari 2000
  • Laatst online: 19-08 11:41
goh, misschien ga ik t dan toch ooit nog es begrijpen :) misschien moet ik maar es een boek kopen, en rustig lezen wat xml nou exact is, en hoe t werkt ;)

  • GiLuX
  • Registratie: Juni 1999
  • Laatst online: 12-11-2025
NS ondersteund geen xml...

maar als je php oid gebruikt, dan parsed die toch je xml?

verder,

kan iemand iets van een reallife voorbeeldje geven met code hoe je met php en xml een databeest vult of leeg trekt?

"I disagree with what you are saying, but I will defend to the death your right to say it." -- not clear who


  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Op dinsdag 05 juni 2001 00:16 schreef GiLuX het volgende:
maar als je php oid gebruikt, dan parsed die toch je xml?
Je kan ik bijna elke taal tegenwoordig XML parsen. Wat je er daarna mee gaat doen hangt of van jouw applicatie. Je kan meestal op twee manieren XML inlezen: SAX en DOM. DOM bouwt in het geheugen een boom voor je op. Deze boom geeft je XML document weer. SAX is event-gebaseerd en levert je in feite simpelweg alle gegevens in de file op een lineare wijze (loopt de boom af). Merk op dat je met SAX dus een DOM boom kunt maken.

Overigens is het niet zo'n punt dat NS 4.x geen XML/XSL ondersteunt. Je kan de XSL transformatie naar HTML ook server-side uitvoeren, wat sowieso verstandig is vanwege de baggere XSL implementatie in IE.
kan iemand iets van een reallife voorbeeldje geven met code hoe je met php en xml een databeest vult of leeg trekt?
Tja, dat hangt er maar even helemaal vanaf wat je precies wilt. Deze vraag is wel erg onduidelijk. Sommige database systemen ondersteunen XML als invoer of uitvoer formaat. Je moet dan in de documentatie van je database systeem kijken hoe dit mogelijk is. Een database systeem kan nooit 'zomaar vanzelf' met XML werken. Er moet een mapping zijn van de structuur van je XML naar het relationele model van je database.

Deze mapping kan je zelf echter ook verzorgen.
code:
1
2
3
4
<Person>
   <Name>Martin Bravenboer</Name>
   <EmailAddress>martin@pandoramix.org</EMailAddress>
</Person>

mapt natuurlijk een een vanzelfsprekende manier naar een tabel de naam Person en de kolommen Name en EMailAddress.

Je kan dan eventueel deze XML file inlezen, hier een insert (of update) van maken en deze uitvoeren op je database. Je hebt dan dus zelf de XML support van je database voor een specifiek geval geimplementeerd. Uiteraard is het ook triviaal om op deze manier een query resultaat naar XML om te zetten.

Het heeft weinig nut om hiervoor code neer te gaan zetten, bovendien heb ik geen zin om PHP te gaan brabbelen :) (als ik het al zou kunnen ;) ).

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


  • Rense Klinkenberg
  • Registratie: November 2000
  • Laatst online: 15-09 23:45
Waar ik XML de laatste tijd dus erg nuttig voor gebruik, is het vervangen van een template engine. Hiervoor gebruik ik XML en XSL.

Dat werkt perfect. Als je alle DTD's (die geven de structuur van een XML aan) goed universeel maakt, kan je heel gemakkelijk een uitput voor HTML en een voor WAP maken :P :P

En voor degene die denken dat je dit ook wel fijn als template engine vervanger kan gebruien voor een forum: te laat, de makers van UBB (infopop) hebben dat al gedaan.

  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Op dinsdag 05 juni 2001 01:09 schreef freak007 het volgende:
Dat werkt perfect. Als je alle DTD's (die geven de structuur van een XML aan)
Je loopt achter ;) . DTD's zijn dood, lange leve XML Schema's!
goed universeel maakt, kan je heel gemakkelijk een uitput voor HTML en een voor WAP maken :P :P
Dat vind ik nou weer een uitstekende illustratie :) . Als iemand ooit nog komt beweren dat XML niet meer dan een hype is verwijzen we hem regelrecht naar deze thread :) .

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


  • Rense Klinkenberg
  • Registratie: November 2000
  • Laatst online: 15-09 23:45
Op dinsdag 05 juni 2001 01:13 schreef mbravenboer het volgende:
Je loopt achter ;) . DTD's zijn dood, lange leve XML Schema's!
Oh.
Dat vind ik nou weer een uitstekende illustratie :) . Als iemand ooit nog komt beweren dat XML niet meer dan een hype is verwijzen we hem regelrecht naar deze thread :) .
Mis ik nu een synischme of lijkt het alleen maar zo :?

  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Op dinsdag 05 juni 2001 01:20 schreef freak007 het volgende:
Oh.
XML Schema is min of meer de opvolger van de DTD. XML Schema gebruikt XML syntax voor de document type definition. Ook kan je veel preciezer aangeven wat de structuur van het document mag zijn. Ook is er veel betere ondersteuning voor data-typen (voor zover die er in DTD's uberhaupt was.

Het is trouwens ook wel heel lastig om niet achter te lopen met de huidige snelheid waarmee het W3C specificaties uit de grond stampt :).
Mis ik nu een synischme of lijkt het alleen maar zo :?
Ik bedoelde het bloed serieus ... was dat niet duidelijk dan?

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


  • Rense Klinkenberg
  • Registratie: November 2000
  • Laatst online: 15-09 23:45
Op dinsdag 05 juni 2001 01:23 schreef mbravenboer het volgende:Ik bedoelde het bloed serieus ... was dat niet duidelijk dan?
Laat maar, wakker blijven gaat soms wat moeilijker :)

ps. heb je misschien ook nog een linkje liggen naar die XML schema specificaties? Ik heb ze nl. nog nooit tegengekomen.

edit: toch gevonden op http://www.w3.org/TR/

  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Op dinsdag 05 juni 2001 01:46 schreef freak007 het volgende:
ps. heb je misschien ook nog een linkje liggen naar die XML schema specificaties? Ik heb ze nl. nog nooit tegengekomen.
Die W3C specificaties zijn zo geschreven dat je ze ongeveer snapt als de volgende standaard er weer is ;) . Ik denk dat je aan deze hele goede tutorial meer hebt:

http://www.xfront.com

Hier staat trouwens ook een hele goede XSL tutorial, maar die heb je niet echt nodig geloof ik ;) .

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


  • Rense Klinkenberg
  • Registratie: November 2000
  • Laatst online: 15-09 23:45
Ik heb van iemand een boek geleend:
Profesional XML van 12 schrijvers (die leuk allemaal op de kaft staan). ISBN 1-861003-11-0. Hier staat dus echt alles over XML in, verdeeldt over 1150 pagina's :P

Ik kan het iedereen echt aanraden. Toen ik er net effe in keek, bleek dat XML schema er dus ook in te staan.

  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Op dinsdag 05 juni 2001 01:59 schreef freak007 het volgende:
Profesional XML van 12 schrijvers
Tja, ga jij maar eens een boek van 1150 pagina's schrijven en ook nog up-to-date blijven. Daar heb je wel een leger voor nodig :P .
ISBN 1-861003-11-0. Hier staat dus echt alles over XML in, verdeeldt over 1150 pagina's :P
Dat is denk ik dat boek van Wrox waar ik het ook over had. Dijk van een boek! Het is zeker weten een van de degelijkste XML boeken.

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


  • Rense Klinkenberg
  • Registratie: November 2000
  • Laatst online: 15-09 23:45
Op dinsdag 05 juni 2001 02:03 schreef mbravenboer het volgende:
Dat is denk ik dat boek van Wrox waar ik het ook over had. Dijk van een boek! Het is zeker weten een van de degelijkste XML boeken.
Jep.

* Rense Klinkenberg begint het gevoel te bekruipen dat we al best off-topic zijn

Verwijderd

Waarom moeten er zo'n dikke boeken geschreven worden over zoiets 'simpels'?

  • Rense Klinkenberg
  • Registratie: November 2000
  • Laatst online: 15-09 23:45
Op dinsdag 05 juni 2001 02:49 schreef sproggle het volgende:
Waarom moeten er zo'n dikke boeken geschreven worden over zoiets 'simpels'?
Omdat je er zo veel mee kan doen :)

  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Op dinsdag 05 juni 2001 02:49 schreef sproggle het volgende:
Waarom moeten er zo'n dikke boeken geschreven worden over zoiets 'simpels'?
Er zitten nogal veel aspecten aan XML.
Het boek behandelt bijvoorbeeld:
- XML Syntax
- DTD's
- Data Modeliing
- DOM
- SAX
- Namespaces
- Schema's
- Linking and Querying
- XSLT
- XML and Databases
- XSL & CSS
- WAP
- SOAP
en nog veel meer...

Pagina 937 t/m 1161 zijn trouwens specificaties.

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


Verwijderd

Op dinsdag 05 juni 2001 01:59 schreef freak007 het volgende:
Ik heb van iemand een boek geleend:
Profesional XML van 12 schrijvers (die leuk allemaal op de kaft staan). ISBN 1-861003-11-0. Hier staat dus echt alles over XML in, verdeeldt over 1150 pagina's :P

Ik kan het iedereen echt aanraden. Toen ik er net effe in keek, bleek dat XML schema er dus ook in te staan.
kan je hem ff voor mij kopieren >:)
Pagina: 1