Meny
Är gratis
registrering
Hem  /  Råd / Öppnar XSD-filer. XML-schema - en beskrivning av strukturen för XML-dokument Hur man öppnar och läser ett xsd-dataskema

Öppnar XSD-filer. XML-schema - en beskrivning av strukturen för XML-dokument Hur man öppnar och läser ett xsd-dataskema

XSD används för traditionell korsstygn. Lösningsutvecklaren är HobbyWare. Detta är ett ganska vanligt format för dessa ändamål.

Beskrivning

XSD-schemat ersatte .PAT-formatet, som också användes av PCStitch, vilket orsakade viss förvirring. Dessa filer innehåller allt du behöver för broderi, i synnerhet en färgförklaring och en beskrivning för efterföljande arbete. Programmet Mönster Maker för korsstygn hjälper dig att se material av denna typ.

Dokument

XSD används inte bara i broderier. Filer med liknande tillägg avgör vilka attribut och element som kan visas i ett XML-dokument och fastställer också förhållandet mellan det beståndsdelar... Dessa material interagerar med ett särskilt strukturbeskrivningsspråk angivna filer... Syftet med schemat är att definiera en XSD-klass som kan användas som ett alternativ till DTD-filer. Ibland under drift kan olika fel uppstå. Om du till exempel ser meddelandet "XSD-schemavalidering misslyckades" försöker du antagligen associera material till ett olämpligt program. Applikationer som är lämpliga för att arbeta med formatet kommer att diskuteras nedan.

Syntext Serna

Hantera ett fel som "Filen matchar inte XSD-schemat" hjälper den här applikationen... Det handlar om funktionell, kommersiell XML. Serna fungerar med alla tillgängliga stationära system: Mac OS X, Linux och Windows. Redaktören har fullt stöd för XML-kataloger. Du kan skapa material som har en specifik struktur.

XSD-schemaskapande är en av de många funktionerna i denna applikation. Att infoga element underlättas i hög grad av det faktum att programmet har kontextuella listor med attribut och referensinformation om dem. Med Drag & Drop kan du dra och släppa objekt på menyfliksområdet. En ytterligare kontroll av filer under öppnandet har implementerats. Det är möjligt att arbeta med modeller och tabeller. Interaktion utförs även med stora och skrymmande material. Det finns en utökad navigering genom innehållet. För att göra det lättare att infoga olika mönster har Serna-redigeraren fått ett antal specialdesignade dialogrutor. Programmet har ett bekvämt och flexibelt gränssnitt. Det öppna materialet visas i huvudfönstret. Det presenteras fullständigt. Det finns listrutor här. Närvaron av en innehållsguide är också uppmuntrande.

Dokumentet styrs med en speciell stil. Med bara några tangenter kan du ändra profileringen öppna fil baserat på dina egna krav och efter din smak. Ett dokument i Serna kan delas upp och delas in i önskat antal sidor, med hänsyn till numreringen och en viss sekvens. Denna lösning är mycket effektiv när du arbetar med stora material som innehåller en betydande mängd kod. Vart i standardversion att visa information är bekvämt om du vill minimera avbrott i dokumentet, och detta är mycket viktigt om tabeller finns.

Oxygen XML Editor

För att hantera ett fel som "Filen matchar inte XSD-schemat", och denna redigerare kan också öppna filer av den angivna typen. Lösningen låter dig tolka dokument och markera element i texten med färg. Innehållsträdvyn tillåter användaren att visa olika dokumentnoder. Således kan du kontrollera riktigheten i koden, samt upptäcka fel och varningar. Redigering kan göras direkt från ZIP-arkivet.

Altova XMLSpy

Om du har ett XSD-schema framför dig kan du arbeta med det genom denna applikation. Det är ett kraftfullt verktyg för att skapa, felsöka och redigera dokument. Det finns versioner för Windows, Linux och Mac OS. Utvecklingen av funktionerna i denna lösning ökar effektiviteten i arbetet med system. Finns för att skapa projekt på olika nivåer från grunden. Det är möjligt att redigera befintligt material. I det här fallet tillhandahålls flera visningslägen - slutresultatet, hierarkisk tabell, text.

