1 / 21

XML andmefailide valideerimine ja Transofrmatsioonid

XML andmefailide valideerimine ja Transofrmatsioonid. Mait Poska. Meeldetuletus(i). XML Reeglid Suured-väiksed tähed on olulised(tõstutundlik) Iga tag peab lõppema Struktuur tuleb hästi disainida Atribuutide väärtused jutumärkide vahele Üks ja ainult üks juurelement

jackie
Download Presentation

XML andmefailide valideerimine ja Transofrmatsioonid

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. XMLandmefailide valideerimine ja Transofrmatsioonid Mait Poska

  2. Meeldetuletus(i) • XML • Reeglid • Suured-väiksed tähed on olulised(tõstutundlik) • Iga tagpeab lõppema • Struktuur tuleb hästi disainida • Atribuutide väärtused jutumärkide vahele • Üks ja ainult üks juurelement • Elemendinimi ei tohi sisaldada tühikut

  3. Meeldetuletus(ii) • XMLi atribuudid • Atribuut võimaldab elemendile lisada infot • Aribuudi väärtused alati ülakomade või jutumärkide vahele! • Ühte atribuuti ei saa kasutada korduvalt ühe elemendi juures <kirje type=“midagi” type=“sedagi” /> • Artibuuti võib kasutada korduvalt erinevate elementide juures • <kirje type=“midagi” /> • <kirje type=“sedagi” />

  4. XMLi nimeruumid • Aitab välistada konflikte elementide nimetamisel

  5. Xmli valideerimine • Mis on xml’i valideerimine? • Mille jaoks seda teha tuleb? • Kuidas Seda tehakse? • Milline on korrektne XML?

  6. Kuidas seda saavutada? • DTD – Document TypeDefinition • XSD – XMLi skeemifail (XML schemadefinition) • Mõeldud XML andmefaili struktuuri täpseks struktureerimiseks • Võimalik on määrata • Elementide ning atribuutide nimetused ja väärtused • Elementide ja atribuutide andmetüübid

  7. DTD - Elemendid • Elemendi defineerimine • <!Element elemendi-nimi (elemendi-sisu)> • Elemendi andmete defineerimine • <!Element elemendi-nimi (#PCDATA)> • <!Element elemendi nimi (#CDATA)> • Elemendid alamelementidega • <!Element elemendi-nimi (alam1, alam2) •  Elemendi korduste arvu defineerimine • <!Element elemendi-nimi (alam)> = 1 • <!Element elemendi-nimi(alam+)> = miinimum 1 • <!Element elemendi-nimi(alam*)> =null või rohkem • <!Element elemendi-nimi(alam?)> = 0 või 1

  8. DTD - Atribuudid • Üleüldine süntaks • <!ATTLIST elemnimiattrnimiattrtyypvaikimisvaartus> • Atribuutidest täpsemalt: • http://www.xmlfiles.com/dtd/dtd_attributes.asp

  9. DTD – Inline ja External • Inline • asub XML andmefailis • <!DOCTYPE juurelement [ <!Element ...]> • External • Hoitakse eraldi • Defineeritakse XMLis • <!DOCTYPE juurelementSYSTEM "fail.dtd">

  10. XSD • Vastab XMLi reeglitele • <?xmlversion="1.0" encoding="utf-8"?> • Ühe elemendi defineerimine: <?xmlversion="1.0" encofing="utf-8"?> <xs:schemaxmlns:xs="http://www.w3.org/29asd> <xs:elementname="teade" type="xs:string" /> </xs:schema> • Aga kui elemente on rohkem....

  11. XSD – erinevad atribuudid • complexType – element, mille sisse saab teisi elemente paigutada • Sequence/all/choice – kas elementide järjestus on oluline • Name – elemendi või atribuudi nimetus • Type – andmete tüüp • maxOccurs/minOccurs – elementide korduste arv

  12. XSD – Automaatne genereerimine kasutades visualStudiot • DEmo

  13. XSD – Automaatse genereerimise probleemid • Automaatse genereerimise puhul kasutatakse XMl andmefailis olevat infot • Numbrilised väärtused • Andmetüübid • Numbriliste väärtuste suurused • Elementide järjestus

  14. XSD - Meelespea • Usalda, aga kontrolli

  15. XSD ja DTD võrldus • DTD • Esimene meetod, mida kasutatid XML andmefaili valideerimiseks • Ülesehitus on lihtne ja minimalistlik • Kasutatakse enimlevinud andmetüüpe • XSD • Võimaldab väga detailselt kirjeldada andmestruktuure • Ülesehitus võib tunduda keerulisem • OOP põhimõtted

  16. XSD Põhjal näidisandmete genereerimine • http://msdn.microsoft.com/en-us/library/aa302296.aspx

  17. XSL • XMl-failidest andmete tekstiline eraldamine • Järgib XMl’i reegleid • Võimaldab xml-failist sobivaid andmeid välja küsida • Xpath • Mõeldud elementide ja atribuudite vahel liikumiseks

  18. XSL – Mõningad reeglid • Eelpool mainitud: Järgib XMl’i reegleid • Reeglid • XML’i tüübideklaratsioon • Vaba rida ja tühik deklaratsioonirea ees on keelatud • Atribuut xmlns:xsl määrab, et kõik alguselga XSL elemendid kuuluvad konstandi määratud nimeruumi ning ei saa sealtkaudu muude elementidega segamini minna

  19. XSL – Mõningad Reeglid(II) • XSL:output määrab väljundi • Html/text/XML • XSL:Template Määrab koha, kus küsitakse andmeid

  20. XSL – Mõningad elemendid • <xsl:value-ofselect="elemendiasukoht" /> • <xsl:for-each .... /> • <xsl:if test="tingimus" /> • <xsl:choose> • <xsl:when test="tingimus"> • .... • </xsl:when> • <xsl:otherwise> • ... • </xsl:otherwise> • </xsl:choose> • http://minitorn.tlu.ee/~jaagup/kool/java/kursused/10/xmlrak/trykk/xmlrak.pdf

More Related