XML had iyo jeer si xun ayaa loo isticmaalaa

XML had iyo jeer si xun ayaa loo isticmaalaa
Luuqada XML waxa la alifay 1996kii. Isla markiiba waxay u muuqatay suurtogalnimada codsigeeda mar horeba waxay bilaabeen in si khaldan loo fahmo, iyo ujeedooyinka ay isku dayayaan inay la qabsadaan, ma ahayn doorashada ugu fiican.

Ma aha buunbuunin in la yiraahdo in badan oo ka mid ah qorshayaasha XML ee aan arkay ay yihiin kuwo aan habboonayn ama aan sax ahayn isticmaalka XML. Waxaa intaa dheer, isticmaalka XML wuxuu muujiyay faham la'aanta aasaasiga ah ee waxa XML ku saabsan yahay.

XML waa luqad calaamadeysan. Kani maaha qaab xog. Inta badan qorshayaasha XML ayaa si cad u ilduufay kala duwanaanshahan, iyaga oo ku jahawareersan XML qaab xogta, taas oo ugu dambeyntii keenta qalad ah doorashada XML sababtoo ah waa qaabka xogta ee dhab ahaantii loo baahan yahay.

Adigoon tafaasiil badan gelin, XML waxa ay ku habboon tahay in la qeexo blocks of text oo leh qaab dhismeed iyo xog badan. Haddii yoolkaaga ugu weyn uusan ahayn inaad ku shaqeyso qoraal, doorashada XML uma badna in la caddeeyo.

Marka laga eego aragtidan, waxaa jira hab fudud oo lagu hubinayo sida ugu wanaagsan ee loo sameeyay qorshaha XML. Aan tusaale u soo qaadano dukumeenti ku jira schema loogu talo galay oo aan ka saarno dhammaan tagsyada iyo sifooyinka. Haddii waxa ka hadhay aanu macno samaynayn (ama haddii uu jiro khad madhan), markaas ama qorshahaagu maaha mid si sax ah loo dhisay ama ma ahayn in aad isticmaasho XML.

Hoos waxaan ku siin doonaa qaar ka mid ah tusaalooyinka ugu caansan ee wareegyada sida khaldan loo dhisay.

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

Halkan waxaan ku aragnaa tusaale aan sal iyo raad lahayn oo qariib ah (inkasta oo aad u badan) isku dayga lagu muujinayo qaamuuska qiimaha muhiimka ah ee XML. Haddii aad meesha ka saarto dhammaan tagsyada iyo sifaadka, waxa lagu dayn doonaa saf maran. Asal ahaan, dukumeentigani, si kasta oo uu u dhawaaqi karo waa caqli-gal, sharraxaad macne ah oo xariiq madhan ah.

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

Taas waxaa ka sii daran, kuma hayno sharraxaad semantic ah oo xadhig madhan halkan si aan xad lahayn oo qaamuuska loo muujiyo - markan "qaamuuska" si toos ah ayaa loogu habeeyey sifada curiyaha xididka. Tani waxay ka dhigaysaa magacyada sifada la bixiyay ee shay aan la qeexin oo firfircoon. Intaa waxaa dheer, waxay muujineysaa in dhammaan qoraaga runtii rabay inuu muujiyo inay ahayd hal-abuur qiimo-fudud ah, laakiin taa beddelkeeda wuxuu qaatay go'aanka gabi ahaanba la yaab leh ee lagu dabaqi karo XML, isagoo ku qasbay adeegsiga hal shay oo madhan si fudud horgale si loo isticmaalo syntax sifada. Waxaan la kulmaa qorshayaashan oo kale marar badan.

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

Tani waa wax ka fiican, laakiin hadda sabab qaar ka mid ah furayaashu waa metadata iyo qiyamku maaha. Muuqaal aad u yaab badan oo qaamuusyada. Haddii aad ka saarto dhammaan calaamadaha iyo sifooyinka, kala badh macluumaadka ayaa lumi doona.

Qaamuuska saxda ah ee XML wuxuu u ekaan doonaa sidan:

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

Laakiin haddii dadku ay sameeyeen go'aan la yaab leh si ay u isticmaalaan XML qaab xogta ka dibna u isticmaalaan si ay u habeeyaan erayada, markaa waa inay fahmaan in waxa ay sameynayaan ay tahay mid aan habboonayn oo aan ku habboonayn. Sidoo kale waa wax caadi u ah naqshadeeyayaasha inay si khaldan u doortaan XML si ay u abuuraan codsiyadooda. Laakiin xitaa marar badan, waxay ka sii daraan arrimaha iyagoo si macno darro ah u isticmaalaya XML mid ka mid ah foomamka kor lagu sharraxay, iyaga oo iska indhatiraya xaqiiqda ah in XML uusan ku habboonayn tan.