Den inbyggda visaren låter dig undvika fel och förenkla användningen av programmet. Applikationen har fått ett bekvämt syntaxmarkeringssystem. Det är möjligt att kommentera koden och ställa in bokmärken. Detta tillvägagångssätt förenklar navigering när du arbetar med stora projekt. Det finns en inbyggd omvandlare. Du kan importera databaser. Det finns ett verktyg för att jämföra två filer, vilket inkluderar ett bekvämt system för att visa resultatet. Denna plattform är kompatibel med andra liknande lösningar, vilket gör att du kan kombinera deras möjligheter.

Andra lösningar

Det finns flera fler program som stöder arbete med den typ av kretsar vi är intresserade av. Bland dem förtjänar Visual Studio särskild uppmärksamhet. Vi pratar om utvecklingen av Microsoft, som låter dig skapa olika applikationer.

En funktion hos denna plattform är ett brett utbud av tjänster tillgängliga på olika programmeringsspråk. Tjänster implementeras som middleware som är agnostisk arkitektur. Visual Studio integrerar ett stort antal funktioner som möjliggör utveckling i Windows. Verktyget har en ny miljö som gör det mycket enklare att implementera applikationer.

Du kan också arbeta med det format vi behöver genom en av följande applikationer: XML Studio, XML Notepad, JAPISoft EditiX, PSPad editor, Notepad. Så vi fick reda på hur man åtgärdar felet som "Matchar inte XSD-schema", samt genom vilka program som ska interagera med filer.

XSD-filer används ofta i kombination med XML-dokument. De ger beskrivningar av XML-filen och de regler som den följer. Användare undrar ofta hur man öppnar en XSD. Grundläggande verktyg förinstallerade på datorn är lämpliga för visning, men ytterligare programvara krävs för redigering.

Allmän beskrivning av xsd-format

Tillägget ".xsd" är en förkortning för XML Schema Definition. Huvuduppgiften för filer med detta tillägg är att beskriva XML. De kan innehålla beskrivningar av strukturen, enskilda element, attribut. Informationen innehåller texten på XML Schema-beskrivningsspråket. Detta språk används för att skapa programvara för att arbeta med XML. Delar av andra ordböcker, inte bara XML-schema, kan integreras i ".xsd".


Ursprungshistoria

{!LANG-141227abce260e71b6dd45c06526f364!}

{!LANG-be401c9f1777f306d6d0100a7c8ed3dc!}

{!LANG-76dce8c8d7bac03b186f1facbbd738ec!}

{!LANG-f474c34d7560af7150f0f812aecc3e69!}


{!LANG-e10cee7357eeed289838def31bcca4f9!}

{!LANG-860609f265548a4c5b53845ae7881dff!}

{!LANG-c4c3983a6e9b7ade8f34e9b15350301b!}:

  • {!LANG-40bb804a11374e8e74b5374da57c44fe!}

{!LANG-4ee109bbdaa93a705dd9a852622af4c4!}

{!LANG-2c7c801bd992443199bd9bd924634eba!}

{!LANG-c82f4d3cbed896ed7142247cf03ba05e!}

{!LANG-f8339931cf32d4d2805871cd68352154!}

{!LANG-8909dc0a4fe3f1606e41e5767d07cfa6!}

  • {!LANG-3cbbb4f4fbabd9399e32625b61d4dc73!}

{!LANG-29b7e945e2c12ccbf48af60fb464e17b!} {!LANG-d241ed446445a725f6362568f61cc6c3!}{!LANG-88fc830a7eebefcdf6c836d6eff8e206!}

{!LANG-8980ceb5ad7ebdb9cb50c62879ce0e97!}

{!LANG-2a07cf4a1d8ed705e51d3799ad5a130f!}

  • {!LANG-8789f8d2a2be3943e6a8e817b2e599fe!}

{!LANG-d6957db444fd5a143a27df1b228913c0!}

{!LANG-7681e08837d728dd8fa2f1b6e8ec0aef!}

