XML- tutoriaal

XML TUIS XML Inleiding XML Hoe om te gebruik XML-boom XML-sintaksis XML elemente XML-kenmerke XML Naamruimtes XML vertoon XML HttpRequest XML-ontleder XML DOM XML XPath XML XSLT XML XQuery XML XLink XML valideerder XML DTD XML-skema XML-bediener XML voorbeelde XML Vasvra XML-sertifikaat

XML AJAX

AJAX Inleiding AJAX XMLHttp AJAX-versoek AJAX-reaksie AJAX XML-lêer AJAX PHP AJAX ASP AJAX-databasis AJAX toepassings AJAX voorbeelde

XML DOM

DOM Inleiding DOM nodusse Toegang tot DOM DOM Node Info DOM Node Lys DOM deurkruis DOM Navigeer DOM Kry waardes DOM Verander nodusse DOM Verwyder nodes DOM vervang nodusse DOM Skep nodusse DOM Voeg nodes by DOM Kloon Nodes DOM Voorbeelde

XPath handleiding

XPath Inleiding XPath-nodes XPath-sintaksis XPath-asse XPath-operateurs XPath voorbeelde

XSLT- tutoriaal

XSLT Inleiding XSL-tale XSLT-transformasie XSLT <sjabloon> XSLT <waarde-van> XSLT <vir-elk> XSLT <sorteer> XSLT <if> XSLT <kies> XSLT Pas toe XSLT op die kliënt XSLT op die bediener XSLT Wysig XML XSLT voorbeelde

XQuery- tutoriaal

XQuery Inleiding XQuery voorbeeld XQuery FLWOR XQuery HTML XQuery-bepalings XQuery-sintaksis XQuery Voeg by XQuery Kies XQuery-funksies

XML DTD

DTD Inleiding DTD Boublokke DTD Elemente DTD-kenmerke DTD Elements vs Attr DTD Entiteite DTD voorbeelde

XSD- skema

XSD Inleiding XSD Hoe om XSD <skema> XSD-elemente XSD-kenmerke XSD-beperkings

XSD -kompleks

XSD-elemente XSD leeg Slegs XSD-elemente Slegs XSD-teks XSD gemeng XSD-aanwysers XSD <enige> XSD <anyAttribute> XSD-vervanging XSD voorbeeld

XSD data

XSD-string XSD datum XSD Numeries XSD Diverse XSD-verwysing

Webdienste _

XML Dienste XML WSDL XML SEEP XML RDF XML RSS

Verwysings

DOM Node Tipes DOM Node DOM NodeLys DOM NamedNodeMap DOM-dokument DOM Element DOM-kenmerk DOM teks DOM CDATA DOM Kommentaar DOM XMLHttpRequest DOM-ontleder XSLT-elemente XSLT/XPath-funksies

XML-skema- tutoriaal


Wat is 'n XML-skema?

'n XML-skema beskryf die struktuur van 'n XML-dokument.

Daar word ook na die XML-skema-taal verwys as XML-skema-definisie (XSD).

XSD voorbeeld

<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">

<xs:element name="note">
  <xs:complexType>
    <xs:sequence>
      <xs:element name="to" type="xs:string"/>
      <xs:element name="from" type="xs:string"/>
      <xs:element name="heading" type="xs:string"/>
      <xs:element name="body" type="xs:string"/>
    </xs:sequence>
  </xs:complexType>
</xs:element>

</xs:schema>

Die doel van 'n XML-skema is om die wettige boustene van 'n XML-dokument te definieer:

  • die elemente en eienskappe wat in 'n dokument kan verskyn
  • die aantal (en volgorde van) kinderelemente
  • datatipes vir elemente en eienskappe
  • verstek en vaste waardes vir elemente en eienskappe

Waarom leer XML-skema?

In die XML-wêreld word honderde gestandaardiseerde XML-formate daagliks gebruik.

Baie van hierdie XML-standaarde word deur XML-skemas gedefinieer.

XML-skema is 'n XML-gebaseerde (en kragtiger) alternatief vir DTD.



XML-skemas ondersteun datatipes

Een van die grootste sterkpunte van XML-skemas is die ondersteuning vir datatipes.

  • Dit is makliker om toelaatbare dokumentinhoud te beskryf
  • Dit is makliker om die korrektheid van data te valideer
  • Dit is makliker om datafasette te definieer (beperkings op data)
  • Dit is makliker om datapatrone (dataformate) te definieer
  • Dit is makliker om data tussen verskillende datatipes om te skakel

XML-skemas gebruik XML-sintaksis

Nog 'n groot voordeel van XML-skemas is dat dit in XML geskryf is.

  • Jy hoef nie 'n nuwe taal te leer nie
  • Jy kan jou XML-redigeerder gebruik om jou Skema-lêers te wysig
  • Jy kan jou XML-ontleder gebruik om jou Skema-lêers te ontleed
  • Jy kan jou Skema manipuleer met die XML DOM
  • Jy kan jou Skema met XSLT transformeer

XML-skemas is uitbreidbaar omdat dit in XML geskryf is.

Met 'n uitbreidbare Skema-definisie kan jy:

  • Hergebruik jou Skema in ander Skemas
  • Skep jou eie datatipes afgelei van die standaardtipes
  • Verwys na verskeie skemas in dieselfde dokument

XML-skemas Veilige datakommunikasie

Wanneer data van 'n sender na 'n ontvanger gestuur word, is dit noodsaaklik dat beide dele dieselfde "verwagtings" oor die inhoud het.

Met XML-skemas kan die sender die data beskryf op 'n manier wat die ontvanger sal verstaan.

'n Datum soos: "03-11-2004" sal in sommige lande geïnterpreteer word as 3.November en in ander lande as 11.Maart.

'n XML-element met 'n datatipe soos hierdie:

<date type="date">2004-03-11</date>

verseker 'n wedersydse begrip van die inhoud, omdat die XML-datatipe "datum" die formaat "JJJJ-MM-DD" vereis.


Goed gevorm is nie genoeg nie

'n Goed gevormde XML-dokument is 'n dokument wat aan die XML-sintaksisreëls voldoen, soos:

  • dit moet begin met die XML-verklaring
  • dit moet een unieke wortelelement hê
  • beginmerkers moet bypassende eindmerkers hê
  • elemente is hooflettergevoelig
  • alle elemente moet gesluit wees
  • alle elemente moet behoorlik geneste wees
  • alle kenmerkwaardes moet aangehaal word
  • entiteite moet vir spesiale karakters gebruik word

Selfs al is dokumente goed gevorm, kan dit steeds foute bevat, en daardie foute kan ernstige gevolge hê.

Dink aan die volgende situasie: jy bestel 5 bruto laserdrukkers, in plaas van 5 laserdrukkers. Met XML-skemas kan die meeste van hierdie foute deur jou validerende sagteware opgevang word.