Qorshaha XML ee ugu xun? By habka, abaalmarinta loogu talagalay Qorshaha XML ee ugu xumaa ee aan abid arko, Waxay helaysaa qaabka faylka qaabaynta wax bixinta tooska ah ee Polycom IP-ga telefoonada. Faylasha noocaan ah waxay u baahan yihiin soo dejinta codsiyada XML iyada oo loo sii marayo TFTP, kaas oo... Guud ahaan, halkan waa qayb ka mid ah faylkaas:

<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="..." />

Tani maaha qof kaftankiisa xun. Kani maaha hal-abuurkayga:

  • curiyayaasha waxa si fudud loo isticmaalaa horgale ahaan si loogu lifaaqo sifooyin, kuwaas oo laftoodu leh magacyo kala sareyn.
  • Haddii aad rabto inaad ku meelayso qiyamka dhacdooyin badan oo nooc gaar ah oo rikoodh ah, waa inaad isticmaashaa magacyo sifo si tan loo sameeyo. kuwaas oo leh tusmooyin.
  • Intaa waxaa dheer, sifooyinka laga bilaabo softkey., waa in lagu dhejiyaa curiyeyaasha <softkey/>, sifooyinka laga bilaabo feature., waa in lagu dhejiyaa curiyeyaasha <feature/> iwm, inkastoo xaqiiqda ah in ay u muuqato mid gebi ahaanba aan loo baahnayn oo marka hore jaleecada aan macno lahayn.
  • Ugu dambeyntiina, haddii aad rajaynaysay in qaybta ugu horreysa ee magaca sifada ay had iyo jeer la mid noqoto magaca curiyaha - wax la mid ah ma jiro! Tusaale ahaan, sifooyinka up. waa in lagu dhejiyaa <userpreferences/>. Sida loo kala xigto magacyada sifada canaasirta waa mid aan sabab lahayn, ku dhawaad ​​gebi ahaanba.

Dukumentiyada ama xogta. Mar kasta, qof ayaa sameeya shay gabi ahaanba la yaab leh isaga oo isku dayaya inuu isbarbar dhigo XML iyo JSON - oo markaa muujinaya inaysan midkoodna fahmin. XML waa luqad calaamadeyn dukumeenti. JSON waa qaab xogta habaysan, markaa isbarbardhigga iyaga midba midka kale wuxuu la mid yahay in la isku dayo in la barbardhigo diirran iyo jilicsan.

Fikradda farqiga u dhexeeya dukumentiyada iyo xogta. Anagoo ah XML, waxaan shuruud ahaan u qaadan karnaa dukumeenti lagu akhriyi karo mashiinka. Inkasta oo loogu talagalay in lagu akhriyo mashiinka, haddana waxay tixraacaysaa dukumentiyada, marka laga eego aragtidan dhab ahaantii waxay la mid tahay dukumentiyada PDF, kuwaas oo aan inta badan mashiinka akhrin karin.

Tusaale ahaan, XML siday u kala horreeyaan curiyayaasha waa arrin. Laakin JSON gudaheeda, siday u kala horreeyaan lammaane-qiimaha muhiimka ah ee walxaha ku jira waa kuwo aan macno lahayn oo aan la qeexin. Haddii aad rabto in aad hesho qaamuuska aan la dalban ee lammaane-qiimaha muhiimka ah, nidaamka dhabta ah ee ay curiyayaasha ka soo baxaan faylkaas macno ma laha. Laakiin waxaad samayn kartaa noocyo badan oo xog ah oo kala duwan xogtan. ee dukumiintiyada, sababtoo ah waxaa jira nidaam gaar ah dukumeentiga. Sarbeeb ahaan, waxay la mid tahay dukumeenti warqad ku qoran, in kasta oo aanu lahayn cabbir jireed, oo ka duwan fayl daabacan ama PDF ah.

Tusaalahayga matalaada qaamuuska saxda ah ee XML waxay tusinaysaa siday u kala horeeyaan qaybaha qaamuuska, oo ka soo horjeeda matalaada JSON. Ma iska indho tiri karo amarkan: toosnaantani waxay ku dhex jirtaa qaabka dukumeentiga iyo qaabka XML. Qaar ayaa laga yaabaa inay doortaan inay iska indhatiraan amarka marka ay turjumayaan dukumeentiga XML, laakiin ma jirto wax macno ah in laga doodo tan maadaama arrintu ka baxsan tahay baaxadda dooda qaabka laftiisa. Intaa waxaa dheer, haddii aad ka dhigto dukumeentiga mid lagu arki karo browserka adiga oo ku dhejinaya xaashida qaabka cascading, waxaad arki doontaa in qaybaha qaamuuska ay u muuqdaan nidaam gaar ah oo aan mid kale lahayn.