Även om du vet vad xsd-formatet är än att öppna den här typen av fil, kan det ibland uppstå ytterligare problem. Den största svårigheten är att det finns två varianter av XML Schema Definition-filer. Den första är text som innehåller kommandon och beskrivningar. De öppnas med ovanstående metoder. Men en andra, mindre vanlig typ har utvecklats - korsstygnmönster. Det här är bilder, inte text.


Externt är filerna av de två typerna inte olika, de har samma förlängning. Om du får ett fel när du försöker öppna ett dokument online eller använda en textredigerare betyder det att det finns en bild framför användaren. Den kan bara öppnas på ett sätt - med ett program som är särskilt skärpt för broderimönster.

Verktyget är installerat på en dator. Programmet för att öppna xsd kan laddas ner gratis och med ryska översättning. I Pattern Maker For Cross Stitch kan du inte bara visa xsd-schemat utan också redigera och skapa dina egna filer.

Att hantera formatet är inte svårt. Även en nybörjare kommer att kunna öppna en fil första gången med en textredigerare eller anteckningsblock förinstallerat på en dator.

Filer med XSD-tillägget orsakar ofta förvirring bland användarna. Detta beror på att det finns två typer av detta format, som representerar helt olika typer av information. Var därför inte upprörd om en bekant applikation inte kunde öppna den. Kanske kom en annan typ av fil precis över. Vilka är skillnaderna mellan XSD-filer och vilka program som kan öppna dem kommer att diskuteras senare.

XML-dokumentschema ( XML Schema Definition) är den vanligaste XSD-filtypen. Han har varit känd sedan 2001. Dessa filer innehåller ett brett utbud av information som beskriver XML-data - dess struktur, element, attribut med mera. Det finns många sätt att öppna den här typen av fil. Låt oss ta ett exempel på det enklaste exemplet på detta format (inköpsorderschema) som erbjuds av Microsoft.

Metod 1: XML-redigerare

XML-redigerare är mer lämplig programvara för att öppna XSD-filer eftersom de används för att skapa dessa typer av filer. Låt oss överväga några av dem mer detaljerat.

XML-anteckningsblock

Detta program är en variant av Microsofts Notepad som är särskilt utformad för att arbeta med XML-filer. Följaktligen kan XSD öppnas och redigeras fritt med hjälp.


XML Notepad har många fler funktioner än de program som beskrivs ovan. Förutom syntaxmarkering bestämmer den automatiskt dokumentets struktur och visar den i en form som är bekväm för visning och redigering.

Oxygen XML Editor

Till skillnad från den föregående är denna programvaruprodukt ett mycket allvarligare verktyg för att utveckla XML-dokument. Den presenterar XSD-filens struktur i form av ett färgglatt bord.


Detta program är multiplatform både som en fristående applikation och som ett Eclipse-plugin.

Du kan också öppna XSD-filer med "tyngre" programvara, till exempel Microsoft Visual Studio, Progress Stylus Studio och andra. Men de är alla verktyg för proffs. Det är ingen mening att installera dem bara för att öppna filen.

Metod 2: Webbläsare

XSD-filer kan öppnas i vilken webbläsare som helst. För att göra detta kan du använda snabbmenyn eller menyn på samma sätt. "Fil" (om tillgängligt i webbläsaren). Eller så kan du helt enkelt skriva sökvägen till filen i webbläsarens adressfält eller dra och släppa den i web explorer-fönstret.

Så här ser vårt prov ut när det öppnas i Google Chrome:


Och det är det, men redan i Yandex Browser:


Och här är han redan i Opera:


Som du kan se finns det ingen grundläggande skillnad. Det bör bara noteras att webbläsare endast är lämpliga för visning av filer av denna typ. Du kan inte redigera något i dem.

Metod 3: Textredigerare

På grund av sin enkla struktur kan XSD-filer enkelt öppnas av nästan vilken textredigerare som helst och kan fritt ändras och sparas där. Skillnaderna ligger bara i bekvämligheten med visning och redigering. De kan öppnas direkt från textredigeraren eller från snabbmenyn genom att välja alternativet "Att öppna med".

Här är exempel på hur du kan göra detta med olika textredigerare:

