I-XML isoloko isetyenziswa kakubi

I-XML isoloko isetyenziswa kakubi
Ulwimi lweXML lwaqanjwa ngo-1996. Kungekudala emva kokuba kuvele amathuba esicelo sayo sele iqalile ukungaqondwa, kwaye ngeenjongo ababezama ukuyiqhelanisa nayo, kwakungeyona nto ingcono kakhulu.

Asikokubaxa ukuba uninzi lwe-schemas ze-XML endizibonileyo bezingafanelekanga okanye zisetyenziswa ngendlela engalunganga ye-XML. Ngaphezu koko, oku kusetyenziswa kwe-XML kubonise ukungaqondi okusisiseko kwe-XML eyayimalunga nayo.

I-XML lulwimi lophawulo. Oku akuyofomati yedatha. Uninzi lwee-schemas ze-XML ziye zawutyeshela ngokucacileyo lo mahluko, zibhidanisa i-XML ngefomathi yedatha, ekugqibeleni ibangele impazamo ekukhetheni i-XML kuba ifomethi yedatha efunekayo ngokwenene.

Ngaphandle kokungena kwiinkcukacha ezininzi, i-XML ifaneleke kakhulu kwiibhloko zenkcazo yesicatshulwa kunye nesakhiwo kunye nedatha. Ukuba eyona njongo yakho ayikuko ukusebenza ngebhloko yokubhaliweyo, ukukhetha i-XML akunakwenzeka ukuba kuthethelelwe.

Ukusuka kule mbono, kukho indlela elula yokujonga ukuba i-schema ye-XML yenziwe njani. Masithathe njengomzekelo uxwebhu kwi-schema ekujoliswe kuyo kwaye sisuse zonke iithegi kunye neempawu kuyo. Ukuba okuseleyo akunangqiqo (okanye kukho umgca ongenanto oshiyekileyo), ke mhlawumbi ischema sakho alakhiwanga ngokuchanekileyo okanye bekungafanelekanga ukuba usebenzise i-XML.

Ngezantsi ndiza kunika eminye imizekelo eqhelekileyo yeesekethe ezakhiwe ngokungalunganga.

<roоt>
  <item name="name" value="John" />
  <item name="city" value="London" />
</roоt>

Apha sibona umzekelo wendlela engenasiseko nengaqhelekanga (nangona ixhaphake kakhulu) ukuzama ukuvakalisa isitshixo esilula sexabiso lesichazi-magama kwi-XML. Ukuba ususa zonke iithegi kunye neempawu, uya kusala nomqolo ongenanto. Ngokusisiseko, olu xwebhu, akukhathaliseki nokuba luvakala budenge kangakanani na, inkcazo yentsingiselo yomgca ongenanto.

<root name="John" city="London" />

Ukwenza izinto zibe mbi ngakumbi, asinalo nje inkcazo yesemantic yomtya ongenanto apha njengendlela egqithisileyo yokubonakalisa isichazi-magama - ngeli xesha "isichazi-magama" sifakwe kwiikhowudi ngokuthe ngqo njengeempawu zengcambu. Oku kwenza uluhlu olunikiweyo lwamagama ophawu loyelelwano kwinto engachazwanga kwaye iguquguqukayo. Ngaphaya koko, ibonisa ukuba wonke umbhali ebefuna ngenene ukuchaza isitshixo esilula sexabiso, kodwa endaweni yoko wenza isigqibo esingaqhelekanga sokusebenzisa i-XML, enyanzelisa ukusetyenziswa kwento enye engenanto nje njengesimaphambili sokusebenzisa i-syntax yophawu. Kwaye ndidibana namacebo anjalo rhoqo.

<roоt>
  <item key="name">John</item>
  <item key="city">London</item>
</roоt>

Le yinto engcono, kodwa ngoku ngenxa yesizathu esithile izitshixo ziyimethadatha kwaye amaxabiso awanjalo. Inkangeleko engaqhelekanga kakhulu kwizichazi-magama. Ukuba ususa zonke iithegi kunye neempawu, isiqingatha solwazi siya kulahleka.

Intetho echanekileyo yesichazi-magama kwi-XML inokujongeka ngolu hlobo:

<roоt>
  <item>
    <key>Name</key>
    <value>John</value>
  </item>
  <item>
    <key>City</key>
    <value>London</value>
  </item>
</roоt>

Kodwa ukuba abantu benze isigqibo esingaqhelekanga sokusebenzisa i-XML njengefomathi yedatha baze bayisebenzise ukulungelelanisa isigama, ngoko kufuneka baqonde ukuba oko bakwenzayo akufanelekanga kwaye akulula. Kuqhelekile ukuba abaqulunqi bakhethe ngempazamo i-XML ukwenza usetyenziso lwabo. Kodwa nangakumbi, benza izinto zibe mandundu ngakumbi ngokusebenzisa ngokungenantsingiselo i-XML kwenye yeefom ezichazwe ngasentla, bengayinanzi into yokuba i-XML ayifanelekanga oku.

