Kako odpreti datoteko xsd? Datoteka XSD - kaj je to in kako odpreti opis XSD sheme XSD.

Na enem mestu bi rad spregovoril o precej tipični nalogi pri delu XML, namreč o ustvarjanju XML na podlagi obstoječega. Ta operacija bo sestavljena iz več stopenj, med izvajanjem katerih bodo rešene dodatne naloge, kot so:

  • Ustvarjanje XML temelji XSD, in obratno.
  • Serializacija in deserializacija objektov.
  • Ustvarjanje razreda za prihodnjo serializacijo iz XML oz XSD.
Preden začnem, načrtujem, da je bralec seznanjen z besedami. XML in XSD... Glede XML, mislim, da s tem ni problema, ampak glede XSD Morda imam vprašanja o tem, kaj je. V kratkem:
XSD je jezik za opis XML... In če pogledate vsebino datoteke, ki vsebuje ta opis, se pojavi vprašanje, zakaj bi opisovali na videz očitne oznake svojih XML? Predstavljajte si, da se integrirate z nekim zunanjim sistemom in za izmenjavo podatkov želite uporabiti format XML... torej XSD omogoča, da za vsak element opišete njegovo ime, možne atribute, obvezna polja ali atribute, da je jasno, da lahko vsebina oznake vsebuje samo en notranji element ( ) in nič več, ali pa ima lahko vozlišče zaporedje elementov (< a> ... ). Ko je zunanji sistem vaš, potem morda ne bo težav, ko pa je tuja organizacija, potem podani opis prek XSD, bo orodje za reševanje sporov s formatom, prav tako pa lahko s pripomočki preverite skladnost katerega koli XML izvirni format.
Torej, kaj bomo naredili, da bi se naučili žigosati XML na podlagi vašega merila uspešnosti? Vse bom opisal po vrsti.

Na voljo:
Kaj je XML (xmlfile.xml) shranjeno v besedilni obliki v datoteko. Spodaj je besedilo:

< catalog > < book id = " bk101 " > < author >Gambardella, Matej < title >Vodnik za razvijalce XML < genre >Računalnik < price > 44.95 < publish_date > 2000-10-01 < description >Poglobljen pogled na ustvarjanje aplikacij z XML. < book id = " bk102 " > < author >Ralls, Kim < title >Polnočni dež < genre >Fantazija < price > 5.95 < publish_date > 2000-12-16 < description >Nekdanja arhitektka se bori s korporativnimi zombiji, zlobno čarovnico in lastnim otroštvom, da bi postala kraljica sveta.

Koraki za ustvarjanje novega:

  1. Najprej uporabite pripomoček XSD.exe, ali z uporabo spletne storitve(poiščite "xml to xsd" enega izmed njih www.freeformatter.com/xsd-generator.html), ustvarili bomo iz obstoječega XML njegovo primitivno XSD opis. Na izhodu bomo imeli popolnoma samodejno ustvarjeno output.xsd datoteka, ki je že pripravljena za uporabo, vendar morda ni popolna.
  2. Nadalje, na podlagi output.xsd , bodo ustvarjeni razredi v C # xmlclass.cs. Po tem ga dodamo našemu projektu. Razred lahko ustvarite z uporabo XSD.exe, oz xsd2code pripomoček ali katero koli spletno storitev.
  3. Zdaj smo pripravljeni za uporabo datotečnih razredov xmlclass.cs... Zato bomo ustvarili in napolnili primerke podatkov xmlclass, nato pa s postopkom serializacije pretvorimo predmete v XML niz in ga nato shranite v novo datoteko. Tako dobimo XML na podlagi razpoložljivih.
Začnimo!

1. korak. Ustvarite XSD iz XML.

Zato bom navedel metode, ki jih uporabljam sam:
  1. Uporabnost xsd.exe- ustvarjalec Microsoft.
  2. Uporabnost xsd2code.exe- aplikacija tretje osebe, ki lahko naredi vse enako kot xsd.exe, vendar je na voljo za neposreden prenos (na naslovu ta trenutek postal plačan z Sojenje obdobje).
  3. Uporaba katere koli spletne storitve.