Anteckningsbok

Detta är det enklaste programmet att arbeta med textfilersom standard närvarande i någon windows-versioner... Så här ser vårt prov ut, öppnat i Anteckningar:


På grund av bristen på bekvämlighet blir det svårt att redigera XSD-filen i den, men för en snabb bekantskap med innehållet kan "Anteckningar" mycket väl vara användbart.

En annan oföränderlig windows-komponent, i jämförelse med "Notepad" har mer avancerad funktionalitet. Men detta återspeglas inte i öppnandet av XSD-filen, eftersom den här redigeraren inte ger någon extra bekvämlighet för visning och redigering av den.


Som du kan se, med undantag för programgränssnittet, har ingenting i visningen av XSD-filen, jämfört med anteckningar, förändrats.

Anteckningar ++

Detta program är samma "Notepad", men med ett antal ytterligare funktioner, vilket framgår av plustecken i namnet. Följaktligen ser en XSD-fil som öppnas i Notepad ++ mycket mer attraktiv ut tack vare syntaxmarkeringsfunktionen. Detta gör redigeringsprocessen mycket bekvämare.

Du kan också öppna XSD-filer i mer komplexa ordbehandlare som MS Word eller LibreOffice. Men eftersom dessa mjukvaruprodukter är inte avsedda specifikt för redigering av sådana filer, de kommer att visas exakt samma som i "Anteckningar".

Korsstygnmönster

En annan aspekt av XSD-förlängningen är korsstygnsmönstret. Följaktligen i detta fall detta format filen är en bild. Förutom själva bilden innehåller dessa filer också en färgförklaring och detaljerad beskrivning för att skapa broderier. Det finns bara ett sätt att öppna en sådan XSD-fil.

Pattern Maker For Cross Stitch är huvudverktyget för att öppna broderimönster, eftersom det är speciellt utformat för att skapa och redigera dem. Så här ser Pattern Makers XSD-fil ut.


Programmet har en rik uppsättning verktyg. Dessutom kan det lätt russifieras. Dessutom distribueras den gratis.

Således är XSD-filformatet i grunden ett XML-dokumentschema. Om den inte öppnas textredigerare, vilket innebär att vi har en fil som innehåller ett korsstygnmönster.

Anteckning: XML Data Schema (XSD). Skapa ett XSD-schema i Visual Studio .NET. Skapa ett skrivet DataSet. Få information om strukturen för ett DataSet-objekt. Läser in XML-dokument och XSD-scheman i typade och vanliga datasatser. ReadXml och ReadXmlSchema metoder. Skriva innehållet och strukturen för ett typat och vanligt DataSet. WriteXml och WriteXmlSchema Methods

Ett typat DataSet-objekt. Läser och skriver XML-dokument

XML-dataskema (XSD)

Dataskeman 1 Exakt översättning av XML Schema Document -< xML-dokumentschema\u003e emellertid kommer vi att använda termen "XML Data Schema" i det följande. XSD (XML Schema Document, XSD) är alternativt sätt regler för konstruktion av XML-dokument. Jämfört med DTD: er är scheman mer kraftfulla för att definiera komplexa datastrukturer, ger ett tydligare sätt att beskriva språkets grammatik och kan enkelt uppgraderas och utvidgas. Ett XSD-schema kan innehålla följande information:

  • representation av förhållanden mellan dataobjekt, liknande utländska nyckelrelationer mellan tabeller i en relationsdatabas;
  • representation unika identifieraresom liknar den primära nyckeln;
  • typspecifikation data för varje enskilt element och attribut i XML-dokumentet.

För att skapa ett dataskema i Visual Studio .NET, gå till File \\ New \\ File i huvudmenyn och välj XML-schema från malllistan (se Fig. 11.3). Ett fönster visas med inskriptionen "För att starta, dra objekt från fönstret Server Explorer eller Verktygslåda till arbetsområdet (designområdet) eller högerklicka" (Figur 11.1):


Figur: 11.1.

Saken är att vi är i designläge. Vi växlar till kodläget, för vilket vi trycker på knappen (XML):

