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 nodusse 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 Naamruimtes


XML-naamruimtes bied 'n metode om elementnaamkonflik te vermy.


Naamkonflikte

In XML word elementname deur die ontwikkelaar gedefinieer. Dit lei dikwels tot 'n konflik wanneer probeer om XML-dokumente van verskillende XML-toepassings te meng.

Hierdie XML dra HTML-tabelinligting:

<table>
  <tr>
    <td>Apples</td>
    <td>Bananas</td>
  </tr>
</table>

Hierdie XML bevat inligting oor 'n tafel ('n meubelstuk):

<table>
  <name>African Coffee Table</name>
  <width>80</width>
  <length>120</length>
</table>

As hierdie XML-fragmente saamgevoeg word, sal daar 'n naamkonflik wees. Beide bevat 'n <table> element, maar die elemente het verskillende inhoud en betekenis.

'n Gebruiker of 'n XML-toepassing sal nie weet hoe om hierdie verskille te hanteer nie.


Los die naamkonflik op met 'n voorvoegsel

Naamkonflikte in XML kan maklik vermy word deur 'n naamvoorvoegsel te gebruik.

Hierdie XML bevat inligting oor 'n HTML-tabel en 'n meubelstuk:

<h:table>
  <h:tr>
    <h:td>Apples</h:td>
    <h:td>Bananas</h:td>
  </h:tr>
</h:table>

<f:table>
  <f:name>African Coffee Table</f:name>
  <f:width>80</f:width>
  <f:length>120</f:length>
</f:table>

In die voorbeeld hierbo sal daar geen konflik wees nie, want die twee <table>-elemente het verskillende name.



XML-naamruimtes - Die xmlns-kenmerk

Wanneer voorvoegsels in XML gebruik word, moet 'n naamspasie vir die voorvoegsel gedefinieer word.

Die naamruimte kan gedefinieer word deur 'n xmlns -kenmerk in die beginmerker van 'n element.

Die naamruimteverklaring het die volgende sintaksis. xmlns: voorvoegsel =" URI ".

<root>

<h:table xmlns:h="http://www.w3.org/TR/html4/">
  <h:tr>
    <h:td>Apples</h:td>
    <h:td>Bananas</h:td>
  </h:tr>
</h:table>

<f:table xmlns:f="https://www.w3schools.com/furniture">
  <f:name>African Coffee Table</f:name>
  <f:width>80</f:width>
  <f:length>120</f:length>
</f:table>

</root>

In die voorbeeld hierbo:

Die xmlns-kenmerk in die eerste <table>-element gee die h:-voorvoegsel 'n gekwalifiseerde naamruimte.

Die xmlns-kenmerk in die tweede <table>-element gee die f:-voorvoegsel 'n gekwalifiseerde naamruimte.

Wanneer 'n naamruimte vir 'n element gedefinieer word, word alle kinderelemente met dieselfde voorvoegsel met dieselfde naamspasie geassosieer.

Naamruimtes kan ook in die XML-wortelelement verklaar word:

<root xmlns:h="http://www.w3.org/TR/html4/"
xmlns:f="https://www.w3schools.com/furniture">

<h:table>
  <h:tr>
    <h:td>Apples</h:td>
    <h:td>Bananas</h:td>
  </h:tr>
</h:table>

<f:table>
  <f:name>African Coffee Table</f:name>
  <f:width>80</f:width>
  <f:length>120</f:length>
</f:table>

</root>

Let wel: Die naamruimte-URI word nie deur die ontleder gebruik om inligting op te soek nie.

Die doel van die gebruik van 'n URI is om die naamruimte 'n unieke naam te gee.

Maatskappye gebruik egter dikwels die naamruimte as 'n wyser na 'n webblad wat naamruimte-inligting bevat.


Uniform Resource Identifier (URI)

'n Uniform Resource Identifier (URI) is 'n string karakters wat 'n internethulpbron identifiseer.

Die mees algemene URI is die Uniform Resource Locator (URL) wat 'n internetdomeinadres identifiseer. 'n Ander, nie so algemene tipe URI nie, is die Uniform Resource Name (URN).


Verstek naamruimtes

Definieer 'n verstek naamspasie vir 'n element spaar ons daarvan om voorvoegsels in al die kind elemente te gebruik. Dit het die volgende sintaksis:

xmlns="namespaceURI"

Hierdie XML dra HTML-tabelinligting:

<table xmlns="http://www.w3.org/TR/html4/">
  <tr>
    <td>Apples</td>
    <td>Bananas</td>
  </tr>
</table>

Hierdie XML bevat inligting oor 'n meubelstuk:

<table xmlns="https://www.w3schools.com/furniture">
  <name>African Coffee Table</name>
  <width>80</width>
  <length>120</length>
</table>

Naamruimtes in werklike gebruik

XSLT is 'n taal wat gebruik kan word om XML-dokumente in ander formate te transformeer.

Die XML-dokument hieronder is 'n dokument wat gebruik word om XML in HTML te transformeer.

Die naamspasie "http://www.w3.org/1999/XSL/Transform" identifiseer XSLT-elemente binne 'n HTML-dokument:

<?xml version="1.0" encoding="UTF-8"?>

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/">
<html>
<body>
  <h2>My CD Collection</h2>
  <table border="1">
    <tr>
      <th style="text-align:left">Title</th>
      <th style="text-align:left">Artist</th>
    </tr>
    <xsl:for-each select="catalog/cd">
    <tr>
      <td><xsl:value-of select="title"/></td>
      <td><xsl:value-of select="artist"/></td>
    </tr>
    </xsl:for-each>
  </table>
</body>
</html>
</xsl:template>

</xsl:stylesheet>

As jy meer wil leer oor XSLT, lees asseblief ons XSLT-tutoriaal .