Za prejemanje morate XSD.exe, boste morali postaviti katero koli Microsoft SDK, v dobavi katerega je vključena ta aplikacija. Na žalost trenutno nobeden od studiev v njihovem kompletu ne vsebuje tega pripomočka.

Povezava za prenos in namestitev enega od SDK:
Windows SDK za Windows 7 in .NET Framework 4.

Uporabimo iskanje in poiščimo datoteko xsd.exe, nato pa (za poenostavitev našega dela) ga kopirajte v mapo, ustvarjeno v korenu diska C: \ xmltoxsd... Nato v isto mapo kopiramo naše xmfile.xml in vse je pripravljeno za začetek.


Odtrgamo" Ukazna vrstica"(Start -> Zaženi ->" cmd "), pojdite v naš imenik in pokličite s privzetimi parametri xsd.exe s posredovanjem našega xmlfile.xml kot parametra:


In vidimo, da se je zraven pojavila datoteka xmfile.xsd z vsebino.


To je vse! Ta dejanja so dovolj za ustvarjanje primitivca XSD datoteko za delo. Toda to morate razumeti sami xsd.exe tako kot kateri koli drug pripomoček, ne ve ničesar o vrstah vaših polj (zato bo skoraj vedno vrsta polj vrvica), pa tudi o vseh različicah atributov in parametrov. Se pravi, če neka oznaka nima atributa v vašem XML, potem ne bo v opisu. Torej XML mora biti najbolj popoln in v primeru, da lahko element vsebuje več podrejenih polj, je bolje dodati vsaj dve, tako da xsd.exe ugotovil, da gre za zbirko.

Sintaksa XSD ni zelo težko, zato, če se piše dovolj resen opis, boste morda morali delati z datoteko.

Korak 2. Ustvarite razred iz XSD.

Če želite ustvariti razred v C #, ga moramo ponovno uporabiti xsd.exe vendar z drugačnim parametrom / razredi mimo poti do našega xmfile.xsd.


Po izvedbi se prikaže datoteka xmlfile.cs, katere vsebina je prikazana spodaj v stisnjeni obliki:


Kot lahko vidite, za notranji element katalog razred je bil ustvarjen katalog knjiga katerih polja ustrezajo polji v XML in polje Id označena kot atribut. Xsd.exe pravilno razumel, kaj je notri katalog zbirka knjig je shranjena, tako se je pojavila lastnina Predmeti za zapolnitev otroške zbirke.
Komentar: xsd.exe ne more dodati komentarjev na nastale razrede in polja. V opisu XSD obstaja element, imenovan< xs:annotation > , ki najpogosteje vsebuje< xs:documentation >, znotraj katerega se nahaja opis polja. Teoretično bi ga bilo treba postaviti v opis ///, vendar trenutno xsd.exe zavrača dodajanje besedila v opis, zato se morate zateči k alternativam, kot je npr xsd2code ali spletne storitve.

Korak 3. Serializacija objektov v XML.

Nastali razredi so v datoteki xmfile.cs... Nato v projekt dodajte njegovo vsebino ali samo datoteko Vizualni studio, po katerem lahko delate z njim. Ustvaril bom predmet predstavitvene knjige in ga nato shranil v datoteko v formatu XML.

