La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

XML et son usage dans la DMFA

Présentations similaires


Présentation au sujet: "XML et son usage dans la DMFA"— Transcription de la présentation:

1 XML et son usage dans la DMFA
Ph. Peeters, Analyste fonctionnel SmalS-MvM

2 Contenu XML - généralités La DMFA & XML Syntaxe DTD, Schéma Parsers
glossaire schéma exemple

3 Qu’est-ce que XML ? eXtensible Markup Language
une syntaxe pour la description de documents un meta-langage décrit la sémantique et la structure pas uniquement pour le Web

4 Pourquoi XML ? (1) Par définition, un document XML est structuré (il faut réinventer ses schémas et ses contrôles de forme pour le format plat) Flexibilité (modification, ajout, extension) en minimisant l’impact sur les applications Validation des documents à la source et de manière standardisée Technologies de traitement peu coûteuses et très bien diffusées (<>EDI) Libre de licence, standard et normalisé C’est le bon moment ...

5 Pourquoi XML ? (2) Document auto-descriptif
Standard ouvert, indépendant de la plate-forme, bien supporté Echange de données inter-applications Disponibilité de nombreux outils gratuits Lisible par un humain

6 XML - structure et sémantique
Un document XML forme une arborescence Les noms des éléments et attributs reflètent (si possible) le type de l’élément <Person SequenceNr=“12”> <Name> <First>Albert</First> <Last>Einstein</Last> </Name> <Age>56</Age> </Person>

7 XML - syntaxe Un document XML doit être “bien formé”:
tags ouvrants et fermants élément root unique éléments vides terminés par /> pas de superposition d’éléments valeur d’attribut entre “ ” < et & uniquement début de tags et entités ... Les parsers sont tenus de rejeter les documents mal formés

8 XML - déclaration Tout document peut (devrait) débuter par <?xml version =“1.0” encoding=“UTF-8” standalone=“yes” ?> Version: obligatoire, toujours 1.0 Encoding: facultatif, UTF-8 ou UTF-16 par défaut Standalone: facultatif (yes si pas d’entités externes)

9 Structure d’un document - DTD
Document Type Definition Définit le vocabulaire Définit la structure à laquelle doit répondre un document valide <!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 Structure d’un document - DTD
L’instance d’un document XML peut faire référence à sa DTD (interne ou externe) <?xml version=“1.0” encoding=“UTF-8”?> <!DOCTYPE Person SYSTEM “ > <Person SequenceNr=“1”> ...

11 Structure d’un document - DTD
<Person SequenceNr=“1”> <Name> <First>Albert</First> <Last>Einstein</Last> </Name> <Age>56</Age> </Person> <Middle>Klein</Middle> <Person>

12 Structure XML-Schéma Problèmes DTD: Syntaxe non-XML
pas de typage du contenu d’élément peu extensible

13 Structure XML-Schéma XML-Schéma Alternative : Relax NG, Schematron...
syntaxe XML, typage riche et extensible, possibilité de fixer le nombre d’éléments, enfants sans devoir fixer l’ordre, définition locale et globale, recommandation W3C (2 mai 2001), complexe  Alternative : Relax NG, Schematron...

14 Parsers ou processeurs XML
Utilisés pour lire un document XML, accéder à son contenu et sa structure Généralement en sous-traitement d’un autre module. Parser non-validant : rapporte uniquement les erreurs de syntaxe XML Parser validant : rapporte en plus toutes violations aux règles prévues dans une DTD ou un schéma

15 Parsers ou processeurs XML
Modèle événementiel (event-driven) : le document est lu séquentiellement et le parser génère une succession d’événements correspondant à l’enchaînement des entités. API SAX (Simple API for XML) Modèle arborescent (objet) le contenu du document est lu et transformé en une arborescence hiérarchique API DOM (Document Object Model)

16 Parsers Non-validants Validants XP - Java - n’est plus supporté
Ælfred - Java Expath - C Validants 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 Comment créer un document XML ?
N’importe quel éditeur de texte ASCII, ISO , UTF-8 Printf(“<Person>%s</Person>”,&person); DISPLAY “<Person>”person”</Person>”.L theDoc.person.appendChild(theDoc.createTextNode (personstring); Transformateur (commercial ou non)

18 La galaxie XML Au-delà du format de document, il existe une myriade d’applications XML (plus ou moins intéressantes). Ex. : XSL (XLST, XSL-FO) Xpath, Xpointer, Xlink XHTML, SVG ebXML, RosettaNet... (vocabulaire) XML Signature, SOAP, etc.

19 C= conditionnel (Obligatoire si)
La 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 La DMFA & XML Vocabulaire

21 La DMFA & XML La structure: définie dans un schéma XML : DMFA.xsd

22 La DMFA & XML : exemple <?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 La DMFA & XML XML Schéma public (comme il se doit)

24 QUESTIONS ?


Télécharger ppt "XML et son usage dans la DMFA"

Présentations similaires


Annonces Google