Eyona Schema yeXML imbi? Ngendlela, ibhaso le esona schema sibi seXML endakha ndasibona, Ifumana ifomati yoqwalaselo yolungiselelo oluzenzekelayo lweefowuni zePolycom IP. Iifayile ezinjalo zifuna ukukhuphela iifayile zesicelo ze-XML nge-TFTP, ethi... Ngokubanzi, nantsi isicatshulwa kwenye ifayile enjalo:

<softkey
        softkey.feature.directories="0"
        softkey.feature.buddies="0"
        softkey.feature.forward="0"
        softkey.feature.meetnow="0"
        softkey.feature.redial="1"
        softkey.feature.search="1"

        softkey.1.enable="1"
        softkey.1.use.idle="1"
        softkey.1.label="Foo"
        softkey.1.insert="1"
        softkey.1.action="..."

        softkey.2.enable="1"
        softkey.2.use.idle="1"
        softkey.2.label="Bar"
        softkey.2.insert="2"
        softkey.2.action="..." />

Ayingomntu ohlekisayo lo. Kwaye oku ayisiyiyo into endiyiyileyo:

  • Iziqalelo zisetyenziswa nje njengesimaphambili sokuncamathelisa iimpawu, zona ngokwazo zinamagama anoluhlu.
  • Ukuba ufuna ukwabela amaxabiso kwimizekelo emininzi yohlobo oluthile lwerekhodi, kufuneka usebenzise amagama ophawu ukwenza oku. ezinezalathisi.
  • Ukongeza, iimpawu eziqala nge softkey., kufuneka zibekwe kwizinto <softkey/>, iimpawu eziqala nge feature., kufuneka zibekwe kwizinto <feature/> njl., nangona ikhangeleka ingayomfuneko ngokupheleleyo kwaye ekuqalekeni ayinantsingiselo.
  • Kwaye okokugqibela, ukuba ubunethemba lokuba icandelo lokuqala legama lophawu liyakuhlala lifana negama lesiqalelo-akukho nto injalo! Umzekelo, iimpawu up. kufuneka incanyathiselwe <userpreferences/>. Ulandelelwano lokuncamathisela amagama ophawu kwizinto azinamkhethe, phantse ngokupheleleyo.

Amaxwebhu okanye idatha. Ngalo lonke ixesha, umntu wenza into engaqhelekanga ngokuzama ukuthelekisa i-XML kunye ne-JSON-kwaye ngaloo ndlela ebonisa ukuba abaqondi nokuba abaqondi. I-XML lulwimi lophawu loxwebhu. I-JSON yifomathi yedatha eyakhiweyo, ngoko ke ukuthelekisa enye kwenye kufana nokuzama ukuthelekisa ukufudumala nokuthambileyo.

Ingqikelelo yomahluko phakathi amaxwebhu kunye nedatha. Njenge-analogue ye-XML, singathatha ngokwemiqathango uxwebhu olufundeka ngomatshini. Nangona yenzelwe ukuba ifundeke ngoomatshini, ibhekisa ngokwezekeliso kumaxwebhu, kwaye ukusuka kweli nqanaba lokujonga ngenene lithelekiseka namaxwebhu ePDF, ahlala engafundeki ngomatshini.

Umzekelo, kwi-XML ulandelelwano lweziqalelo lubalulekile. Kodwa kwi-JSON, ulungelelwaniso lwexabiso eliphambili kwixabiso phakathi kwezinto alunantsingiselo kwaye aluchazwanga. Ukuba ufuna ukufumana isichazi-magama esingacwangciswanga sesitshixo sexabiso lezibini, ulandelelwano oluyinyani apho iziqalelo zivela kulo fayile ayinamsebenzi. Kodwa ungenza iintlobo ezininzi ezahlukeneyo zedatha kule datha. yamaxwebhu, kuba kukho ulandelelwano oluthile kuxwebhu. Ngokwezekeliso, kuyafana noxwebhu olusephepheni, nangona lungenamlinganiselo womzimba, ngokungafaniyo noshicilelo okanye ifayile yePDF.

Umzekelo wam womelo olufanelekileyo lwesichazi-magama lwe-XML ubonisa ulandelelwano lweziqalelo kwisichazi-magama, ngokuchaseneyo nomelo lwe-JSON. Andikwazi ukuwuhoya olu lungelelwaniso: olu luhlu luhambelana nemodeli yoxwebhu kunye nefomathi ye-XML. Abanye basenokukhetha ukungawuhoyi lo myalelo xa betolika olu xwebhu lwe-XML, kodwa akukho sizathu sokuxoxa malunga noku kuba umba ungaphaya kwemida yengxoxo yefomathi ngokwayo. Ngaphezu koko, ukuba wenza uxwebhu lubukeke kwisikhangeli ngokuncamathisela i-cascading style sheet kuyo, uya kubona ukuba iziqalelo zesichazi-magama zivela ngolandelelwano oluthile kwaye alukho olunye.

