Računalniki Windows internet

Shema XML je opis strukture dokumentov XML. Ustvarite datoteko XML Preprost primer sheme XML

Včasih razumevanje XML datoteka, poslano v katastrsko zbornico, je preprosto potrebno, ko začutite, da morate nekje nekaj popraviti in se razvije naravna radovednost mnogih. Ampak ... Pomembno. Ne pozabite, da po podpisu datoteke EDS ne morete urejati datoteke XML! Kot primer iz prakse, pri delitvi ploskve s 300 spomini je deklica pomotoma izbrisala samo eno vrstico v naslovu iz enega od grafov. In to je to.. Datoteka XML ni prestala validacije. Iskanje po programu po vseh zapisih se mi je zdelo dolgočasno, bolj sem vedel, kaj iskati. Ko sem z iskanjem odprl datoteko XLM v urejevalniku testov, sem našel zahtevano vrstico in naredil spremembe. A še enkrat ponavljam - če ste datoteko uredili, jo morate znova podpisati z EDS. Pa začnimo. Predstavil bom risbe in jih opisal.

In še en umik, za urejanje in priročen ogled datotek XML Priporočam uporabo programa. Omogoča vam, da vidite strukturo datoteke in jo priročno obarvate po vrednostih. Vzel bom na primer električni grelnik za brisače za kopalnico, no, seveda ne njegovega -), ampak obliko datoteke XML 2 shranjevalnih enot z dodelitvijo deleža v skupnem lastništvu skladiščne enote s katastrsko številko ... .
Kot primer bom najprej pokazal sliko strnjene datoteke XML z enim strnjenim blokom.

Torej, sodeč po števcu vrstic na levi, imamo datoteko s 336 vrsticami. Kot lahko vidite iz bloka slik Strnjeno, znak plus na desni. Zato bom najprej vrstico za vrstico opisal, kar je razvidno iz te slike, nato pa bomo analizirali bloke, vključene v blok Ker je najbolj obsežna.

Ne bomo upoštevali celotne datoteke vrstico za vrstico, temveč le tiste vrstice, v katere so vneseni naši podatki.

3 vrstica : CodeType = "014" - vrsta dela, le dve sta, kot v našem primeru - izobraževanje in "015" - pojasnilo. Različica = "03" - Različica XML mapa. GUID (Globally Unique Identifier) ​​je statistično edinstven 128-bitni identifikator; v našem primeru se mora ime datoteke ujemati s tem indikatorjem.
4 vrstica : Podatki organizacije, v kateri dela katastrski inženir, ali podatki samega katastrskega inženirja.
5 vrstica : Koda organizacije upravičenca, v tem primeru Uprava Zvezna služba državna registracija, kataster in kartografija v Republiki Tatarstan.

Zdaj pa se takoj spustimo do konca datoteke na podlagi predstavljene slike in razmislimo o bloku ... Ta blok vsebuje informacije o katastrski inženir ki je delo opravljal. Sledi blok, kamor se prilega koordinatni sistem. mimogrede & quotv vrednostih besedilne datoteke označite narekovaje.

Načeloma z odpiranjem datoteke v beležnici ++ postane jasna celotna struktura datoteke XML. - Lokacija - vsebuje naslov. Vrednost v napisano, ko ni dela naslova na KLADR.

Primer datoteke XML zemljevida načrta, ustvarjene v programski izdelek Načrt zemljevida poligonov

Za najbolj vizualen pogled na ta fragment ga kopirajte in si oglejte v testnem urejevalniku Notepad ++, ki ga lahko prenesete iz razdelka

Če vzamemo sredstva za cilj, ljudje postanejo razočarani vase in drugih, zaradi česar iz vseh njihovih dejavnosti ne pride nič ali nasprotno od tistega, za kar so stremeli.I. Goethe

Format XML je namenjen shranjevanju podatkov, ki so lahko uporabni pri delu nekaterih programov, spletnih mest in podpori za določene označevalne jezike. Ustvariti in odpreti datoteko s to obliko ni težko. To je mogoče storiti, tudi če v računalniku ni nameščena nobena specializirana programska oprema.