Den första raden är den välbekanta indikationen på att schemat är ett XML-dokument med ett xs: schema root-element. Prefixet xs: prefixar alla schemaelement för att ange deras namnområde. Den andra raden innehåller en lång, detaljerad och ofta helt onödig beskrivning av schemat (jämför med liknande kod för HTML-sidor). För korrekt funktion är det tillräckligt att begränsa oss till följande representation:

Men studioens inbyggda renderare antar att denna rubrik finns, så den bör inte tas bort. Att skapa ett schema som beskriver ett visst XML-dokument i Visual Studio .NET är vackert enkel uppgift... Låt oss skapa följande XMLEasy.xml-dokument:

1

Byt till (Data) -fliken och se bara en post (Bild 11.2).


Figur: 11.2.

Det finns flera sätt att skapa ett schema som beskriver detta dokument: I huvudmenyn väljer du "XML \\ Create Schema" (Fig. 11.3, A), i XML-läge i innehållsmeny välj samma objekt (bild 11.3, B), i dataläget, välj det här alternativet i snabbmenyn (bild 11.3, C), och slutligen, i dataläget, klicka på knappen i XML-verktygsfältet (bild 11.3, D).


Figur: 11.3.

I vilket fall som helst visas dokumentdiagrammet i form av en tabell (Bild 11.4). Låt oss lämna schemaläget för tillfället och byta till (XML) -läge.


Figur: 11.4.

Miljön genererade en XML som beskriver dokumentets struktur:

Den innehåller också den beskrivning som krävs för att ytterligare manipulera schemat med ADO. NET-objekt. I originaldokumentet XMLEasy.xml uppstod en länk till dataschemat:

XMLEasy.xsd-dokumentet skapades automatiskt i samma katalog som XMLEasy.xml.

För att lära dig att förstå XSD-scheman måste du först arbeta med beskrivningen av data i ren form, utan ytterligare element. Tabell 11.1 listar några av de enklaste XML-dokumenten och deras scheman, genererade utan att binda till ADO .NET-objekt.

Tabell 11.1. Exempel på att komponera XSD-scheman
XML-dokumentinnehåll XSD-schemainnehåll

1

Beskrivning
I ett XMLEasy.xml-dokument är TOUR-elementet rotelementet som innehåller IDTOUR-underelementet. Allmänt system för rotelementet ser ut så här:

: Elementinnehåll ...

Barnelement beskrivs så här:

XML-dokumentinnehåll XSD-schemainnehåll

1 Cypern RUB 25.000,00 I priset för två vuxenkuponger ingår priset på ett barn (upp till 7 år) 2 Grekland 32 000,00 gnugga. Särskilda rabatter gäller i augusti och september 3 Thailand RUB 30000,00 Inte inklusive flygbiljett 4 Italien 26 000,00 gnugga. Frukost på hotellet ingår i kupongpriset 5 Frankrike RUB 27.000,00 Ytterligare utflykter ingår inte i kupongpriset

Beskrivning
Roten TABLE-elementet innehåller ett TOUR-element som i sin tur består av en grupp barn. Valelementet definierar valet av andra element, med värdet "obegränsat" för attributet maxOccurs som indikerar att TOUR-grupper kan avgränsas.

: :

XML-dokumentinnehåll XSD-schemainnehåll

1 Cypern RUB 25.000,00 1 I kostnaden för två vuxna kuponger ingår priset för ett barn (upp till 7 år)


Figur: 11.5.
Beskrivning
För IDTOUR-elementet ställdes int-datatypen in, för elementet STÄNGD - den booleska typen, för resten - strängtypen som standard. Du kan ändra datatypen direkt i XML-dataskemaläget, men det är bekvämare - i schemaläget (i det här fallet kommer läget att kallas DataSet), välj datatyp från listrutan (Bild 11.5):

I programvara För kursen hittar du alla filer i denna tabell i XSD-mappen (Code \\ Glava5 \\ XSD).

Att ställa in datatypen i ett XML-dokument (det sista exemplet är tabell 11.1) är ett sätt att begränsa innehållet. Ytterligare attribut används för att begränsa ett värde av en viss typ. I följande fragment av diagrammet måste värdet på PRICE-elementet ligga i intervallet 50 till 100:

Följande konstruktion används för att begränsa ett XML-dokument till vissa fasta värden:

Här kan NAME-elementet bara ta ett fast värde av fem landsnamn.

Att utveckla ett XSD-schema är ett ganska noggrant jobb. Det visuella i Visual Studio .NET gör denna uppgift mycket enklare. För att behärska de grundläggande begreppen är det lämpligt att studera flera automatiskt genererade XML-dokumentscheman. Tabeller 11.2-11.4 beskriver de viktigaste elementen och attributen som finns i detta fall.

Tabell 11.2. XSD-schematelement
Element Beskrivning
allt Kapslade element kan specificeras i valfri ordning
anteckning Förälder till kommentarer och
några Eventuella kapslade element
anyAttribute Eventuella attribut
appInfo Kommentarelement. Anger schemans titel
attribut Attribut
attributGroup Attributgrupp
val Val av andra element. Analog av operatören "|" i DTD
komplexa Innehåll Begränsningar eller modelltillägg innehåll av komplex typ
complexType Komplex typelement
dokumentation Kommentarelement. Ger information om schemat
element Element
förlängning Elementförlängningar
fält Fältdeklaration. Gäller inuti ett element för att definiera fält
grupp Grupp av element
importera Importera en typdeklaration från ett annat schema
omfatta Inkluderar ett annat schema i ett befintligt namnområde
nyckel- Ställa in ett element eller attribut med en nyckel som pekar på ett annat element
keyref Ange det element eller attribut som pekas på av en nyckel
lista Ett element som kan innehålla en lista med värden
omdefiniera Åsidosättande av redan deklarerade element
restriktion Elementbegränsning
schema Root schema element
väljare Väljare för att välja XML-element
sekvens En sekvens av andra element. Analog av operatören "," i DTD
enkel innehåll En modell vars innehåll endast representerar teckendata
enkel typ Element av enkel typ
union Ett element eller attribut som kan ha flera värden
unik Ett element eller attribut som måste ha ett unikt värde
Tabell 11.3. Attribut - XSD-schemabegränsningar
Attribut Beskrivning
uppräkning Lista över värden
längd Längd
maxlängd Maximal längd
minLängd Minsta längd
maxExklusiv Maximalt värde
maxInclusive Maximalt värde inklusive
minExklusiv Minsta värde
minInklusivt Minimivärde inklusive
fraktionSiffror Antal decimaler i bråktal
totalDigits Antal siffror
mönster Exempel på (mönster) innehåll av element
standard Standardvärdet för ett element eller attribut
elementFormDefault Ställa in egenskaper för ett lokalt element som globalt definierat
fast Fast värde för ett element eller attribut
form Lokalt deklarerade element definieras i specifika dokumentinstanser
objekttyp Listtypstyp
memberTypes Den typ av medlemmar som används i facket
maxOccurs Maximalt antal förekomster av ett element
minOccurs Minsta antal förekomster av ett element
blandad Ställa in ett element av blandad typ
namn Element- eller attributnamn
namnområde Namnområde
noNamespace Ange plats för det schematiska dokumentet,
SchemaLocation har inga resulterande namnområden
nillable Att bestämma att ett element kan vara noll (noll)
ref Ställa in en länk till ett globalt definierat objekt
schemaLocation Hitta schemat
substitutionGroup Bestämma utbyte av element med andra element
targetNamespace Det resulterande schemans namnområde
typ Objekttyp
använda sig av Krävs en vara eller inte
värde Schemaelementvärde
xsi: noll Ställa in det faktiska innehållet i ett tomt (NULL) element i ett XML-dokument
xsi: schemaLocation Elementets faktiska plats i XML-dokumentet
xsi: typ Den verkliga typen av element i XML-dokumentet

Jag skulle vilja berätta på ett ställe om en ganska typisk uppgift när jag arbetar med XML, nämligen om att skapa XMLbaserat på den befintliga. Denna operation kommer att bestå av flera steg, under genomförandet av vilka ytterligare uppgifter kommer att lösas, till exempel:

  • Varelse XMLbaserad XSD, och vice versa.
  • Serialisering och deserialisering av objekt.
  • Skapa en klass för framtida serialisering från XMLeller XSD.