Ngamanye amazwi, isichazi-magama (isiqwenga sedatha eyakhiweyo) sinokuguqulwa sibe n amaxwebhu ahlukeneyo anokwenzeka (kwi-XML, PDF, iphepha, njl.), apho n - inani lemidibaniso enokubakho yezinto kwisichazi-magama, kwaye asikazithatheli ngqalelo ezinye iinguqu ezinokubakho.

Nangona kunjalo, kukwalandela ukuba ukuba ufuna ukudlulisa idatha kuphela, ngoko ukusebenzisa uxwebhu olufundeka ngomatshini kule nto aluyi kusebenza. Isebenzisa imodeli, kule meko ingaphezu kwamandla; Ukongeza, ukuze ukhuphe idatha yomthombo, kuya kufuneka ubhale inkqubo. Akukho sizathu sokusebenzisa i-XML into engayi kufomathwa njengoxwebhu ngaxa lithile (yithi, usebenzisa i-CSS okanye i-XSLT, okanye zombini), kuba isesona sizathu (ukuba asisiso kuphela) sokubambelela kwimodeli yoxwebhu.

Ngaphezu koko, ekubeni i-XML ingenayo ingqiqo yamanani (okanye iintetho ze-Boolean, okanye ezinye iindidi zedatha), onke amanani amelwe kule fomati athathwa njengesicatshulwa esongezelelweyo. Ukukhupha idatha, i-schema kunye nobudlelwane bayo kwidatha ehambelanayo echazweyo kufuneka yaziwe. Kwakhona kufuneka wazi ukuba nini, ngokusekelwe kumxholo, into ethile yokubhaliweyo imele inani kwaye kufuneka iguqulelwe kwinani, njl.

Ngaloo ndlela, inkqubo yokukhupha idatha kumaxwebhu e-XML ayahlukanga kangako kwinkqubo yokuqaphela amaxwebhu askeniweyo aqulethe, umzekelo, iitafile ezenza amaphepha amaninzi edatha yamanani. Ewe, kunokwenzeka ukwenza oku ngokomgaqo, kodwa oku akuyona indlela efanelekileyo kakhulu, ngaphandle njengendawo yokugqibela, xa kungekho ezinye iindlela. Isisombululo esinengqiqo kukufumana nje ikopi yedijithali yedatha yoqobo engafakwanga kwimodeli yoxwebhu oludibanisa idatha kunye nokubonakaliswa kwayo okubhaliweyo.

Oko kuthethiweyo, ayindothusi kwaphela into yokuba i-XML idumile kwishishini. Isizathu salokhu ngokuchanekileyo ukuba ifomathi yoxwebhu (ephepheni) iyaqondakala kwaye iqhelekile kwishishini, kwaye bafuna ukuqhubeka nokusebenzisa imodeli eqhelekileyo kwaye iyaqondakala. Ngesizathu sinye, amashishini ahlala esebenzisa amaxwebhu ePDF endaweni yeefomathi ezifundeka ngoomatshini- kuba asabotshelelwe kumbono wephepha eliprintiweyo elinobungakanani obuthile bomzimba. Oku kusebenza nakumaxwebhu ekungenakwenzeka ukuba angaze aprintwe (umzekelo, iPDF enamaphepha angama-8000 yamaxwebhu obhaliso). Ukusuka kulo mbono, ukusetyenziswa kwe-XML kwishishini ngokuyimfuneko kukubonakalisa i-skeuomorphism. Abantu bayayiqonda ingcamango engokomfanekiso yephepha eliprintiweyo lobungakanani obulinganiselweyo, kwaye bayayiqonda indlela yokwenza iinkqubo zoshishino ezisekelwe kumaxwebhu ashicilelweyo. Ukuba eso sisikhokelo sakho, amaxwebhu angenamlinganiselo wobungakanani bomzimba afundeka ngoomatshini—amaxwebhu e-XML—abonisa inguqulelo entsha ngeli lixa liqabane eliqhelekileyo nelikhululekileyo kuxwebhu. Oku akubathinteli ekubeni bahlale bengachanekanga kwaye begqithise indlela yokubonisa i-skeuomorphic yokubonisa idatha.

Ukuza kuthi ga ngoku, ekuphela kwee-schema ze-XML endizaziyo endinokuthi ngokwenene ndibize ukusetyenziswa okusebenzayo kwefomathi yi-XHTML kunye ne-DocBook.

umthombo: www.habr.com

Yongeza izimvo