Zasebna praznina Primer () ( // Ustvari prvo knjigo var book1 = nov katalogKnjiga () (avtor = "Kralj", opis = "Zelo zanimiva knjiga", žanr = "Fantazija", cena = 22.ToString (), id = "42011", naslov = "(! LANG: It" }; !} // Ustvari drugo knjigo var book2 = nov katalogKnjiga () (avtor = "O" Brien, Tim ", opis = "Microsoftova" pobuda .NET je podrobno raziskana v tej globoki "referenci" programerja., žanr = "Računalnik", cena = 36.ToString (), id = "30012", naslov = "Microsoft .NET: Biblija programiranja" }; // Ustvarite korenski element imenika, ki vsebuje zgornji dve knjigi var katalog = nov katalog () (Elementi = novo (knjiga1, knjiga2)); // Vsebuje XML kataloškega objekta var xmlCatalog = Serialize (katalog); // Zapiši vrstico v datoteko // TODO Narejeno za demonstracijo. Zaželeno je, da pokličete metodo Serialize za prenos Stream v datoteko Datoteka .WriteAllText ("Output.xml", xmlCatalog); ) zasebni niz Serialize (TType sourceObject) (če (sourceObject == null) (povratni niz .Empty;) // Uporabite XmlSerializer, da ga pretvorite v niz XML var xmlserializer = nov XmlSerializer (typeof (TType)); var stringWriter = nov StringWriter (); z uporabo (var writer = XmlWriter .Create (stringWriter, nove XmlWriterSettings () (Indent = true))) (xmlserializer.Serialize (writer, sourceObject); vrni stringWriter.ToString ();)) Po zagonu in odpiranju Output.xml lahko vidite, da smo shranili tako, kot smo želeli (spodnja datoteka - " Ustvarjeno s kodo").

Tabela XSD se uporablja za tradicionalno križno šivanje. Razvijalec rešitve je HobbyWare. To je precej pogosta oblika za te namene.

Opis

XSD je nadomestil format .PAT, ki ga je uporabljal tudi PCStitch, kar je povzročilo nekaj zmede. Te datoteke vsebujejo vse, kar potrebujete za vezenje, zlasti barvno legendo in opis za nadaljnje delo. Program Pattern Maker za šivanje s križem vam bo pomagal pri ogledu materialov te vrste.

Dokumentacija

XSD se ne uporablja samo pri vezenju. Datoteke s podobno končnico določajo, kateri atributi in elementi se lahko pojavijo v dokumentu XML, ter vzpostavljajo tudi razmerje med njegovimi sestavnimi deli. Ti materiali so v interakciji s posebnim jezikom za opis strukture teh datotek. Namen sheme je definirati razred XSD, ki se lahko uporablja kot alternativa datotekam .DTD. Včasih se med delovanjem lahko pojavijo različne napake. Na primer, če vidite sporočilo »Preverjanje sheme XSD ni uspelo«, verjetno poskušate povezati gradivo z neprimernim programom. V nadaljevanju bomo obravnavali aplikacije, ki so primerne za delo s formatom.

Syntext Serna

Ta aplikacija bo pomagala pri soočanju z napako obrazca "Datoteka se ne ujema s shemo XSD". Gre za funkcionalni, komercialni XML. Serna deluje z vsemi razpoložljivimi stacionarnimi sistemi: Mac OS X, Linux in Windows. Urejevalnik ima popolno podporo za kataloge XML. Ustvarite lahko materiale, ki imajo posebno strukturo.

Ustvarjanje sheme XSD je ena od mnogih funkcij te aplikacije. Vstavljanje elementov je močno olajšano zaradi dejstva, da ima program kontekstualne sezname atributov in referenčne informacije o njih. Funkcija Drag & Drop vam omogoča, da povlečete in spustite predmete na trak. Izvedeno je tudi dodatno preverjanje datotek ob odprtju. Možno je delo z modeli in mizami. Interakcija se izvaja tudi z velikimi in obsežnimi materiali. Obstaja razširjena navigacija po vsebini. Za lažje vstavljanje različnih dizajnov je Sernin urednik prejel številna posebej oblikovana pogovorna okna. Program ima priročen in prilagodljiv vmesnik. Odprto gradivo je prikazano v glavnem oknu. Predstavljeno je v celoti. Tukaj so spustni seznami. Spodbudna je tudi prisotnost vsebinskega vodnika.

Dokument se upravlja s posebnim slogom. Z le nekaj tipkami lahko spremenite profil Odpri datoteko po vaših željah in po vašem okusu. Dokument v Serni lahko razdelimo in razdelimo na zahtevano število strani, pri čemer upoštevamo oštevilčenje in določeno zaporedje. Ta rešitev je zelo učinkovita pri delu z velikimi materiali, ki vsebujejo veliko kode. Hkrati je standardna možnost za prikaz informacij priročna, če želite zmanjšati vrzeli v dokumentu, in to je zelo pomembno, če so prisotne tabele.

Oxygen XML Editor

Za obvladovanje napake obrazca "Datoteka se ne ujema s shemo XSD" in ta urejevalnik lahko odpre tudi datoteke določene vrste. Rešitev vam omogoča interpretacijo dokumentov, kot tudi poudarjanje elementov v besedilu z barvo. Pogled vsebinskega drevesa omogoča uporabniku ogled različnih vozlišč dokumenta. Tako lahko preverite pravilnost kode, pa tudi zaznate napake in opozorila. Urejanje se lahko izvede neposredno iz ZIP arhiva.

Altova XMLSpy

Če imate pred seboj shemo XSD, lahko z njo delate prek te aplikacije. Je zmogljivo orodje za ustvarjanje, odpravljanje napak in urejanje dokumentov. Obstajajo različice za Windows, Linux in Mac OS. Razvoj funkcij te rešitve povečuje raven učinkovitosti dela s shemami. Na voljo je izdelava projektov različnih nivojev iz nič. Možno je urejanje obstoječih materialov. V tem primeru je na voljo več načinov prikaza - končni rezultat, hierarhična tabela, besedilo.

Vgrajeni pregledovalnik vam omogoča, da se izognete napakam in poenostavite uporabo programa. Aplikacija je prejela priročen sistem označevanja sintakse. Možno je komentirati kodo in nastaviti zaznamke. Ta pristop poenostavlja navigacijo pri delu z velikimi projekti. Vgrajen je pretvornik. Baze podatkov lahko uvozite. Obstaja orodje za primerjavo dveh datotek, ki vključuje priročen sistem za prikaz rezultata. Ta platforma je združljiva z drugimi podobnimi rešitvami, kar vam omogoča združevanje njihovih zmogljivosti.

Druge rešitve

Obstaja več programov, ki podpirajo delo z vrsto vezij, ki nas zanimajo. Med njimi si posebno pozornost zasluži Visual Studio. Govorimo o razvoju Microsofta, ki vam omogoča ustvarjanje različnih aplikacij.

Značilnost te platforme je širok nabor storitev, ki so na voljo v različnih programskih jezikih. Storitve se izvajajo kot vmesna programska oprema, ki je arhitekturno agnostična. Visual Studio združuje veliko število funkcij, ki omogočajo razvoj v sistemu Windows. Orodje ima novo okolje, ki močno olajša izvajanje aplikacij.

S formatom, ki ga potrebujemo, lahko delate tudi prek ene od naslednjih aplikacij: XML Studio, XML Notepad, JAPISoft EditiX, urejevalnik PSPad, "Beležnica". Tako smo ugotovili, kako odpraviti napako, kot je "Ne ujema se s shemo XSD", pa tudi s katerimi programi za interakcijo z datotekami.

Zelo pogosto je pri avtomatizaciji poslovnih procesov potrebno generirati elektronske dokumente na podlagi strukturiranih podatkov. Vir strukturiranih podatkov so običajno imeniki sistema DIRECTUM. Potreba po izdelavi elektronskih dokumentov se pojavi iz naslednjih razlogov:

  • Elektronski dokument je priročna predstavitev za usklajevanje informacij. Sposobnost prikaza podatkov iz več virov podatkov;
  • Možnost namestitve EDS - dodatna zaščita rezultatov odobritve;

Običajno za oblikovanje dokumentov uporabljajo razvoj celostnih poročil, ki jih po generiranju lahko shranijo kot elektronske dokumente v arhiv. Slabosti tega pristopa so po mojem mnenju naslednje:

  • Visoka kompleksnost razvoja, ki je običajno povezana s potrebo po programiranju vizualnega dela poročila. To velja za poročila rtf in Excel/html v sistemu DIRECTUM.
  • Predloga poročila je v razvoju, kar uporabnikom sistema ne omogoča spreminjanja nastavitve pogleda. Stranke na primer pogosto želijo dodati svoj logotip poročilom, ki jih ustvari sistem.

Predlagam uporabo alternativne možnosti za generiranje elektronskih dokumentov na podlagi Excelove predloge, ki rešuje zgoraj opisane pomanjkljivosti. Mehanizem temelji na zmožnosti Excela, da za označevanje predloge uporablja elemente priložene podatkovne sheme XSD. Ta funkcija je na voljo v programu Excel 2003.

Podal bom primer označevanja predloge dokumenta "Izpisek računa" v Excelu 2007. Pot do možnosti povezave podatkovne sheme XSD: zavihek Razvijalec (na traku) \ Vir \ XML Maps ... \ Dodaj. Odpre se pogovorno okno za izbiro datoteke z opisom podatkovne sheme. Po priključitvi sheme se v razdelku »Vir XML« prikažejo elementi povezane sheme XSD, ki jih je mogoče prenesti v katero koli celico predloge:

Shema XSD je običajna datoteka XML, ki opisuje podatkovne elemente. Shema XSD za dani primer izgleda takole:

Ko je predloga konfigurirana in označena podatkovna polja, jo lahko shranimo v sistem in v namestitev dodamo parameter, ki ga lahko povežemo pri razvoju ISBL. Če želite programsko ustvariti elektronski dokument na podlagi prilagojene predloge, morate narediti naslednje:

1. Pripravite datoteko XML s podatki, ki ustrezajo priloženi shemi predloge XSD. Podatki XML za shemo XSD, opisano v primeru, bodo videti takole:

Oblikovanje dokumenta XML v ISBL je treba izvesti s pomočjo knjižnice msxml.dll:

… REPORT_NAME = “StatementAccount_card” XMLDocument = CreateObject ("MSXML.DOMDocument") ProcInstruction = XMLDocument.CreateProcessingInstruction ("xml"; "version =" 1.0 "encoding =" windows-1251 "samostojen =" yesculd Prostruction") ) RootElement = XMLDocument.CreateElement (REPORT_NAME) XMLDocument.appendChild (RootElement) ...

2. Pridobite predlogo dokumenta in jo izvozite na disk.

... TemplateID = Const ('xxx') Template = Edocuments.GetObjectByID (TemplateID) Template.Export (VersionNumber; Pot; FALSE) ...

3. Odprite izvoženo predlogo v Excelu in vanjo prenesite pripravljene podatke:

… Excel = CreateObject ("Excel.Application") Book = Excel.WorkBooks.Open (Path) Sheet = Book.WorkSheets (1) // Naloži podatke v Excel XmlMap = Book.XmlMaps (REPORT_NAME) XmlMap.ImportXML (XMLDocument.xml ) Knjiga.Shrani knjigo.Zapri Excel.Zapri ...

4. Po potrebi odprite dokument za ogled ali ga takoj shranite v shrambo sistema DIRECTUM.

Primer ustvarjenega dokumenta "Izpisek računa":

Poleg izvoza podatkov v Excelovo predlogo lahko izvedete tudi nasprotno dejanje – uvozite podatke iz označevalnih polj predloge. tiste. v tem scenariju bo predloga Excel delovala kot elektronski obrazec za vnos podatkov, ki ga je mogoče uvoziti v sistem DIRECTUM.

Imate težave z odpiranjem datoteke .XSD? Zbiramo informacije o formatih datotek in lahko pojasnimo, kaj so datoteke XSD. Poleg tega priporočamo programe, ki so najprimernejši za odpiranje ali pretvorbo takšnih datotek.

Za kaj je format datoteke .XSD?

Razširitev datoteke .xsd je tipa datoteke z definicijo sheme XML (XSD). Shema XML je mednarodni standard s statusom priporočila W3C, vrsta datoteke XSD pa je splošna oznaka za datoteke sheme XML. XSD je podmnožica XML, njegov osnovni koncept pa je podoben prejšnjemu mehanizmu definicije vrste dokumenta (DTD), saj je XSD metajezik, ki se uporablja za konstruiranje in uveljavljanje pravil poljubnega jezika XML.

mapa .xsd je besedilni seznam izvorne kode XML. Opredeljuje shemo XML, strukturiran prototipni model za navadne dokumente XML. Datoteke sheme XML ( .xsd) se lahko uporablja za ustvarjanje lastnih jezikov, ki temeljijo na XML, in preverjanje (preverjanje) dokumentov XML glede na pravila, ki jih nalaga določena shema XSD.



XML sheme ( .xsd) uporablja različna sodobna programska oprema, ki podpira XML, vključno s spletnimi brskalniki, OS, pisarniški paketi, integrirana razvojna okolja itd. Poleg tega, če dobro poznate sintakso sheme XML, lahko katera koli datoteka .xsd lahko ročno odprete in uredite v urejevalniku besedil.

Brez kakršne koli povezave z zgornjim, razširitev .xsd povezana tudi z vrsto in obliko datoteke podatkovne datoteke za križne šive (XSD). Pattern Maker je plačljiva aplikacija (Microsoft Windows) za ustvarjanje podrobnih vzorcev križnih šivov na podlagi digitalnih bitne slike... mapa .xsd Je predstavitev vzorca za vezenje, ustvarjenega s Pattern Maker. Takšne datoteke XSD je mogoče odpreti, si ogledati in natisniti tako z izdelovalcem vzorcev kot pregledovalnikom vzorcev, medtem ko je urejanje možno samo z izdelovalcem vzorcev.



Programska oprema za odpiranje ali pretvorbo datotek XSD

Datoteke XSD lahko odprete z naslednjimi programi: 

Opomba: Podatkovna shema XML (XSD). Ustvarjanje sheme XSD v Visual Studio .NET. Ustvarite vtipkani nabor podatkov. Pridobivanje informacij o strukturi predmeta DataSet. Nalaganje dokumentov XML in shem XSD v vtipkane in običajne nabore podatkov. Metode ReadXml in ReadXmlSchema. Pisanje vsebine in strukture vtipkanega in običajnega nabora podatkov. Metodi WriteXml in WriteXmlSchema

Vtipkani objekt DataSet. Branje in pisanje dokumentov XML

Podatkovna shema XML (XSD)

Podatkovne sheme 1 Natančen prevod dokumenta sheme XML -< Shema dokumenta XML> vendar bomo v nadaljevanju uporabili izraz "podatkovna shema XML". XSD (dokument sheme XML, XSD) so alternativni način pravila za izdelavo dokumentov XML. V primerjavi z DTD so sheme močnejše pri definiranju kompleksnih podatkovnih struktur, zagotavljajo jasnejši način opisovanja slovnice jezika in jih je mogoče enostavno posodobiti in razširiti. Shema XSD lahko vsebuje naslednje informacije:

  • Predstavitev odnosov med podatkovnimi postavkami, podobno kot odnosi s tujim ključem med tabelami v relacijski bazi podatkov;
  • predstavitev edinstvenih identifikatorjev, podobnih primarnemu ključu;
  • specifikacija tipa podatke za vsak posamezen element in atribut v dokumentu XML.

Če želite ustvariti podatkovno shemo v Visual Studio .NET, v glavnem meniju pojdite na Datoteka \ Novo \ Datoteka in s seznama predlog izberite Shema XML (glejte sliko 11.3). Pojavi se okno z napisom "Za začetek povlecite predmete iz okna Raziskovalca strežnikov ali okna Toolbox v delovni prostor (območje načrtovanja) ali kliknite z desno tipko miške" (slika 11.1):


riž. 11.1.

Bistvo je, da smo v načinu oblikovanja. Preklopite na kodni način s klikom na gumb (XML):

Prva vrstica je znani znak, da je shema dokument XML z korenskim elementom xs: sheme. Predpona xs: daje predpone vsem elementom sheme, da označuje njihov imenski prostor. Druga vrstica vsebuje dolg, podroben in pogosto popolnoma nepotreben opis sheme (primerjajte s podobno kodo za strani HTML). Za pravilno delovanje je dovolj, da se omejimo na naslednjo predstavitev:

Vendar pa vgrajeni upodabljalniki studia predvidevajo, da je ta glava prisotna, zato je ne bi smeli odstraniti. Ustvarjanje sheme, ki opisuje dani dokument XML v Visual Studio .NET, je dokaj enostavna naloga. Ustvarimo naslednji dokument XMLEasy.xml:

1

Preklopite na zavihek (Podatki) in si oglejte samo en zapis (slika 11.2).


riž. 11.2.

Shemo, ki opisuje ta dokument, lahko ustvarite na več načinov: v glavnem meniju izberite element "XML \ Create Schema" (slika 11.3, A), v načinu XML v kontekstni meni izberite isti element (slika 11.3, B), v podatkovnem načinu izberite ta element v kontekstnem meniju (slika 11.3, C) in na koncu v podatkovnem načinu kliknite na gumb v orodni vrstici XML (sl. 11.3, D).


riž. 11.3.

V vsakem primeru je shema dokumenta prikazana v obliki tabele (slika 11.4). Za zdaj zapustimo način sheme in preklopimo v način (XML).


riž. 11.4.

XML, ustvarjen iz okolja, ki opisuje strukturo dokumenta:

Vključuje tudi opis, potreben za nadaljnjo manipulacijo sheme z uporabo objektov ADO .NET. Izvirni dokument XMLEasy.xml ima zdaj povezavo do podatkovne sheme:

Dokument XMLEasy.xsd je bil samodejno ustvarjen v istem imeniku kot XMLEasy.xml.

Da bi se naučili razumeti sheme XSD, morate najprej delati z opisom podatkov v njihovi čisti obliki, brez dodatnih elementov. V tabeli 11.1 so navedeni nekateri najpreprostejši dokumenti XML in njihove sheme, ustvarjene brez vezave na objekte ADO .NET.

Tabela 11.1. Primeri sestavljanja shem XSD
Vsebina dokumenta XML Vsebina sheme XSD

1

Opis
V dokumentu XMLEasy.xml je element TOUR korenski element, ki vsebuje podrejeni element IDTOUR. Splošna shema za korenski element je naslednja:

: Vsebina elementa ...

Otroški elementi so opisani takole:

Vsebina dokumenta XML Vsebina sheme XSD

1 Ciper 25.000,00 rubljev Cena dveh bonov za odrasle vključuje ceno enega otroka (do 7 let) 2 Grčija 32.000,00 rubljev. Avgusta in septembra veljajo posebni popusti 3 Tajska 30.000,00 rubljev Ne vključuje letalskih vozovnic 4 Italija 26.000,00 rubljev Zajtrk v hotelu je vključen v ceno kupona 5 Francija 27.000,00 rubljev Dodatni izleti niso vključeni v ceno bona

Opis
Korenski element TABLE vsebuje element TOUR, ki je nato sestavljen iz skupine otrok. Element izbire določa izbiro drugih elementov, pri čemer "neomejena" vrednost atributa maxOccurs kaže, da so skupine TOUR lahko neomejene.

: :

Vsebina dokumenta XML Vsebina sheme XSD

1 Ciper 25.000,00 rubljev 1 Cena dveh bonov za odrasle vključuje ceno enega otroka (do 7 let)


riž. 11.5.
Opis
Za element IDTOUR je bil tip podatkov nastavljen na int, za element CLOSED - logični tip, za ostalo - tip niza privzeto. Podatkovni tip lahko spremenite neposredno v načinu podatkovne sheme XML, vendar je bolj priročno - v načinu sheme (v tem primeru se bo način imenoval DataSet) izberite vrsto podatkov s spustnega seznama (sl. 11.5):

V programsko opremo Za tečaj boste vse datoteke za to tabelo našli v mapi XSD (Koda \ Glava5 \ XSD).

Nastavitev vrste podatkov v dokumentu XML ( zadnji primer- zavihek. 11.1) je eden od načinov za omejitev vsebine. Za omejitev vrednosti določene vrste se uporabljajo dodatni atributi. V naslednjem fragmentu diagrama mora biti vrednost elementa PRICE v območju od 50 do 100:

Za omejitev dokumenta XML na nekatere fiksne vrednosti se uporablja naslednja konstrukcija:

Tukaj lahko element NAME vzame samo eno fiksno vrednost od petih imen držav.

Razvoj sheme XSD je precej mukotrpno delo. Vizualni elementi v Visual Studio .NET zelo olajšajo to nalogo. Za obvladovanje osnovnih konceptov je priporočljivo preučiti več samodejno generiranih shem dokumentov XML. V tabelah 11.2-11.4 so opisani osnovni elementi in atributi, ki jih lahko najdemo v tem primeru.

Tabela 11.2. Elementi sheme XSD
Element Opis
vse Ugnezdene elemente lahko podate v poljubnem vrstnem redu
opomba Nadrejeni elementi komentarja in
kaj Kateri koli ugnezdeni elementi
anyAtribute Kakršni koli atributi
appInfo Element komentarja. Določa naslov sheme
atribut atribut
atributGroup Skupina atributov
izbira Izbira drugih elementov. Analog operaterja "|" v DTD
kompleksna vsebina Omejitve oz razširitve modela kompleksne vsebine
complexType Element kompleksnega tipa
dokumentacijo Element komentarja. Zagotavlja informacije o shemi
element Element
razširitev Razširitve elementov
polje Izjava polja. Velja znotraj elementa za definiranje polj
skupina Skupina elementov
uvoz Uvoz deklaracije tipa iz druge sheme
vključujejo Vključitev druge sheme v obstoječi imenski prostor
ključ Nastavitev elementa ali atributa s ključem, ki kaže na drug element
keyref Določanje elementa ali atributa, na katerega kaže ključ
seznam Element, ki lahko vsebuje seznam vrednosti
na novo opredeliti Preglasitev že deklariranih elementov
omejitev Omejitev elementa
shema Element korenske sheme
izbirnik Izbirnik za izbiro elementov XML
zaporedje Zaporedje drugih elementov. Analog operaterja "," v DTD
simpleContent Model, katerega vsebina predstavlja samo znakske podatke
simpleType Element preprostega tipa
sindikat Element ali atribut, ki ima lahko več vrednosti
edinstven Element ali atribut, ki mora imeti edinstveno vrednost
Tabela 11.3. Atributi - omejitve sheme XSD
atribut Opis
naštevanje Seznam vrednosti
dolžina Dolžina
maxLength Največja dolžina
minLength Najmanjša dolžina
maxExclusive Največja vrednost
maxInclusive Vključno z največjo vrednostjo
minExclusive Najmanjša vrednost
minInclusive Vključno z minimalno vrednostjo
fractionDigits Število decimalnih mest v ulomnih številih
totalDigits Število števk
vzorec Vzorčna (vzorčna) vsebina elementov
privzeto Privzeta vrednost elementa ali atributa
elementFormDefault Nastavitev lastnosti lokalnega elementa, kot so globalno definirane
fiksno Fiksna vrednost elementa ali atributa
oblika Lokalno deklarirani elementi so definirani v posebnih primerih dokumenta
itemType Vrsta elementa seznama
memberTypes Vrsta članov, ki se uporabljajo v sindikatu
maxOccurs Največje število pojavljanj elementa
min Nastane Najmanjše število pojavljanj elementa
mešano Določanje elementa mešanega tipa
ime Ime elementa ali atributa
imenski prostor Imenski prostor
noNamespace Določitev lokacije dokumenta sheme,
ShemaLocation brez posledičnih imenskih prostorov
nivelable Določanje, da je element lahko nič (nič)
ref Nastavitev sklicevanja na globalno definiran element
schemaLocation Iskanje sheme
substitutionGroup Določanje zamenjave elementov z drugimi elementi
targetNamespace Nastali imenski prostor sheme
tip Vrsta artikla
uporaba Ali je predmet obvezen ali ne
vrednost Vrednost elementa sheme
xsi: nič Nastavitev dejanske vsebine praznega (NULL) elementa v dokumentu XML
xsi: schemaLocation Dejanska lokacija elementa v dokumentu XML
xsi: vrsta Pravi tip elementa v dokumentu XML
Podobne publikacije