Ang pag-usab sa usa ka XML nga File mahimong Maayo nga pagkagama

Pagkat-on Unsaon sa Pagsulat sa Maayong Pagkatukod ug Valid XML

Usahay mas sayon ​​masabtan kon unsaon pagsulat ang maayong pagkaporma nga XML pinaagi sa pagtan-aw sa usa ka pananglitan. Ang newsletter sa Web Writer gisulat gamit ang usa ka porma sa XML - gitawag ko kini nga AML o About Markup Language (go figure!). Samtang kini usa ka dokumento sa pagtrabaho, dili kini tinuod nga usa ka maayo nga naporma o balido nga dokumento sa XML.

Maayong pagkagama

Adunay pipila ka piho nga mga lagda aron sa paghimo sa usa ka maayong pagkabuhat nga dokumento sa XML:

Adunay duha lamang ka suliran sa dokumento nga dili kini maayo nga nahimo:

Ang unang butang nga gikinahanglan sa AML nga dokumento mao ang pahayag sa deklarasyon sa XML.

Ang laing problema mao nga walay usa nga elemento nga hingpit nga naglukop sa tanan nga uban nga mga elemento. Aron ayuhon kini, ako magdugang og usa ka elemento sa gawas nga sudlanan:

Ang paghimo niining duha ka yano nga mga pagbag-o (ug pagsiguro nga ang tanan nga mga elemento adunay CDATA lamang) mopabalik sa dili maayo nga pagkabutang nga dokumento ngadto sa usa ka maayong pagkaporma nga dokumento.

Ang usa ka balidong dokumento sa XML gi validate batok sa usa ka Document Type Definition (DTD) o XML Schema. Kini usa ka hugpong sa mga lagda nga gimugna sa developer o usa ka sumbanan nga organisasyon nga nagpaila sa mga semantiko sa XML nga dokumento. Kini nagsulti sa kompyuter kon unsay buhaton sa markup.

Sa kaso sa About Markup Language, tungod kay kini dili usa ka standard XML nga pinulongan, sama sa XHTML o SMIL, ang DTD gimugna sa developer. Nga ang DTD lagmit anaa sa sama nga server sama sa XML nga dokumento, ug gihisgutan sa ibabaw sa dokumento.

Sa dili pa nimo sugdan ang pagpalambo sa usa ka DTD o Schema alang sa imong mga dokumento, kinahanglan imong maamgohan nga pinaagi lamang sa pagka-maayo nga giumol, usa ka XML nga dokumento ang naghulagway sa kaugalingon, ug sa ingon wala magkinahanglan sa usa ka DTD.

Pananglitan, sa atong maayong pagkabuhat nga dokumento sa AML, adunay mosunod nga mga tag:

Kung pamilyar ka sa newsletter sa Web Writer, mahimo nimong mailhan ang lainlaing seksyon sa newsletter. Tungod niini dali kaayo ang paghimo og bag-ong mga dokumento sa XML gamit ang sama nga sumbanan nga format. Nahibal-an ko nga ibutang ko ang bug-os nga taas nga titulo sa tag, ug ang unang seksyon nga URL sa tag.

DTDs

Kung gikinahanglan nga magsulat sa usa ka balido nga dokumento sa XML, aron gamiton ang data o aron sa pagproseso niini, imong ilakip kini sa imong dokumento gamit ang tag. Sa kini nga tag, imong gipasabot ang base XML tag sa dokumento, ug ang nahimutangan sa DTD (kasagaran Web URI). Pananglitan:

Usa ka maayo nga butang mahitungod sa DTD deklarasyon mao nga ikaw makapahayag nga usa ka DTD ang lokal ngadto sa sistema diin ang XML nga dokumento anaa sa "SYSTEM". Mahimo usab nimo itudlo ang publiko nga DTD, sama sa usa ka HTML 4.0 nga dokumento:

Kung gigamit nimo ang duha, imong gisulti ang dokumento aron gamiton ang usa ka piho nga DTD (ang public identifier) ​​ug asa kini pangitaon (ang system identifier).

Sa katapusan, mahimo nimong ilakip ang internal nga DTD direkta sa dokumento, sulod sa DOCTYPE tag. Pananglitan (kini dili kompleto nga DTD alang sa dokumento sa AML):

< ! ENTITY meta_keywords (#PCDATA)> ]>

XML Schema

Aron makamugna ang usa ka balido nga dokumento sa XML, mahimo usab nga gamiton ang usa ka dokumento sa XML Schema aron isaysay ang imong XML. Ang XML Schema usa ka dokumento sa XML nga naghulagway sa mga dokumento sa XML. Pagkat-on unsaon pagsulat ang usa ka schema.

Mubo nga sulat

Ang pagtudlo lang sa DTD o XML Schema dili igo. Ang XML nga anaa sa dokumento kinahanglang mosunod sa mga lagda sa DTD o Schema. Ang paggamit sa usa ka validating parser usa ka yanong paagi sa pagsusi nga ang imong XML nagsunod sa mga lagda sa DTD. Makita nimo ang daghang mga parser nga online.