Innan jag börjar planerar jag att läsaren känner till orden XMLoch XSD... Rörande XMLJag tror att det inte finns något problem med detta, men vad gäller XSDjag kan ha frågor om vad det är. Kortfattat:
XSDär språket att beskriva XML... Och om du tittar på innehållet i filen som innehåller den här beskrivningen, uppstår frågan, varför beskriv de till synes uppenbara taggarna för din XML? Men tänk dig att du integrerar med något externt system, och för datautbyte vill du använda formatet XML... Så, XSDlåter dig beskriva för varje element dess namn, möjliga attribut, obligatoriska fält eller attribut, göra det tydligt att innehållet i en tagg bara kan innehålla ett internt element ( ) och inte mer, eller en nod kan ha en sekvens av element (< a\u003e ... ). När externt system är din, kan det inte finnas några problem, men när det är en tredje part, då given beskrivning tvärs över XSD, kommer att vara ett verktyg för att lösa tvister med formatet, och med hjälp av verktygen kan du kontrollera att alla XML originalformat.
Så vad ska vi göra för att lära oss att stämpla XMLbaserat på ditt riktmärke? Jag kommer att beskriva allt i ordning.

Tillgängliga:
Vad är XML (xmlfil.xml)sparas i textformat till en fil. Nedan är texten:

< catalog > < book id = " bk101 " > < author > Gambardella, Matthew < title > XML-utvecklarens guide < genre > Dator < price > 44.95 < publish_date > 2000-10-01 < description > En djupgående titt på att skapa applikationer med XML. < book id = " bk102 " > < author > Ralls, Kim < title > Midnatt regn < genre > Fantasi < price > 5.95 < publish_date > 2000-12-16 < description > En före detta arkitekt kämpar för företags zombies, en ond trollkarl och hennes egen barndom för att bli drottning av världen.

Steg för att skapa en ny:

  1. Använd först verktyget XSD.exeeller använder online tjänster (sök efter "xml till xsd" en av dem www.freeformatter.com/xsd-generator.html), vi kommer att skapa från det befintliga XMLdess primitiva XSDbeskrivning. Vid utgången kommer vi att ha en helt, automatiskt skapad output.xsd en fil som redan används men kanske inte är komplett.
  2. Vidare baserat på output.xsd kommer klasser i C # att skapas xmlclass.cs.Efter det lägger vi till det i vårt projekt. Du kan skapa en klass med XSD.exe,eller xsd2kod eller någon onlinetjänst.
  3. Vi är nu redo att använda filklasserna xmlclass.cs... Därför kommer vi att skapa och fylla med datainstanser xmlklassoch sedan använder vi serialiseringsprocessen för att konvertera objekt till XML och spara den sedan ny fil... Således får vi XMLbaserat på tillgängligt.
Låt oss börja!

Steg 1. Skapa XSD från XML.

Så här är de sätt jag använder mig av:
  1. Verktyg xsd.exe - skapare Microsoft.
  2. Verktyg xsd2code.exe - en tredjepartsapplikation som kan göra allt på samma sätt som xsd.exe, men tillgänglig för nedladdning direkt (på det här ögonblicket blev betald med Rättegång period).
  3. Användning av onlinetjänster.
För att ta emot måste du XSD.exe, måste du lägga någon Microsoft SDK: er, som kommer med den här applikationen. Tyvärr, för tillfället innehåller ingen av studiorna i deras kit detta verktyg.

Länk för att ladda ner och installera en av SDK:
Windows SDK för Windows 7 och .NET Framework 4.

Låt oss använda sökningen och hitta filen xsd.exe, varefter (för att förenkla vårt arbete), kopiera det till mappen som skapats i diskens rot C: \\ xmltoxsd... Därefter kopierar vi i samma mapp xmlfil.xml och allt är klart att börja.


