Download de presentatie
De presentatie wordt gedownload. Even geduld aub
GepubliceerdMargaretha Smeets Laatst gewijzigd meer dan 10 jaar geleden
1
XML en het gebruik ervan in de DMFA
W. Heirman, Functioneel analist, SmalS-MvM
2
Inhoud XML - algemeen De DMFA & XML Syntaxis DTD, Schema Parsers
glossarium schema voorbeeld
3
Wat is XML ? eXtensible Markup Language
een syntaxis voor de beschrijving van documenten een meta-taal beschrijft de semantiek en de structuur niet alleen voor het Web
4
Waarom XML ? (1) Per definitie is een XML-document gestructureerd (men moet de schema’s en vormcontroles ervan opnieuw uitvinden voor het flat-formaat) Flexibiliteit (wijziging, toevoeging, uitbreiding) waarbij de impact op de toepassingen geminimaliseerd wordt Validatie van de documenten aan de bron en op gestandaardiseerde wijze Technologieën voor verwerking kosten weinig en zijn zeer goed verspreid (<>EDI) Vrij van licentie, standaard en genormaliseerd Dit is het goede moment ...
5
Waarom XML ? (2) Zelf-beschrijvend document
Open standaard, onafhankelijk van het platform, goed ondersteund Uitwisseling van gegevens tussen toepassingen Beschikbaarheid van vele gratis tools Leesbaar door een mens
6
XML - structuur en semantiek
Een XML-document vormt een boomstructuur De namen van de elementen en attributen weerspiegelen (als mogelijk) het type element <Person SequenceNr=“12”> <Name> <First>Albert</First> <Last>Einstein</Last> </Name> <Age>56</Age> </Person>
7
XML - syntaxis Een XML-document moet “goed gevormd” zijn:
openende en sluitende tags uniek root-element lege elementen beëindigd met /> geen overkoepeling van elementen attribuutwaarde tussen “” < en & alleen begin tags en entiteiten ... De parsers moeten de misvormde documenten verwerpen
8
XML - declaratie Elk document mag (zou moeten) beginnen met <?xml versie =“1.0” encoding=“UTF-8” standalone=“yes” ?> Versie: verplicht, steeds 1.0 Encoding: facultatief, standaard UTF-8 of UTF-16 Standalone: facultatief (yes indien geen externe entiteiten)
9
Structuur van een DTD-document
Document Type Definition Bepaalt de woordenschat Bepaalt de structuur waaraan een geldig document moet voldoen <!ELEMENT Person (Name, Age) > <!ATTLIST Person SequenceNr CDATA #REQUIRED > <!ELEMENT Name (First, Middle?, Last) > <!ELEMENT Age (#PCDATA) > <!ELEMENT First (#PCDATA)> <!ELEMENT Middle (#PCDATA)> <!ELEMENT Last (#PCDATA)>
10
Structuur van een DTD-document
De instantie van een XML-document kan verwijzen naar zijn DTD (intern of extern) <?xml version=“1.0” encoding=“UTF-8”?> <!DOCTYPE Person SYSTEM “ > <Person SequenceNr=“1”> ...
11
Structuur van een DTD-document
<Person SequenceNr=“1”> <Name> <First>Albert</First> <Last>Einstein</Last> </Name> <Age>56</Age> </Person> <Middle>Klein</Middle> <Person>
12
Structuur XML-Schema DTD-problemen : geen XML-syntaxis
geen typering van elementinhoud weinig uitbreidbaar
13
Structuur XML-Schema XML-Schema Alternatief : Relax NG, Schematron...
XML-syntaxis, rijke en uitbreidbare typering, mogelijkheid om het aantal elementen, kinderen te bepalen, zonder de orde te moeten bepalen lokale en globale definitie, aanbeveling W3C (2 mei 2001), complex Alternatief : Relax NG, Schematron...
14
Parsers of XML-processors
Gebruikt om een XML-document te lezen, om toegang te krijgen tot zijn inhoud en structuur Vaak in onderverwerking van een andere module. Niet-validerende Parser : rapporteert alleen de XML-syntaxisfouten Validerende Parser : rapporteert bovendien alle schendingen van de regels voorzien in een DTD of een schema
15
Parsers of XML-processors
Model dat de feiten beschrijft (event-driven) : het document wordt sequentieel gelezen en de parser genereert opeenvolgende evenementen overeenkomend met de opeenvolging van de entiteiten. API SAX (Simple API for XML) Boomstructuurmodel (object) de inhoud van het document wordt gelezen en omgevormd in een hiërarchische boomstructuur API DOM (Document Object Model)
16
Parsers Niet-validerende Validerende
XP - Java - wordt niet meer ondersteund Ælfred - Java Expath - C Validerende Xerces - Java, C, C++, Perl - DTD & Schema MSXML - C++, VB, - DTD & Schema (v4.0) Oracle XML - Java, C, C++ - DTD & Schema Crimson (ProjectX, Xerces2) - Java - DTD libxml2 (Gnome) - C, Perl - DTD Sun Multischema XML Validator (Preview)
17
Hoe een XML-document aanmaken ?
Onverschillig welke tekst-editor ASCII, ISO , UTF-8 Printf(“<Person>%s</Person>”,&person); DISPLAY “<Person>”person”</Person>”.L theDoc.person.appendChild(theDoc.createTextNode (personstring); Transformator (al dan niet commercieel)
18
Het XML-melkwegstelsel
Naast het formaat van het document bestaan er talrijke (min of meer interessante) XML-toepassingen. Bv. : XSL (XLST, XSL-FO) Xpath, Xpointer, Xlink XHTML, SVG ebXML, RosettaNet... (woordenschat) XML Signature, SOAP, etc.
19
C= conditionnel (Obligatoire si)
De DMFA & XML Déclaration Form Reference Employer C ontributions Worker Natural Person I-1 n Declaration Unrelated record to natural person C-n I-1 C-n I-n Occupation Worker Deduction Student Worker Indemnity C-n Contribution C-n Contribution Contribution WAPM C-n C-1 C-1 C-n Service Dismissed Early Remun Deduction Statutory Retirement C-n C-n C-n Worker Contribution Contribution C-1 C-2 I= indispensable C= conditionnel (Obligatoire si) n= plusieurs
20
De DMFA & XML Woordenschat
21
De DMFA & XML De structuur: bepaald in een XML-schema : DMFA.xsd
22
De DMFA & XML : voorbeeld
<?xml version="1.0" encoding="UTF-8"?> <DclMessage xmlns:xsi=" xsi:noNamespaceSchemaLocation="DMFA.xsd"> <Dmfa Block="YES"> ... <Deduction Block="YES”> <DeductionCode>9999</DeductionCode> <OccupationOrWorkerRecordLink>99</OccupationOrWorkerRecordLink> <CalculationBasis>1</CalculationBasis> <DeductionAmount> </DeductionAmount> <NbrMonthsManagementCost>3</NbrMonthsManagementCost> <ReplacedINSS> </ReplacedINSS> <ApplicantINSS> </ApplicantINSS> <CertificateOrigin> </CertificateOrigin> </Deduction> </Dmfa> </DclMessage>
23
De DMFA & XML Publiek XML-schema (zoals het moet)
24
VRAGEN ?
Verwante presentaties
© 2024 SlidePlayer.nl Inc.
All rights reserved.