- at gennemføre en xml - skema

, i denne artikel, skal vi se på, hvordan man kan skabe en xml - skema.for at forstå xml (extensible markup language) schemas vil vi gennemgå de grundlæggende elementer af xml - i denne indledning.det forventes, at du har en grundlæggende forståelse af xml - for denne brugsvejledning.,, xml - extensible markup language er en tekstbaseret cross platform sprog er det muligt at lagre data (som adresser i en adressebog) på en struktureret måde.xml - dokument forventes at være korrekt grammatik.derfor, når xml - dokumenter, som de burde være, velformede.en velformet dokument er følgende:,, lukket mærker (< - > < /- > eller < hi />)  , et element, er attributten skal være forsynet med to citater (< slik pris = " 0, 50 " >), xml - er fortrolige.med andre ord begynder og slutter, skal anvende den samme sag, en meget enkelt eksempel på en xml - dokument, er givet nedenfor for en slikbutik menu. <?xml - version = " 1, 0 " kodning = " utf - 8 "?>, < candystore >,   < slik >,     < productname selskab = " xyz " > slikkepinde < /navn >,     < id > 634847 < /id > og,     < pris > 0, 50 < /pris >, < /slik >,   < slik >,     < productname selskab = " abc " > pastiller < /navn >,     < id > 634812 < /id >,     < pris > 0, 75 < /pris >, < /slik >, < /candystore > den første udtalelse er forarbejdning undervisning.det fortæller parser arbejder vi med en særlig udgave af xml.resten af dokumentet er sammensat af vores tags og elementer.i ovenstående eksempel elementet " navn " har en attribut " virksomhedernes ".en god måde at huske en attribut, er at tænke på det som en egenskab, som noget kan være.- har et navn.navnet er forbundet med et bestemt selskab. i vores "hvordan" vi skal tage eksemplet ovenfor og skabe en xml - skema for det, som vil indeholde regler for, hvordan vores element er indhold, eller data, med andre ord, skal gives.(for eksempel, hvad form forventes for vores id?kan det have bogstaver?,, xml - skema, - en xml - skema erklærer metadata, der tildeler en særlig type, uanset om det er en enkel eller kompliceret, til stoffer og deres egenskaber i en xml - dokument.  , trin 1, lad os tage et kig på vores eksempel på slikbutikken. <?xml - version = " 1, 0 " kodning = " utf - 8 "?>, < candystore >,   < slik >,     < productname selskab = " xyz " > slikkepinde < /navn >,     < id > 634847 < /id > og,     < pris > 0, 50 < /pris >, < /slik >,   < slik >,     < productname selskab = " abc " > pastiller < /productname >,     < id > 634812 < /id >,     < pris > 0, 75 < /pris >, < /slik >, < /candystore >,   vores, candystore element har to, candy, underelementer.hver, slik, element har subelements af navn, id, og pris.det har også en attribut, selskab.da bygningen regler af syntaks, skal vi definere krav til udformning af vores data.disse begrænsninger kan være baseret på, hvordan oplysningerne vil blive brugt.hvis for eksempel vores slik er id skal være på et produkt faktura inden 6 tegn, så vil det hjælpe med at fastlægge vores begrænsninger.spørg dig selv et par spørgsmål om dine data: 1.er de data, må kun være cifre eller alfabetisk breve?2.er de data, er nødt til at være en vis længde?- eller et mindste eller største længde mere specifikt?3.er de data, skal have en særlig egenskab eller underelement angivet?eller er de frivillige?nu, hvor vi har nogle idéer om, hvilke spørgsmål vi må stille os selv, at vi kan komme videre.lad os bygge et sæt regler, før vi begynder at skabe vores xml schema kode. - 1.navnet på slik er påkrævet., 2.selskabets navn, kan ikke være mere end 30 tegn.det er valgfrit. 3.id - skal være alle cifre skal være præcis 6 cifre.det er påkrævet. 4.prisen er påkrævet.,, trin 2, med vores liste over regler, der kan skabe vores skema.vi er nødt til at fremlægge en erklæring af vores namespace ringede, xsd,.vi har brug for et navn, vi vil have, candyxsd, men xsd - er kort og nem at forstå.udtrykket xsd - vil blive brugt som præfiks i hele vores skema for at præcisere vores namespace., <?xml - version = " 1, 0 " kodning = " utf - 8 "?>, < xsd: skema xmlns: xsd = " http: //www.w3.org /2001 /xmlschema " > i dit skema, du er nødt til at definere de enkelte elementer som en særlig type.der er to typer, kan du bruge: simpel:, < xsd: elementnavn = ", nameofelement, " type = ", nameofbuilt insimpletype, " > eller < xsd: simpletype navn = ", nameofsimpletype, " >,    fremstillet type begrænsninger.,, < /xsd: simpletype >, komplekse, < xsd: complextype navn = ", nameofcomplextype, " >,    < xsd: sekvens >,    , elementer,,,     < /xsd: sekvens >, < /xsd: complextype > forskellen mellem de to er ganske enkel.en enkelt type kan have attributter eller element indhold.i fase 3 vil vi gennemgå de byggede i enkle former.,, trin 3, nu du er bekendt med element former, lad os se på et par af de til indbygning,.,, dato  , snor, decimal, tid, tal, lange, int, positiveinteger, dobbelt flyde, kan du se den fuldstændige liste over indbygget enkle former. med en indbygget type, vi kan skabe en enkelt type som pris - eller id, som ikke har en attribut eller underelement. < xsd: elementnavn = " pris " type = " xsd: decimal " />, < xsd: elementnavn = " id - " type = " positiveinteger " />,, trin 4, er billedet på viser strukturen i vores xml - skema.vi er nødt til at opbygge deres komplekse former og lægger begrænsninger på størrelse med vores pris og id - kort. for at sikre, at vores id, og selskabet attribut har en særlig form, vi kommer til at skabe 2 enkle former.vi vil tildele id af den type, idtype,.attributten selskab vil blive tildelt den type, companytype,.,     <xsd:simpleType name="idType">,        <xsd:restriction base="xsd:positiveInteger">,            <xsd:totalDigits value="6"/>,        </xsd:restriction>,    </xsd:simpleType>,     <xsd:simpleType name="companyType">,        <xsd:restriction base="xsd:string">,            <xsd:maxLength value="30"/>,        </xsd:restriction>,    </xsd:simpleType> , , , The restriction tag within the simple type element allows us to declare information regarding our simple type's facet. en facet, begrænser en enkelt type.vi kan sige ting som, hvordan de samlede tal for en numerisk værdi til minimumsperioden for vores snor værdi.vær sikker på at henvise til den indbyggede simple typer områder til listen.basen attribut angiver, hvilken type begrænsninger kan anvendes.med andre ord, ville det ikke være tilladt at anvende maxlength med alle numeriske værdier som decimaler eller dobbelt.den totaldigits facet er.,, løntrin 5, nu er du nødt til at bygge deres komplekse former, som vil indeholde alle de andre.hvis du husker fra tidligere, deres komplicerede former kan have underelementer og attributter.vores candystore element er, slik, subelement.det, slik, element har tre underelementer (productname, pris og id).det, productname element er en egenskab, og den skal derfor bygget til at modtage det, og dets værdi.vores slikbutik element indeholder alt,     < xsd: elementnavn = " candystore " type = " candystoretype " />,     < xsd: complextype navn = " candystoretype " >,         < xsd: sekvens >,             < xsd: elementnavn = " slik " type = " candytype " minoccurs = " 0 " maxoccurs = " ubegrænsede " />,         < /xsd -: sekvens >,     < /xsd: complextype > først og fremmest erklærer vi candystore element, som er en complextype.hvis du vil huske vores slik element kan gentages så mange gange, som ønskede.det er vores attributter minoccurs og maxoccurs kom ind.de fastsætter den maksimale og minimale hændelser.for eksempel, du kun ville det kun én gang, eller slet ikke.så minoccurs kunne stadig være 0 og maxoccurs ville være 1. vores slik - subelement er angivet som en type, candytype,.det her er stort.,     < xsd: complextype navn = " candytype " >,         < xsd: sekvens >,            ,, productname element vil gå her.forklaret nedenfor,,,,,,,             < xsd: elementnavn = " id - " type = " idtype " minoccurs = " 1 " maxoccurs = " 1 " />,             < xsd: elementnavn = " pris " type = " xsd: decimal " minoccurs = " 1 " maxoccurs = " 1 " />,         < /xsd: sekvens >,     < /xsd: complextype >, husker du simpletype oplysninger for vores id?det henviser til sin type, som blev kaldt idtype.her er productname element, som er skåret ud fra oven, så det kan forklares., <xsd:element name="productName" minOccurs="1" maxOccurs="1">,                 <xsd:complexType>,                     <xsd:simpleContent>,                         <xsd:extension base="xsd:string">,                             <xsd:attribute name="company" type="companyType"/>,                         </xsd:extension>,                     </xsd:simpleContent>,                 </xsd:complexType>,             </xsd:element> , Within the element tags of productName we declare a complexType. vi er nødt til at være i stand til at sætte i en snor værdi for productname element, så vi er nødt til at erklære en simplecontent type.dette vil gøre det muligt for os at have restriktioner eller forlængelser på vores tekst complextype.hvis vi ikke træffer disse foranstaltninger, så ville vi ikke være i stand til at få teksten til navnet på den slik mellem productname hundetegn.i vores tilfælde vil vi være i stand til at sætte i en snor værdi.vi har også en udvidelse af vores attribut kaldet selskab, der skal anmeldes.basen attribut til udvidelse element ovenfor angiver vores indbygget datatype (dvs. string, lange, osv.), simpletype, eller complextype.når vi lægger det hele sammen, vi er færdige.sørg for, at dit,   xsd - fil, har dette øverst:, <?xml - version = " 1, 0 " kodning = " utf - 8 "?>, < xsd: skema xmlns: xsd = " http: //www.w3.org /2001 /xmlschema " > og den xsd: skema tage bør lukkes med < /xsd: skema > til sidst efter alt.tag din afsluttet xsd - fil, og navnet på det candystore.xsd.det er gyldigt og velformet.,, trin 6, vores endelige skridt til at anvende vores xml - skema til vores oprindelige xml - filer,.,, candystore.xml, <?xml - version = " 1, 0 " kodning = " utf - 8 "?>,<candystore xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="candystore.xsd">,    <candy>,        <productName company="XYZ">Lollipops</productName>,        <id>634847</id>,        <price>0.50</price>,    </candy>,    <candy>,        <productName company="ABC">Mints</productName>,        <id>634812</id>,        <price>0.75</price>,    </candy>,</candystore> , ,candystore.xsd,, <?xml - version = " 1, 0 " kodning = " utf - 8 "?>,<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">,        <xsd:element name="candystore" type="candystoreType"/>,    <xsd:complexType name="candystoreType">,        <xsd:sequence>,            <xsd:element name="candy" type="candyType" minOccurs="0" maxOccurs="unbounded"/>,        </xsd:sequence>,    </xsd:complexType>,    ,    <xsd:complexType name="candyType">,        <xsd:sequence>,            <xsd:element name="productName" minOccurs="1" maxOccurs="1">,                <xsd:complexType>,                    <xsd:simpleContent>,                        <xsd:extension base="xsd:string">,                            <xsd:attribute name="company" type="companyType"/>,                        </xsd:extension>,                    </xsd:simpleContent>,                </xsd:complexType>,            </xsd:element>,            <xsd:element name="id" type="idType" minOccurs="1" maxOccurs="1"/>,            <xsd:element name="price" type="xsd:decimal" minOccurs="1" maxOccurs="1"/>,        </xsd:sequence>,    </xsd:complexType>,    ,    <xsd:simpleType name="idType">,        <xsd:restriction base="xsd:positiveInteger">,            <xsd:totalDigits value="6"/>,        </xsd:restriction>,    </xsd:simpleType>,    <xsd:simpleType name="companyType">,        <xsd:restriction base="xsd:string">,            <xsd:maxLength value="30"/>,        </xsd:restriction>,    </xsd:simpleType>,</xsd:schema>, ,Note:, Make sure your entire XML schema is within the <xsd:schema> </xsd:schema> hundetegn.,



Previous:
Next Page: