{"id":52640,"date":"2019-11-13T00:00:00","date_gmt":"2019-11-12T21:00:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/blog_prohoster\/xml-prakticheski-vsegda-primenyaetsya-ne-po-naznacheniyu"},"modified":"2020-02-18T14:00:25","modified_gmt":"2020-02-18T11:00:25","slug":"xml-prakticheski-vsegda-primenyaetsya-ne-po-naznacheniyu","status":"publish","type":"post","link":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/xml-prakticheski-vsegda-primenyaetsya-ne-po-naznacheniyu","title":{"rendered":"XML-i kasutatakse praktiliselt alati valesti","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"XML-i kasutatakse praktiliselt alati valesti\" src=\"\/wp-content\/uploads\/2019\/11\/8152077415a94ef74806af230ef44bd7.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nXML-i keel leiutati 1996. aastal. Peaaegu kohe p\u00e4rast selle ilmumist hakkasid inimesed selle rakendamise v\u00f5imalusi valesti m\u00f5istma ning selleks, mille jaoks seda prooviti kohandada, ei olnud see parim valik.<\/p>\n<p>Ei oleks \u00fclem\u00e4\u00e4rane \u00f6elda, et enamik XML-skeeme, mida olen n\u00e4inud, kujutas endast m\u00f5ttetut v\u00f5i vale XML-i kasutamist. Veelgi enam, selline XML-i rakendamine n\u00e4itas p\u00f5hjalikku arusaamatust selle kohta, millega XML eelk\u00f5ige on.<\/p>\n<p>XML on m\u00e4rgistuskeel. <b>See ei ole andmevorming<\/b>. Enamikus XML-skeemides seda eristust selgelt ei arvestatud, segades XML-i andmevorminguga, mis l\u00f5ppkokkuv\u00f5ttes t\u00e4hendas, et XML-i valik ise oli vale, kuna tegelikult oli vajalik just andmevorming.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nIlma detailidesse laskumata sobib XML k\u00f5ige paremini struktureeritud teksti ja metaandmetega plokkide annotatsiooniks. Kui teie peamine \u00fclesanne ei ole t\u00f6\u00f6tada tekstiplokiga, ei pruugi XML-i valik olla p\u00f5hjendatud.<\/p>\n<p>Sellest vaatepunktist on lihtne viis kontrollida, kui h\u00e4sti on XML-skeem koostatud. V\u00f5tame n\u00e4iteks dokumendi eeldatavas skeemis ja eemaldame k\u00f5ik sildid ja atribuudid. Kui j\u00e4\u00e4b midagi m\u00f5tetust (v\u00f5i kui j\u00e4\u00e4b t\u00fchi rida), siis on kas teie skeem valesti koostatud v\u00f5i ei olnud XML-i kasutamine lihtsalt otstarbekas.<\/p>\n<p>Edasi toon m\u00f5ned k\u00f5ige sagedamini esinevad valesti koostatud skeemide n\u00e4ited.<\/p>\n<pre><code class=\"xml\"><\/code><\/pre>\n<p>\nSiin n\u00e4eme p\u00f5hjendamata ja kummalist (kuigi \u00fcsna levinud) katset v\u00e4ljendada XML-i keeles lihtsat s\u00f5nastikku \u00abv\u00f5ti-v\u00e4\u00e4rtus\u00bb. Kui eemaldada k\u00f5ik sildid ja atribuudid, j\u00e4\u00e4b t\u00fchi rida. Tegelikult esindab see dokument \u2014 kui absurdne see ka ei tunduks \u2014 semantilist annotatsiooni t\u00fchi rida.<\/p>\n<pre><code class=\"xml\">&lt;root name=\"John\" city=\"London\" \/&gt;<\/code><\/pre>\n<p>\nMiski veel hullem, meil pole siin lihtsalt semantilist annotatsiooni t\u00fchjast reast kui ekstsentriline viis s\u00f5navara v\u00e4ljendamiseks \u2014 seekord on \u201es\u00f5navara\u201c otseselt kodeeritud juuri elementide atribuutidena. Seet\u00f5ttu muutub m\u00e4\u00e4ratletud atribuutide nimede kogum elemendil m\u00e4\u00e4ramatuks ja d\u00fcnaamiliseks. Veelgi enam, siit on n\u00e4ha, et k\u00f5ik, mida autor tegelikult v\u00e4ljendada soovis, on lihtne s\u00fcntaks \u201ev\u00f5ti-v\u00e4\u00e4rtus\u201c, kuid selle asemel valis ta t\u00e4iesti kummalise lahenduse, rakendades XML-i, sundides kasutama \u00fchte t\u00fchja elementi lihtsalt atribuutide s\u00fcntaksi eelseisjana. Ja selliste skeemidega kohtan ma v\u00e4ga tihti.<\/p>\n<pre><code class=\"xml\">John\n  London<\/code><\/pre>\n<p>\nSee on juba m\u00f5nev\u00f5rra parem, kuid n\u00fc\u00fcd on v\u00f5tmed mingil p\u00f5hjusel metaandmed, mitte v\u00e4\u00e4rtused. \u00dcsna kummaline vaade s\u00f5nastikele. Kui eemaldada k\u00f5ik sildid ja atribuudid, kaob pool teabest.<\/p>\n<p>S\u00f5nastiku \u00f5ige v\u00e4ljendus XML-is n\u00e4eks v\u00e4lja umbes nii:<\/p>\n<pre><code class=\"xml\">Nimi\n    John\n  \n  \n    Linn\n    London<\/code><\/pre>\n<p>\nKuid kui inimesed otsustavad kummaliselt kasutada XML-i andmevorminguna ning korraldada s\u00f5nastikku selle abil, peavad nad aru saama, et see, mida nad teevad, ei ole sobiv ega mugav. Tihti valivad projekteerijad valesti XML-i oma rakenduste loomiseks. Veelgi tihedamini s\u00fcvendavad nad olukorda m\u00f5ttetute XML-i rakendustega \u00fches \u00fclaltoodud vormis, ignoreerides asjaolu, et XML ei sobi selleks lihtsalt.<\/p>\n<p><b>Halvim XML-i skeem?<\/b> Muide, auhind <i>halvima XML-i skeemi eest, mida mul on olnud v\u00f5imalus n\u00e4ha,<\/i> minna konfiguratsioonifaili formaadi juurde, mis on m\u00f5eldud IP-telefonide Polycom automaatseks ressursijagamiseks. Sellised failid n\u00f5uavad TFTP kaudu XML-p\u00e4ringufailide laadimist, mis... Kokkuv\u00f5ttes, siin on l\u00f5ik \u00fchest sellisest failist:<\/p>\n<pre><code class=\"xml\">&lt;softkey\n        softkey.feature.directories=\"0\"\n        softkey.feature.buddies=\"0\"\n        softkey.feature.forward=\"0\"\n        softkey.feature.meetnow=\"0\"\n        softkey.feature.redial=\"1\"\n        softkey.feature.search=\"1\"\n\n        softkey.1.enable=\"1\"\n        softkey.1.use.idle=\"1\"\n        softkey.1.label=\"Foo\"\n        softkey.1.insert=\"1\"\n        softkey.1.action=\"...\"\n\n        softkey.2.enable=\"1\"\n        softkey.2.use.idle=\"1\"\n        softkey.2.label=\"Bar\"\n        softkey.2.insert=\"2\"\n        softkey.2.action=\"...\" \/&gt;<\/code><\/pre>\n<p>\nSee ei ole kellegi naljakas nali. Ja see ei ole ka minu v\u00e4ljam\u00f5eldis:<\/p>\n<ul>\n<li>elemendid kasutatakse lihtsalt prefiksina atribuutide lisamiseks, mis omavad hierarhilisi nimesid.\n<\/li>\n<li>Kui on vajalik lisada v\u00e4\u00e4rtusi mitmele rekordite eksemplarile, tuleb kasutada atribuutide nimesid, <i>millel on indeksid<\/i>.\n<\/li>\n<li>Lisaks sellele tuleb atribuudid, mis algavad <code>softkey.<\/code>paigutada elementidele <code>&lt;softkey\/&gt;<\/code>ja atribuudid, mis algavad <code>feature.<\/code>paigutada elementidele <code>&lt;feature\/&gt;<\/code> jne., kuigi see n\u00e4eb v\u00e4lja t\u00e4iesti liialdatud ja esmapilgul m\u00f5ttetu.\n<\/li>\n<li>Ja l\u00f5puks, kui lootsite, et atribuutide nime esimene komponent sobib alati elemendi nimega \u2014 ei! N\u00e4iteks atribuudid <code>up.<\/code> peavad olema seotud <code>&lt;userpreferences\/&gt;<\/code>. Atribuutide nimede kinnitamise kord on vabalt valitud ja praktiliselt t\u00e4ielik.\n<\/li>\n<\/ul>\n<p>\n<b>Dokumendid v\u00f5i andmed<\/b>. \u00dcksikute isikute poolt aeg-ajalt tehakse t\u00e4iesti kummalisi asju, p\u00fc\u00fcdes v\u00f5rrelda XML-i ja JSON-i \u2014 sellega n\u00e4idates, et ei m\u00f5ista kumbagi. XML on dokumentide m\u00e4rgistuskeel. JSON on aga struktuurse andmeformaadi kujul, nii et nende omavaheline v\u00f5rdlemine on sama, mis p\u00fc\u00fcda v\u00f5rrelda sooja k\u00fclmaga.<\/p>\n<p>Sellesse arusaamisse aitab m\u00f5isted dokumentide ja <i>andmete erinevus<\/i>. XML-i analoogina v\u00f5ib soovitada masinloetavat dokumenti. Kuigi see on m\u00f5eldud masinaga lugemiseks, kuulub see metafooriliselt dokumentide hulka ning sellelt vaatenurgalt on see tegelikult v\u00f5rreldav PDF formaadi dokumentidega, mis enamasti ei ole masinloetavad. <\/p>\n<p>N\u00e4iteks XML-is on elementide j\u00e4rjekord oluline. JSON-is aga paaride \u00abv\u00f5ti-v\u00e4\u00e4rtus\u00bb j\u00e4rjekord objektides ei oma t\u00e4hendust ja ei ole m\u00e4\u00e4ratletud. Kui soovite saada j\u00e4rjekorrast s\u00f5ltumatut s\u00f5nastikku \u00abv\u00f5ti-v\u00e4\u00e4rtus\u00bb paaridest, siis elementide tegelik j\u00e4rjekord selles failis ei ole oluline. Kuid v\u00f5ite nende andmete p\u00f5hjal luua palju erinevaid <i>dokumente<\/i>, kuna dokumendis on m\u00e4\u00e4ratud teatud j\u00e4rjekord. Metaforina on see sarnane paberil dokumendile, kuigi tal ei ole f\u00fc\u00fcsilisi m\u00f5\u00f5te, erinevalt v\u00e4ljaprintimisest v\u00f5i PDF-failist.<\/p>\n<p>Minu n\u00e4ites XML-keeles s\u00f5naraamatu \u00f5igest esitamisest on n\u00e4idatud elementide j\u00e4rjekord, mis erineb JSON-i esitamisest. Ma ei saa seda j\u00e4rjekorda eirata: selline joonelisus on algselt dokumentide mudelile ja XML-formaadile omane. Keegi v\u00f5ib selle XML-dokumendi t\u00f5lgendamisel otsustada j\u00e4rjekorda ignoreerida, kuid selle \u00fcle vaielda on m\u00f5ttetu, kuna see k\u00fcsimus \u00fcletab arutelu ise formaadi \u00fcle. Veelgi enam, kui muuta dokument brauseris n\u00e4htavaks, lisades sellele kaskaadse stiilitabele, saab n\u00e4ha, et s\u00f5naraamatu elemendid j\u00e4rgivad kindlat j\u00e4rjekorda, mitte mingis muus.<\/p>\n<p>Teisis\u00f5nu, s\u00f5naraamat (struktureeritud andmete fragment) v\u00f5ib olla muudetud <i>n<\/i> erinevatesse v\u00f5imalikesse dokumentidesse (XML, PDF, paberil jne), kus <i>n<\/i> \u2014 elementide v\u00f5imalike kombinatsioonide arv s\u00f5naraamatus, ja see on veel enne teiste v\u00f5imalike muutujate arvessev\u00f5tmist.<\/p>\n<p>Samasugusel juhul on vaja arvesse v\u00f5tta, et andmete edastamiseks ei oleks masinatoetava dokumendi kasutamine efektiivne. Sellisel juhul on mudel \u00fcleliigne ja takistab edasist t\u00f6\u00f6d. Lisaks, et algandmeid v\u00e4lja t\u00f5mmata, tuleb kirjutada programm. Kahtlemata ei ole m\u00f5tet kasutada XML-formaati millegi jaoks, mille puhul mingil hetkel ei kujundata dokumenti (n\u00e4iteks CSS-i v\u00f5i XSLT abil, v\u00f5i nende kombinatsiooniga), kuna just see on peamine (kui mitte ainus) p\u00f5hjus dokumentide mudeli j\u00e4rgimiseks.<\/p>\n<p>Veelgi enam, kuna XML-is ei ole numbrite, booleanide ega muude andmet\u00fc\u00fcpide m\u00f5istet, peetakse k\u00f5ik selle formaadis esitatud numbreid lihtsalt t\u00e4iendavaks tekstiks. Andmete v\u00e4ljat\u00f5mbamiseks peab olema teada skeem ja selle seosed vastava v\u00e4ljendatud andmega. Samuti tuleb m\u00f5ista, millal konteksti p\u00f5hjal esindab teatud tekstielement numbrit, ning see tuleb konverteerida numbriks jne.<\/p>\n<p>Seega ei erine andmete ekstraheerimise protsess XML-dokumentidest oluliselt protsessist, mis k\u00e4sitleb skaneeritud dokumentide tuvastamist, mis sisaldavad n\u00e4iteks tabelite kujul mitmelehek\u00fcljelist numbrilist teavet. Jah, see on p\u00f5him\u00f5tteliselt v\u00f5imalik, kuid see ei ole k\u00f5ige optimaalsem l\u00e4henemine \u2014 v\u00e4lja arvatud \u00e4\u00e4rmuslikel juhtudel, kui ei ole muid v\u00f5imalusi. M\u00f5istlik lahendus on leida digitaalne koopia algsetest andmetest, mis pole dokumendi mudelisse integreeritud, kus andmed on kokku pandud nende konkreetse tekstilise esitusega.<\/p>\n<p>Ei \u00fcllata mind \u00fcldse, et XML on ettev\u00f5tluses populaarne. Selle p\u00f5hjuseks on just see, et dokumendi formaat (paberil) on \u00e4ritegevuses arusaadav ja tuttav ning soovitakse j\u00e4tkata tuttava ja selge mudeli kasutamist. Sama p\u00f5hjus on ka see, miks \u00e4ri maailmas kasutatakse liiga sageli PDF-dokumente, mitte masinatega t\u00f6\u00f6tlemiseks sobivamaid formaate \u2014 sest nad on endiselt seotud tr\u00fckitud lehe m\u00f5istega, millel on kindel f\u00fc\u00fcsiline suurus. See kehtib isegi nende dokumentide kohta, mida t\u00f5en\u00e4oliselt kunagi ei tr\u00fckita (n\u00e4iteks 8000-lehek\u00fcljeline registridokumendi PDF-fail). Selles m\u00f5ttes on XML-i kasutamine ettev\u00f5tluses oma olemuselt skevomorfism. Inimestele on arusaadav tr\u00fckitud lehe piiratud suuruse metafooriline idee ja nad m\u00f5istavad, kuidas luua \u00e4riprotsesse tr\u00fckitud dokumentide p\u00f5hjal. Kui see on teie suund, siis dokumendid, millel ei ole piiratud f\u00fc\u00fcsilist suurust ja mis on masinloetavad \u2014 XML-dokumendid \u2014 esindavad innovatsiooni, olles samal ajal tuttav ja mugav dokumentide analoog. Mis ei takista neil j\u00e4\u00e4mast vale ja liialt skevomorfiliseks andmete esitamise viisiks.<\/p>\n<p>Praegu on ainsad teadaolevad XML-skeemid, mida ma t\u00f5eliselt \u00f5igeks rakenduseks pean, XHTML ja DocBook.<br \/>\n<br \/>Allikas: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/mailru\/blog\/475474\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u042f\u0437\u044b\u043a XML \u0431\u044b\u043b \u0438\u0437\u043e\u0431\u0440\u0435\u0442\u0435\u043d \u0432 1996 \u0433\u043e\u0434\u0443. \u0415\u0434\u0432\u0430 \u043e\u043d \u0443\u0441\u043f\u0435\u043b \u043f\u043e\u044f\u0432\u0438\u0442\u044c\u0441\u044f, \u043a\u0430\u043a \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0435\u0433\u043e \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0443\u0436\u0435 \u043d\u0430\u0447\u0430\u043b\u0438 \u043f\u043e\u043d\u0438\u043c\u0430\u0442\u044c \u043d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e, \u0438 \u0434\u043b\u044f \u0442\u0435\u0445 \u0446\u0435\u043b\u0435\u0439, \u043a \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0435\u0433\u043e \u043f\u044b\u0442\u0430\u043b\u0438\u0441\u044c \u0430\u0434\u0430\u043f\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c, \u043e\u043d \u0431\u044b\u043b \u043d\u0435 \u043b\u0443\u0447\u0448\u0438\u043c \u0432\u044b\u0431\u043e\u0440\u043e\u043c. \u041d\u0435 \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u0435\u0443\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u0438\u0435\u043c \u0441\u043a\u0430\u0437\u0430\u0442\u044c, \u0447\u0442\u043e \u043f\u043e\u0434\u0430\u0432\u043b\u044f\u044e\u0449\u0435\u0435 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e \u0441\u0445\u0435\u043c XML, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043d\u0435 \u0434\u043e\u0432\u043e\u0434\u0438\u043b\u043e\u0441\u044c \u0432\u0438\u0434\u0435\u0442\u044c, \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u043b\u0438 \u0441\u043e\u0431\u043e\u0439 \u043d\u0435\u0446\u0435\u043b\u0435\u0441\u043e\u043e\u0431\u0440\u0430\u0437\u043d\u043e\u0435 \u0438\u043b\u0438 \u043d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 XML. \u0411\u043e\u043b\u0435\u0435 \u0442\u043e\u0433\u043e, [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":52641,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-52640","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u042f\u0437\u044b\u043a XML \u0431\u044b\u043b \u0438\u0437\u043e\u0431\u0440\u0435\u0442\u0435\u043d \u0432 1996 \u0433\u043e\u0434\u0443. \u0415\u0434\u0432\u0430 \u043e\u043d \u0443\u0441\u043f\u0435\u043b \u043f\u043e\u044f\u0432\u0438\u0442\u044c\u0441\u044f, \u043a\u0430\u043a \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0435\u0433\u043e \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0443\u0436\u0435 \u043d\u0430\u0447\u0430\u043b\u0438 \u043f\u043e\u043d\u0438\u043c\u0430\u0442\u044c \u043d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e, \u0438 \u0434\u043b\u044f \u0442\u0435\u0445 \u0446\u0435\u043b\u0435\u0439, \u043a \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0435\u0433\u043e \u043f\u044b\u0442\u0430\u043b\u0438\u0441\u044c \u0430\u0434\u0430\u043f\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c, \u043e\u043d \u0431\u044b\u043b \u043d\u0435 \u043b\u0443\u0447\u0448\u0438\u043c \u0432\u044b\u0431\u043e\u0440\u043e\u043c. \u041d\u0435 \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u0435\u0443\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u0438\u0435\u043c \u0441\u043a\u0430\u0437\u0430\u0442\u044c, \u0447\u0442\u043e \u043f\u043e\u0434\u0430\u0432\u043b\u044f\u044e\u0449\u0435\u0435 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e \u0441\u0445\u0435\u043c XML, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043d\u0435 \u0434\u043e\u0432\u043e\u0434\u0438\u043b\u043e\u0441\u044c \u0432\u0438\u0434\u0435\u0442\u044c, \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u043b\u0438 \u0441\u043e\u0431\u043e\u0439 \u043d\u0435\u0446\u0435\u043b\u0435\u0441\u043e\u043e\u0431\u0440\u0430\u0437\u043d\u043e\u0435 \u0438\u043b\u0438 \u043d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 XML. \u0411\u043e\u043b\u0435\u0435 \u0442\u043e\u0433\u043e,\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/xml-prakticheski-vsegda-primenyaetsya-ne-po-naznacheniyu\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"et_EE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47XML \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0432\u0441\u0435\u0433\u0434\u0430 \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u043d\u0435 \u043f\u043e \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044e | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u042f\u0437\u044b\u043a XML \u0431\u044b\u043b \u0438\u0437\u043e\u0431\u0440\u0435\u0442\u0435\u043d \u0432 1996 \u0433\u043e\u0434\u0443. \u0415\u0434\u0432\u0430 \u043e\u043d \u0443\u0441\u043f\u0435\u043b \u043f\u043e\u044f\u0432\u0438\u0442\u044c\u0441\u044f, \u043a\u0430\u043a \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0435\u0433\u043e \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0443\u0436\u0435 \u043d\u0430\u0447\u0430\u043b\u0438 \u043f\u043e\u043d\u0438\u043c\u0430\u0442\u044c \u043d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e, \u0438 \u0434\u043b\u044f \u0442\u0435\u0445 \u0446\u0435\u043b\u0435\u0439, \u043a \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0435\u0433\u043e \u043f\u044b\u0442\u0430\u043b\u0438\u0441\u044c \u0430\u0434\u0430\u043f\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c, \u043e\u043d \u0431\u044b\u043b \u043d\u0435 \u043b\u0443\u0447\u0448\u0438\u043c \u0432\u044b\u0431\u043e\u0440\u043e\u043c. \u041d\u0435 \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u0435\u0443\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u0438\u0435\u043c \u0441\u043a\u0430\u0437\u0430\u0442\u044c, \u0447\u0442\u043e \u043f\u043e\u0434\u0430\u0432\u043b\u044f\u044e\u0449\u0435\u0435 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e \u0441\u0445\u0435\u043c XML, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043d\u0435 \u0434\u043e\u0432\u043e\u0434\u0438\u043b\u043e\u0441\u044c \u0432\u0438\u0434\u0435\u0442\u044c, \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u043b\u0438 \u0441\u043e\u0431\u043e\u0439 \u043d\u0435\u0446\u0435\u043b\u0435\u0441\u043e\u043e\u0431\u0440\u0430\u0437\u043d\u043e\u0435 \u0438\u043b\u0438 \u043d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 XML. \u0411\u043e\u043b\u0435\u0435 \u0442\u043e\u0433\u043e,\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/xml-prakticheski-vsegda-primenyaetsya-ne-po-naznacheniyu\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-11-12T21:00:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-02-18T11:00:25+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47 XML-i kasutatakse peaaegu alati mitte sihtotstarbel | ProHoster","description":"XML keel leiutati 1996. aastal. Peaaegu kohe p\u00e4rast selle ilmumist hakati selle rakendamise v\u00f5imalusi valesti m\u00f5istma ning sihtotstarbel, mille jaoks seda prooviti kohandada, ei olnud see parim valik. Ei ole liialdus \u00f6elda, et suurem osa XML-skeemidest, mida olen n\u00e4inud, on olnud m\u00f5ttetu v\u00f5i vale XML-i kasutamine. Veelgi enam,","canonical_url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/xml-prakticheski-vsegda-primenyaetsya-ne-po-naznacheniyu","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"et_EE","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47XML \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0432\u0441\u0435\u0433\u0434\u0430 \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u043d\u0435 \u043f\u043e \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044e | ProHoster","og:description":"\u042f\u0437\u044b\u043a XML \u0431\u044b\u043b \u0438\u0437\u043e\u0431\u0440\u0435\u0442\u0435\u043d \u0432 1996 \u0433\u043e\u0434\u0443. \u0415\u0434\u0432\u0430 \u043e\u043d \u0443\u0441\u043f\u0435\u043b \u043f\u043e\u044f\u0432\u0438\u0442\u044c\u0441\u044f, \u043a\u0430\u043a \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0435\u0433\u043e \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0443\u0436\u0435 \u043d\u0430\u0447\u0430\u043b\u0438 \u043f\u043e\u043d\u0438\u043c\u0430\u0442\u044c \u043d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e, \u0438 \u0434\u043b\u044f \u0442\u0435\u0445 \u0446\u0435\u043b\u0435\u0439, \u043a \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0435\u0433\u043e \u043f\u044b\u0442\u0430\u043b\u0438\u0441\u044c \u0430\u0434\u0430\u043f\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c, \u043e\u043d \u0431\u044b\u043b \u043d\u0435 \u043b\u0443\u0447\u0448\u0438\u043c \u0432\u044b\u0431\u043e\u0440\u043e\u043c. \u041d\u0435 \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u0435\u0443\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u0438\u0435\u043c \u0441\u043a\u0430\u0437\u0430\u0442\u044c, \u0447\u0442\u043e \u043f\u043e\u0434\u0430\u0432\u043b\u044f\u044e\u0449\u0435\u0435 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e \u0441\u0445\u0435\u043c XML, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043d\u0435 \u0434\u043e\u0432\u043e\u0434\u0438\u043b\u043e\u0441\u044c \u0432\u0438\u0434\u0435\u0442\u044c, \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u043b\u0438 \u0441\u043e\u0431\u043e\u0439 \u043d\u0435\u0446\u0435\u043b\u0435\u0441\u043e\u043e\u0431\u0440\u0430\u0437\u043d\u043e\u0435 \u0438\u043b\u0438 \u043d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 XML. \u0411\u043e\u043b\u0435\u0435 \u0442\u043e\u0433\u043e,","og:url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/xml-prakticheski-vsegda-primenyaetsya-ne-po-naznacheniyu","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-11-12T21:00:00+00:00","article:modified_time":"2020-02-18T11:00:25+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"52640","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-24 04:19:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 11:11:32","updated":"2026-01-24 04:19:19"},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/52640","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/comments?post=52640"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/52640\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media\/52641"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media?parent=52640"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/categories?post=52640"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/tags?post=52640"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}