Omskep van 'n XML-lêer om goed te wees

Leer hoe om goed-vormde en geldige XML te skryf

Soms is dit makliker om te verstaan ​​hoe om goed gevormde XML te skryf deur 'n voorbeeld te sien. Die Webwriter nuusbrief word geskryf deur 'n vorm van XML - ek noem dit AML of About Markup Language (gaan figuur!). Alhoewel dit 'n werkdokument is, is dit eintlik nie 'n goed gevormde of geldige XML-dokument nie.

Goed gevorm

Daar is 'n paar spesifieke reëls om 'n goed gevormde XML-dokument te skep:

Daar is slegs twee probleme met die dokument wat dit nie goed gevorm het nie:

Die eerste ding wat die AML-dokument nodig het, is 'n XML-verklaring.

Die ander probleem is dat daar geen element is wat al die ander elemente heeltemal omsluit nie. Om dit reg te stel, voeg ek 'n eksterne houerelement by:

Om die twee eenvoudige veranderinge te maak (en om te verseker dat al die elemente slegs CDATA bevat) sal die nie-goed gevormde dokument in 'n goed gevormde dokument verander.

'N Geldige XML-dokument word gevalideer teen 'n dokumenttipe-definisie (DTD) of XML-skema. Hierdie is 'n stel reëls geskep deur die ontwikkelaar of 'n standaard organisasie wat die semantiek van die XML-dokument definieer. Dit vertel die rekenaar wat om te doen met die opmaak.

In die geval van die About Markup Language, aangesien dit nie 'n standaard XML-taal is, soos XHTML of SMIL nie, sal die DTD deur die ontwikkelaar geskep word. Die DTD sal waarskynlik op dieselfde bediener as die XML-dokument wees, en verwys bo-aan die dokument.

Voordat u 'n DTD of Skema vir u dokumente begin ontwikkel, moet u besef dat bloot 'n XML-dokument net selfbeskryfend is en dus nie 'n DTD benodig nie.

Byvoorbeeld, met ons goed gevormde AML dokument, is daar die volgende tags:

As u bekend is met die Webwriter-nuusbrief, kan u die verskillende afdelings van die nuusbrief herken. Dit maak dit baie maklik om nuwe XML dokumente te skep met dieselfde standaard formaat. Ek weet dat ek altyd die volle lang titel in die tag, en die eerste gedeelte URL in die tag sal sit.

DTD

As u 'n geldige XML-dokument moet skryf, om die data te gebruik of om dit te verwerk, sal u dit in u dokument met die etiket insluit. In hierdie tag definieer jy die basis XML-tag in die dokument en die ligging van die DTD (gewoonlik 'n web-URI). Byvoorbeeld:

Een goeie ding oor die DTD-verklarings is dat jy kan verklaar dat 'n DTD lokaal is vir die stelsel waar die XML-dokument by die "SYSTEM" is. U kan ook verwys na 'n openbare DTD, soos met 'n HTML 4.0 dokument:

Wanneer u albei gebruik, vertel u die dokument om 'n spesifieke DTD (die openbare identifiseerder) te gebruik en waar om dit te vind (die stelsel identifiseerder).

Uiteindelik kan u 'n interne DTD direk in die dokument, binne die DOCTYPE-tag, insluit. Byvoorbeeld (dit is nie 'n volledige DTD vir die AML-dokument nie):

< ! ENTITY meta_keywords (# PCDATA)> ]>

XML-skema

Om 'n geldig XML-dokument te maak, kan u ook 'n XML-skedule dokument gebruik om u XML te definieer. XML-skema is 'n XML-dokument wat XML-dokumente beskryf. Leer hoe om 'n skema te skryf.

nota

Dit is nie genoeg om net na 'n DTD of XML-skema te verwys nie. Die XML wat in die dokument is, moet die reëls in die DTD of Skema volg. Die gebruik van 'n validering parser is 'n maklike manier om seker te maak dat jou XML die DTD-reëls volg. Jy kan baie sulke parsers aanlyn vind.