Vi riva av " Kommandorad"(Start -\u003e Kör -\u003e" cmd "), gå till vår katalog och ring med standardparametrarna xsd.exegenom att skicka vår xmlfil.xml som en parameter:


Och vi ser att en fil dök upp bredvid xmlfil.xsd med innehåll.


Det är allt! Dessa åtgärder är tillräckliga för att skapa en primitiv XSDfil att arbeta med. Men du borde förstå att du själv xsd.exesom alla andra verktyg vet den ingenting om vilka typer av dina fält (därför kommer nästan alltid typen av fält att vara sträng), samt om alla variationer av attribut och parametrar. Det vill säga om någon tagg inte har något attribut i din XML, då kommer det inte att finnas i beskrivningen. därför XMLbör vara det mest kompletta och om ett element kan innehålla flera underfält är det bättre att lägga till minst två så att xsd.exe insåg att det var en samling.

Syntax XSDinte särskilt komplicerat, så om du skriver en tillräckligt allvarlig beskrivning kan du behöva arbeta med en fil.

Steg 2. Skapa klass från XSD.

För att skapa en klass i C # måste vi återanvända xsd.exe men med en annan parameter / klasserpasserar vägen till vår xmlfil.xsd.


Efter körning visas filen xmlfile.cs, vars innehåll visas nedan i komprimerad form:


Som du kan se, för det inre elementet katalogklass skapades katalogBokvars fält motsvarar fält i XMLoch fältet Idmarkeras som attribut. Xsd.exe förstod rätt vad som finns inuti katalogsamlingen av böcker lagras, så egenskapen dök upp Objektför att fylla ut barnsamlingen.
Kommentar: xsd.exe kan inte lägga till kommentarer till de resulterande klasserna och fälten. I beskrivningen XSDdet finns ett element som heter< xs:annotation > , som oftast innehåller< xs:documentation >, inuti vilken fältbeskrivningen är placerad. I teorin ska den placeras i /// beskrivningen, men just nu xsd.exe vägrar att lägga till text i beskrivningen, så du måste tillgripa alternativ som xsd2kod eller onlinetjänster.

Steg 3. Serialisering av objekt till XML.

De resulterande klasserna finns i filen xmlfil.cs... Lägg sedan till dess innehåll eller själva filen i projektet Visuell Studio, varefter du kan arbeta med honom. Jag kommer att skapa ett demobokobjekt och sedan spara det i en fil i formatet XML.

Privat ogiltigt exempel () ( // Skapa den första boken var book1 \u003d ny katalogBook () (författare \u003d "King", beskrivning \u003d "Mycket intressant bok", genre \u003d "Fantasy", pris \u003d 22.ToString (), id \u003d "42011", title \u003d "(! LANG: It" }; !} // Skapa andra bok var book2 \u003d new catalogBook () (author \u003d "O" Brien, Tim ", beskrivning \u003d "Microsofts .NET-initiativ utforskas i detalj i denna djupa programmerares referens.", genre \u003d "Dator", pris \u003d 36.ToString (), id \u003d "30012", titel \u003d "Microsoft .NET: The Programming Bible" }; // Skapa rotelementet i katalogen som innehåller de två böckerna ovan var katalog \u003d ny katalog () (Objekt \u003d ny (bok1, bok2)); // Innehåller XML för katalogobjektet var xmlCatalog \u003d Serialize (katalog); // Skriv raden till filen // TODO Gjord för demonstration. Önskvärt genom att ringa Serialize-metoden för att överföra Stream till filen Fil .WriteAllText ("Output.xml", xmlCatalog); ) privat sträng Serialize (TType sourceObject) (om (sourceObject \u003d\u003d null) (retursträng .Empty;) // Använd XmlSerializer för att konvertera till XML-sträng var xmlserializer \u003d ny XmlSerializer (typeof (TType)); var stringWriter \u003d ny StringWriter (); använder (varwriter \u003d XmlWriter .Create (stringWriter, new XmlWriterSettings () (Indent \u003d true))) (xmlserializer.Serialize (writer, sourceObject); return stringWriter.ToString ();)) Efter start och öppning Output.xml du kan se att vi räddade som vi ville (bottenfil - " Skapad av kod").