Sam XML je označevalni jezik, nekoliko podoben HTML, ki se uporablja na spletnih straneh. Če pa se slednji uporablja samo za prikaz informacij in njihovo pravilno označevanje, potem XML omogoča njegovo strukturiranje na določen način, zaradi česar je ta jezik nekaj podobnega analogu baze podatkov, ki ne potrebuje DBMS.

Datoteke XML lahko ustvarite tako s specializiranimi programi kot z vgrajenimi Windows Besedilo urednik. Priročnost pisanja kode in raven njene funkcionalnosti sta odvisna od vrste uporabljene programske opreme.

1. način: Visual Studio

Namesto tega Microsoftovega urejevalnika kode lahko uporabite katerega koli od njegovih analogov drugih razvijalcev. Pravzaprav je Visual Studio naprednejša različica običajnega "Beležnica"... Koda ima zdaj posebno osvetlitev, napake so označene ali popravljene samodejno, v program pa so že naložene posebne predloge, ki omogočajo poenostavitev ustvarjanja velikih datotek XML.

Če želite začeti, morate ustvariti datoteko. Kliknite na predmet "Mapa" v zgornji vrstici in v spustnem meniju izberite "Ustvari ..."... Odpre se seznam, kjer je predmet označen "Mapa".

  • Preneseni boste v okno z izbiro razširitve datoteke oziroma izberite element "datoteka XML".
  • Novo ustvarjena datoteka bo že imela prvo vrstico s kodiranjem in različico. Privzeto je prva različica in kodiranje. UTF-8 ki ga lahko kadar koli spremenite. Nato, da ustvarite popolno datoteko XML, morate registrirati vse, kar je bilo v prejšnjem navodilu.

    Ko končate, znova izberite v zgornji vrstici "Mapa", in tam iz spustnega menija "Shrani vse".

    2. način: Microsoft Excel

    Datoteko XML lahko ustvarite brez pisanja kode, na primer z uporabo sodobnih različic programa Microsoft Excel, ki vam omogoča shranjevanje tabel s to razširitvijo. Vendar morate razumeti, da v tem primeru ne boste mogli ustvariti nekaj bolj funkcionalnega kot navadna miza.

    Ta metoda je bolj primerna za tiste, ki ne želijo ali ne znajo delati s kodo. Vendar pa lahko v tem primeru uporabnik naleti na določene težave pri ponovnem pisanju datoteke v format XML. Žal je operacijo pretvorbe običajne tabele v XML mogoče izvesti samo v najnovejši različici MS Excel. Če želite to narediti, uporabite naslednja navodila po korakih:


    3. način: beležnica

    Tudi običajni je primeren za delo z XML. "Beležnica", vendar bo imel uporabnik, ki ne pozna sintakse jezika, težave, saj morajo biti v njem zapisani različni ukazi in oznake. Postopek bo nekoliko enostavnejši in veliko bolj produktiven v specializiranih programih za urejanje kode, na primer v Microsoft Visual Studio. Imajo posebno osvetlitev oznak in namige orodij, kar močno poenostavi delo osebe, ki je nova v sintaksi tega jezika.

    Za to metodo vam ni treba ničesar prenesti, saj v operacijski sistemže vgrajena "Beležnica"... Poskusimo v njej narediti preprosto tabelo XML po danih navodilih:


    Končni rezultat bi moral izgledati nekako takole:




    25
    Prav


    Prevajalniki XML morajo to kodo obdelati v obliki tabele z enim stolpcem, ki vsebuje podatke o nekem Ivanu Ivanovu.

    V "Beležnica" je povsem mogoče narediti preproste tabele, kot je ta, toda pri ustvarjanju bolj obsežnih podatkovnih nizov se lahko pojavijo težave, saj v običajnem "Beležnica" ni funkcij za popravljanje napak v kodi ali njihovo poudarjanje.

    Kot lahko vidite, ustvariti datoteko XML ni nič težko. Po želji ga lahko ustvari vsak uporabnik, ki bolj ali manj zna delati na računalniku. Vendar je za ustvarjanje popolne datoteke XML priporočljivo, da se naučite tega označevalnega jezika, vsaj na primitivni ravni.

    To poglavje vam bo pokazalo, kako napisati sheme XML. Naučili se boste tudi, da je diagrame mogoče napisati na veliko različnih načinov.

    XML dokument

    Oglejmo si naslednji dokument XML, imenovan "shiporder.xml":

    John Smith Ola Nordmann

    Langt 23
    4000 Stavanger Norveška Empire burleska Posebna izdaja 1 10.90 Skrij svoje srce 1 9.90

    Zgornji dokument XML je sestavljen iz korenskega elementa ladijsko naročilo z zahtevanim atributom Številka naročila ... Element ladijsko naročilo vsebuje tri otroke: naročnik, poslati v in predmet... Element predmet se uporablja dvakrat in vsebuje element naslov, neobvezni element Opomba kot tudi elementi količina in cena.

    vrstica xmlns: xsi = "http://www.w3.org/2001/XMLSchema-instance" pove razčlenjevalniku XML, da je treba ta dokument preveriti glede na shemo. vrstica xsi: noNamespaceSchemaLocation = "shiporder.xsd" določa, kje se nahaja shema (v tem primeru se nahaja v isti mapi kot datoteka "shiporder.xml").

    Ustvarjanje sheme XML

    Zdaj pa ustvarimo shemo XML za zgornji dokument XML.

    Ustvarjajmo nova datoteka ki ga bomo imenovali "shiporder.xsd". Če želite ustvariti shemo XML, bomo preprosto sledili strukturi dokumenta XML in definirali vsak element, na katerega naleti. Začnimo s standardno izjavo XML, ki ji sledi element xs: shema , ki definira samo shemo:

    ...

    Tukaj uporabljamo standardni imenski prostor ( xs ) in URI, povezan s tem imenskim prostorom, ki ima privzeto vrednost http://www.w3.org/2001/XMLSchema .

    Zdaj moramo definirati element ladijsko naročilo... Ta element ima atribut in vsebuje druge elemente, zato ga obravnavamo kot element sestavljenega tipa. Definicije podrejenih elementov ladijsko naročilo vnesti v deklaracijo xs: zaporedje , ki definira togo zaporedje podelementov:

    ...

    Zdaj definirajmo element naročnik, ki bo preprostega tipa (ker ne vsebuje nobenih atributov ali drugih elementov). Njena vrsta ( xs: niz ) ima predpono imenskega prostora, povezanega s shemo XML, ki označuje uporabo vnaprej določenega tipa podatkov:

    Zdaj moramo definirati: poslati v in predmet... Začnimo z opredelitvijo elementa poslati v:

    S pomočjo diagramov lahko definiramo kateri koli element. Pri tem nam bodo pomagali atributi. maxOccurs in min Nastane ... atribut maxOccurs določa največje število pojavljanj elementa in atribut min Nastane določa najmanjše število ponovitev. Privzeto je vrednost obeh atributov 1.

    Zdaj definirajmo element predmet... Ta element se lahko uporablja neomejeno število krat znotraj elementa. ladijsko naročilo... Določite takšno lastnost elementa predmet omogoča dodelitev atributu maxOccurs pomen "neomejen" ... To pomeni, da element predmet se lahko uporablja tolikokrat, kot ga avtor dokumenta potrebuje. Upoštevajte, da element Opomba neobvezno. To določimo z nastavitvijo atributa min Nastane na nič:

    Zdaj lahko razglasimo atribut elementa ladijsko naročilo... Ker je to obvezen atribut, uporabljamo definicijo use = "obvezno" .

    Opomba: atribute je treba vedno navesti zadnje:

    Tukaj je celotna koda za datoteko sheme "shiporder.xsd":

    Razdelitev sheme

    Prejšnja metoda postavitve sheme je precej preprosta, ko pa je dokument precej zapleten, lahko ta metoda naredi ustrezno shemo precej okorno, kar bo močno vplivalo na njeno berljivost in vzdržljivost.

    Naslednji način za postavitev diagrama je, da najprej definirate vse elemente in atribute, nato pa se sklicujete na te definicije z uporabo atributa ref .

    Sledi nova postavitev datoteke sheme ("shiporder.xsd"):

    Uporaba poimenovanih vrst

    Tretji način postavitve sheme vključuje definiranje razredov ali tipov, ki omogočajo ponovno uporabo definicij članov. To postane mogoče z dajanjem imen elementom simpleTypes in kompleksne vrste in nato pokažite nanje z atributom tip .

    Tretji način za povezavo datoteke sheme ("shiporder.xsd"):

    Element omejitev označuje, da je tip podatkov izpeljan iz podatkovnih tipov v imenskem prostoru sheme XML W3C. Tako naslednji del kode pomeni, da mora biti vrednost elementa ali atributa niz:

    Vendar pa veliko pogosteje element omejitev uporablja za nalaganje omejitev elementom. Oglejte si naslednje vrstice iz zgornjega diagrama:

    Ta delček kode določa, da mora biti vrednost elementa ali atributa niz, dolg natanko šest znakov in da morajo biti ti znaki številke od 0 do 9.

    Za vse spodnje primere se uporablja jezikovni standard XSL. Široko se uporablja tudi sodobnejša modifikacija tega standarda, jezik XSL. T, več podrobnosti o tem si lahko preberete v \xml \ XSLTutorial ali MSDN.

    Oglejmo si preprost primer datoteke XML (ex01.xml). Ta in druge primere najdete v mapi \ xml \ XSLTForBeginers na disku.



    Opombe XSL

    Če odpremo to datoteko v Internetni brskalnik Raziskovalec, bomo videli isto besedilo, ki je prikazano zgoraj, skupaj z vsemi oznakami in informacijami o storitvi. Ampak ne potrebujemo oznak in servisnih informacij! Želimo videti le informacije, ki so pomembne za primer, in s pomočjo oznak - za upravljanje videz te informacije. To nalogo je mogoče rešiti enostavno in preprosto: v datoteko XML je treba dodati predlogo za preoblikovanje - XSL-datoteko.

    Prepišimo našo datoteko XML, kot sledi (ex01-1.xml).




    Opombe XSL

    In ustvarite datoteko XSL ex01-1.xsl. Besedilo datoteke je prikazano spodaj.






    Če zdaj v brskalniku odpremo datoteko ex01-1.xsl internet Explorer, potem bomo videli, da je naša naloga rešena - na zaslonu ostanejo le informacije, ki jih potrebujemo, vse oznake so izginile. Rezultat, ki ga dobite na zaslonu brskalnika, je prikazan spodaj.

    Opombe XSL

    Prav tako je enostavno videti, da je vrstni red izpisnih vrstic določen samo z vsebino predloge preoblikovanja - datoteke XSL. Če je potrebno, lahko predlogo enostavno spremenite, ne da bi sploh spremenili našo glavno datoteko XML.

    Prepišimo datoteko XML. Informacijskega dela ne bomo spreminjali, temveč bomo določili drugo predlogo ex01-2.xml.




    Opombe XSL

    Ustvarimo datoteko XSL ex01-2.xsl. Besedilo datoteke je prikazano spodaj.






    Če zdaj v Internet Explorerju odpremo datoteko ex01-2.xsl, bo rezultat drugačen.

    Opombe XSL

    Naj zdaj opozorimo na trenutek, ki je ključen za razvijalce baz podatkov. Podatki na strani XML se običajno pojavijo kot rezultat poizvedbe baze podatkov. Poizvedovanje po bazi podatkov v večuporabniškem okolju je zelo drago. Recimo, da zdaj nimamo XML-ja in upodabljamo standardne statične strani HTML. V tem primeru, da rešimo problem preproste transformacije zunanje predstavitve informacij, na primer za spremembo razvrščanja, imamo dva načina za rešitev problema: izvedemo poizvedbo in rezultate shranimo v neki začasni medpomnilnik na strežniku, ali vsakič, ko se zunanja predstavitev spremeni, izvedite novo poizvedbo in ponovno ustvarite stran HTML.

    Prva metoda zahteva naporno programiranje, druga metoda znatno poveča obremenitev strežnika baz podatkov, katerega zmogljivost je pogosto ozko grlo sistema - uporabnik želi vedno hitreje doseči rezultate.

    XML in XSL nudita celovito rešitev zgoraj opisanega problema. Pravzaprav je stran XML začasni medpomnilnik za rezultate poizvedbe. Samo namesto nestandardnega in zamudnega programiranja zdaj uporabljamo standardni mehanizem XSL.

    Obstaja še en premislek, ki je lahko pomemben za razvijalce baz podatkov. Večina sodobnih DBMS lahko rezultate poizvedbe baze podatkov formatira kot datoteko XML. To pomeni, da pri gradnji uporabniškega vmesnika v okviru tehnologije XML in XSL dosežemo določeno neodvisnost od ponudnika DBMS. Kar zadeva organizacijo umika - skoraj popolna neodvisnost. In ta del je v večini aplikacij, usmerjenih v bazo podatkov, precej velik. Seveda sta poleg izhoda še vhodna in strežniška obdelava poslovne logike, a tu boste morali iskati še nekaj drugih rešitev.

    Prvi koraki

    Zdaj pa si oglejmo prvi primer podrobneje. Spomnimo se njenega besedila.



    Opombe XSL

    Prva vrstica obvesti brskalnik, da je datoteka v formatu XML. Atribut različice je obvezen. Atribut kodiranja ni obvezen, če pa imate v besedilu ruske črke, potem morate ta atribut vstaviti, sicer datoteka XML preprosto ne bo obdelana - prejeli boste sporočilo o napaki.

    Naslednje vrstice so telo datoteke XML. Sestavljen je iz elementov, ki skupaj tvorijo drevesno strukturo. Elementi so identificirani z oznakami in se lahko ugnezdijo drug v drugem.

    Elementi imajo lahko atribute, katerih vrednosti je mogoče obdelati tudi po predlogi.

    Na najvišji ravni datoteke XML je vedno en element. Se pravi, datoteka obrazca



    Opombe XSL



    "Uvod v CSP"

    brskalnik ne bo obdelal. Če želite pretvoriti v veljavno datoteko XML, morate dodati oznake elementov najvišji nivo, na primer




    Opombe XSL



    "Uvod v CSP"


    Upoštevajte, da so imena oznak občutljiva na velike in male črke. Več o tem lahko preberete v kateri koli knjigi o elementih in atributih XML; te knjige posvečajo veliko pozornosti.

    Zdaj pa preidimo na predlogo za preoblikovanje - datoteko XSL. Naloga datoteke XSL je pretvoriti drevo datoteke XML v drugo drevo, ki bo na primer ustrezalo formatu HTML in se lahko prikaže na zaslonu brskalnika, ob upoštevanju oblikovanja, izbire pisav itd.

    Da bi brskalnik izvedel potrebno preobrazbo, morate v datoteki XML določiti povezavo do datoteke XSL


    Zdaj pa poglejmo besedilo datoteke XSL






    Prva vrstica datoteke vsebuje oznako elementa xsl: stylesheet. Atributi elementa so številka različice in sklic na imenski prostor. Ti atributi elementa stylesheet xsl: so obvezni. V našem primeru so imenski prostor vsa imena elementov in njihovih atributov, ki jih je mogoče uporabiti v datoteki XSL. Za datoteke XSL je referenca imenskega prostora standardna.

    Upoštevajte, da je datoteka XSL vrsta datoteke XML. Ne vsebuje uporabniških podatkov, vendar je format enak. Datoteka vsebuje element najvišje ravni xsl: stylesheet, ki mu sledi drevo pravil preoblikovanja.

    V tem dokumentu ne bomo podrobno razlagali, kaj pomeni vsak element datoteke XSL. Podali bomo različne primere in prikazali rezultat v vsakem primeru, kar bo omogočilo neodvisno povezovanje različnih elementov datoteke XSL in transformacije izvirne datoteke XML z uporabniškimi informacijami, ki jih sprožijo ti elementi. Upoštevajte tudi vrednost atributa izberite in podobnih s pomenom »izberi« je napisano v posebnem jeziku XPath, o čemer si lahko na kratko preberete na disku \ xml \ XPathTutorial, podrobneje pa v MSDN.

    V nadaljevanju bomo črno-beli predstavili besedila datotek XML in XSL. Vedno lahko odprete pravo datoteko in vidite vse v barvah. Po potrebi komentirajte povezavo do datoteke XSL. Sintaksa komentarja je naslednja -... Ne morete vstaviti simbolov - v besedilo komentarja.

    V prvem primeru smo videli, kako lahko element xsl: value-of uporabite za prikaz vsebine elementa (besedilo, zaprto med oznakami) v obliki HTML. Zdaj bomo videli, kako se lahko isti element uporabi za prikaz vrednosti atributa elementa.

    Razmislite o naslednji datoteki xml ex02-1.xml

    V prejšnjem članku XML smo si ogledali tako zastarel način potrjevanja dokumentov XML, XML DTD. Ta metoda se še vedno uporablja za preverjanje podatkov XML, vendar se iz dneva v dan bolj nadomešča nova tehnologija imenovana shema XML. Odpravljene so bile številne pomanjkljivosti v shemah XML, ki so bile v XML DTD, itd. ta trenutek vsi vodilni razvijalci uporabljajo samo sheme XML za potrditev dokumentov.

    Da bi cenili prednosti sheme XML pred DTD, si oglejmo podrobneje glavne slabosti DTD, ki so bile uspešno popravljene v shemah XML. Omenil sem jih že v članku "", a za boljše razumevanje ponovimo.

    Slabosti XML DTD pred shemo XML

    1. Jezikovna sintaksa, ki ni XML. To pomeni, da DTD ni XML. To lahko povzroči različne težave s kodiranjem in preverjanjem dokumentov XML.
    2. Brez preverjanja vrste podatkov. V DTD-jih XML obstaja samo ena vrsta podatkov - niz. V zvezi s tem, na primer, če je v številčnem polju besedilo, bo dokument še vedno preverjen, saj XML DTD ne more preveriti vrste podatkov.
    3. V en dokument XML ne morete preslikati več kot enega opisnega DTD. To pomeni, da je dokument mogoče preveriti samo z enim opisom DTD. Če jih je več, boste morali ponoviti opise in vse združiti v eno datoteko, kar je zelo neprijetno.

    To so bile glavne pomanjkljivosti XML DTD, ki so bile uspešno popravljene v industrijskem standardu za opis dokumentov XML, XML Schema.

    XML Schema - industrijski standard za opis dokumentov XML

    Na kratko, XML Schema naredi naslednje:

    1. Opiše imena elementov in atributov (slovar).
    2. Opisuje razmerje med elementi in atributi ter njihovo strukturo (vsebinski model).
    3. Opisuje vrste podatkov.

    Prav tako želim opozoriti, da lahko trenutno z uporabo diagramov opišete skoraj vse. To pomeni, da je shema univerzalen način opisovanja podatkovne slovnice, ki se lahko uporablja ne samo za preverjanje dokumentov XML, ampak tudi za opis baz podatkov itd. Tako je obseg uporabe shem trenutno zelo širok.

    Primer sheme XML za preverjanje veljavnosti dokumenta XML

    Kot kaže praksa, je snov veliko bolje asimilirana, če takoj začnete študirati s primeri. Takoj moram reči, da se ne bomo poglabljali v vse tankosti, saj je gradivo zelo zapleteno, še posebej, če ga preučujete v besedilni obliki.

    Primer preproste sheme XML

    S to shemo lahko potrdite dokument XML z naslednjo vsebino.

    <книга xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation = "book.xsd"> <название>Osnove XML <цена>300

    Torej, nazaj k naši shemi XML. Kot ste že opazili, se nam za izdelavo shem XML uporablja XML, ki ga že poznamo. Edina razlika je v tem, da shema XML že definira elemente, za razliko od običajnega XML. Iz tega razloga se uporabljajo imenski prostori. V tem primeru je zahtevan imenski prostor "http://www.w3.org/2001/XMLSchema", ki bo imel predpono "xs".

    Takoj želim poudariti, da lahko uporabite obe predponi imenskega prostora in nastavite imenski prostor za korenski element. Kot taka tukaj ni razlike. Vsak se sam odloči, kako ravnati v dani situaciji. Povedal bom le, da se običajno uporabljata predponi "xs" ali "xsd".

    No, zdaj pa poglejmo, kako dešifrirati zgornjo shemo. Kot je navedeno zgoraj, je shema XML opis slovarja in podatkovnih tipov. Na podlagi tega bomo dešifrirali vsak element.

    • - element "knjiga" razglasimo z vrsto "Knjiga".
    • - razglasimo kompleksen tip z imenom "Book" (xs: complexType - lahko vsebuje ugnezdene elemente).
    • - izjava o gnezdenju. To pomeni, da bo tip vseboval ugnezdene elemente.
    • - razglasimo element z imenom "name" (standardni tip "string" - xs: string).
    • - razglasimo element z imenom "cena" (standardnega tipa "število" - xs: decimalno).

    Kot lahko vidite, tukaj ni nič super zapletenega. Če pomislite, je vse zelo preprosto.

    Osnovni elementi sheme XML

    Na kratko, shemo XML lahko opišemo na naslednji način.

    Vaše vezje

    Kot lahko vidite iz primera, je vsaka shema XML sestavljena iz korenskega elementa "schema" in zahtevanega imenskega prostora "http://www.w3.org/2001/XMLSchema". Sledi opis vezja in samega vezja. Poleg tega je zelo pogosto v zelo kakovostnih shemah opis veliko večji od same sheme XML.

    Opis elementov v shemi XML

    Na začetku članka smo si že ogledali primer najpreprostejše sheme XML. V njej smo ločeno opisali elemente in vrste. Hkrati želim takoj opozoriti, da zaporedje tukaj ne igra vloge. Vezje bo vseeno delovalo.

    Zdaj pa poglejmo drugi način pisanja sheme XML, ki temelji na opisu tipa neposredno znotraj elementa. The način bo ustrezal v primeru, da ne nameravate uporabiti istega opisa za različne elemente. Za jasnost si oglejte primer.

    Kot lahko vidite iz primera, je element deklariran s posebno konstrukcijo "element" z uporabo ustrezne predpone. V tem primeru definiramo element, imenovan "root", ne da bi določili vrsto (tip), saj bo opisan znotraj elementa. To pomeni, da obstajata dva načina za opis predmetov.

    1 način

    Opis vrste

    2 način

    Opis vrste artikla

    Uporabite lahko tako prvo kot drugo metodo. Vsi delujejo na enak način. Edino vprašanje je udobje v tem konkretnem primeru.

    Nadalje, po deklaraciji elementa navedemo, da je kompleksnega tipa ( ) in naštej ( ) ugnezdeni elementi. V tem primeru sta to ime in starost elementov s tipoma "xs: string" in "xs: integer". Predpona xs pomeni, da je to osnovni tip, ki je že opisan v standardu XML Schema.

    Kot vidite, je do sedaj vse precej preprosto. Ponovno se ne bomo spuščali v vse podrobnosti, saj je ta članek namenjen seznanitvi s shemo XML in ne podrobnem preučevanju.

    Kako shema XML in preslikava dokumentov

    Posebnost sheme XML je, da ne opisuje sam dokument, temveč imenski prostor. V zvezi s tem je najpogosteje v dokumentu ni omembe. Upravljavec sam preslika shemo, ki jo potrebujete, brez uporabe navodil v dokumentu XML.

    V primeru, da upravljavec ne ve, kje se nahaja shema, lahko navedemo, kje jo iskati. To se naredi s posebnim atributom "schemaLocation". Ker ta atribut pripada drugemu imenskemu prostoru, je treba pred uporabo atributa podati tudi prostor. Za jasnost si oglejte primer.

    Shema XML

    Dokument XML

    Zdaj pa si oglejmo vsako vrstico podrobneje.

    • targetNamespace = "http://www.site.com" - navedite, za kateri imenski prostor je ta shema XML.
    • xmlns: xsi = "http://www.w3.org/2001/XMLSchema-instance" - povežite imenski prostor, v katerem je opisan atribut "schemaLocation".
    • xsi: schemaLocation = "http://www.site.com/product.xsd" - navedite, kje je mogoče najti shemo, če razčlenjevalnik ne ve, kje se nahaja. Če dokument XML ne pripada nobenemu imenskemu prostoru in zato v shemi ni sklicevanja nanj, se atribut "schemaLocation" nadomesti z "noNamespaceSchemaLocation" (sklicevanje na shemo brez definiranja imenskih prostorov).

    To je vse. Vso srečo in uspeh pri učenju XML!