Si kale haddii loo dhigo, qaamuuska (qayb xog habaysan) ayaa loo rogi karaa n dukumeenti suurtagal ah oo kala duwan (XML, PDF, warqad, iwm.), halka n - tirada isku-dhafka suurtagalka ah ee curiyeyaasha qaamuuska, welina ma aanaan xisaabtamin doorsoomayaasha kale ee suurtagalka ah.

Si kastaba ha noqotee, waxay sidoo kale raacdaa haddii aad rabto inaad ku wareejiso xogta kaliya, ka dib isticmaalka dukumeenti la akhriyi karo mashiinka tani ma noqon doonto mid waxtar leh. Waxay isticmaashaa moodal, kaas oo kiiskani yahay mid aad u sarreeya; kaliya waxay geli doontaa jidka. Intaa waxaa dheer, si loo soo saaro xogta isha, waxaad u baahan doontaa inaad qorto barnaamij. Ma jirto wax dhibco ah oo loo isticmaalo XML wax aan loo qaabayn doonin dukumeenti ahaan mar mar ( dheh, adoo isticmaalaya CSS ama XSLT, ama labadaba), sababtoo ah taasi waa sababta ugu weyn (haddii aysan ahayn kaliya) sababta sidaas loo sameeyo. qaabka dukumentiga.

Waxaa intaa dheer, maadaama XML uusan lahayn fikradda tirooyinka (ama tibaaxaha Boolean, ama noocyada kale ee xogta), dhammaan tirooyinka lagu soo bandhigay qaabkan waxaa loo tixgeliyaa kaliya qoraal dheeraad ah. Si loo soo saaro xogta, qorshaha iyo xidhiidhka uu la leeyahay xogta u dhiganta ee la muujinayo waa in la ogaadaa. Waxa kale oo aad u baahan tahay inaad ogaato marka, iyada oo ku saleysan macnaha guud, cutub gaar ah oo qoraal ahi uu matalo tiro oo ay tahay in loo beddelo lambar, iwm.

Haddaba, habka soo saarista xogta dukumeentiyada XML aad ugama duwana habka lagu aqoonsanayo dukumentiyada la sawiray ee ay ku jiraan, tusaale ahaan, jaantusyada samaynta bogag badan oo xog tirooyin ah. Haa, waa suurtogal in tan la sameeyo mabda'a, laakiin tani maaha habka ugu wanaagsan, marka laga reebo habka ugu dambeeya, marka aysan jirin wax ikhtiyaari ah oo kale. Xalka macquulka ah waa in si fudud loo helo nuqulka dhijitaalka ah ee xogta asalka ah oo aan ku dhex jirin qaabka dukumeentigu isku daray xogta iyo matalaad gaar ah oo qoraal ah.

Taasi waxay tidhi, igama yaabin in XML uu caan ku yahay ganacsiga. Sababta tani waa si sax ah in qaabka dukumeentigu (warqad) uu yahay mid la fahmi karo oo la yaqaan ganacsiga, waxayna rabaan inay sii wadaan isticmaalka qaab la yaqaan oo la fahmi karo. Isla sababtaas awgeed, ganacsiyadu inta badan waxay isticmaalaan dukumeenti PDF halkii ay ka isticmaali lahaayeen qaabab badan oo mashiinka-akhris ah - sababtoo ah waxay weli ku xiran yihiin fikradda bog daabacan oo leh cabbir jireed oo gaar ah. Tani waxay xitaa khusaysaa dukumeenti aan loo badnayn in weligood la daabici karo (tusaale, 8000-bog PDF ah dukumeenti diiwaanka). Marka laga eego aragtidan, isticmaalka XML ee ganacsiga ayaa asal ahaan muujinaya skeuomorphism. Dadku waxay fahmaan fikradda sarbeebaha ee bogga daabacan ee cabbirka xaddidan, waxayna fahmaan sida loo abuuro habab ganacsi oo ku salaysan dukumentiyada daabacan. Hadday taasi tahay hagahaaga, dukumeenti aan lahayn xaddidaad cabbir jidheed oo mashiinka-lagu akhriyi karo - dukumeenti XML-waxay ka dhigan yihiin hal-abuurnimo iyadoo la yahay dukumeenti la yaqaan oo raaxo leh. Tani kama diidayso inay ku sii jiraan qaab khaldan oo xad dhaaf ah oo ay xogta u soo bandhigaan.

Ilaa hadda, qorshayaasha XML kaliya ee aan ogahay taas oo aan runtii wici karo isticmaalka saxda ah ee qaabka waa XHTML iyo DocBook.

Source: www.habr.com

Add a comment