xml extensible markup language benjamin saclier (mfi) sources : georges gardarin, sources : georges...
Post on 03-Apr-2015
115 Views
Preview:
TRANSCRIPT
XMLXMLeXtensible Markup eXtensible Markup
LanguageLanguage
Benjamin SACLIER (MFI)Benjamin SACLIER (MFI)Sources Sources Georges Gardarin Georges Gardarin Jean-Pierre
Fournier
XML est issu de la Gestion de Documents (GED)Seacuteparation du fond de la forme Forme = preacutesentation agrave partir de la structure (style) Fond = structure + donneacutees (contenu)
Langage agrave balises encadrement des champs par des balises deacutebut et
fin
Multiples preacutecurseurs dont les plus connues SGML pour la structuration HTML pour la preacutesentation
XML= un nouveau langage deacutechange baseacute sur le balisageXML= plus simple que SGMLXML= plus ouvert que HTMLXML = deacuteveloppeacute par XML Working Group dirigeacute par le W3C (depuis 1996)XML 10 = recommandation officielle du W3C depuis le 10 feacutevrier 1998
XMLXML
Langage portable eacutechangeable universellisiblepreacutesentable (navigateurs Web)Avec garantie possible de coheacuterence des donneacuteessans SGBD mais compatible avec tous les SGBD (import-export)
XML standardise la maniegravere dont linformation est eacutechangeacutee preacutesenteacutee archiveacutee retrouveacutee transformeacutee crypteacutee
XML crsquoest quoi XML crsquoest quoi
un langage de balises heacuteritier de html sgmlhellipun meacutetalangage lrsquoutilisateur deacutefinit lui-mecircme ses balises
exemple xml ltcoucougtUn texteltcoucougt
XML exemple simpleXML exemple simple
ltxml version=10 encoding=UTF-8gt
ltlistePersonnesgtltpersonne statut =etudiant gtltnomgtDupontltnomgtltprenomgtArthurltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgt91400ltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Encodagepar deacutefautEncodagepar deacutefaut
Balises ouvrantes
et fermantes
Balises ouvrantes
et fermantes
Balise avec attributs
Balise avec attributs
Exemple completExemple complet
Modegravele arborescentModegravele arborescent
RestaurantManager
Adresse
No
Rue
Ville
Le Moulin de Mougin
Dupuis
7
Des Vignes
Mougin
FranccedilaisType
Cateacutegorie
Nom
Au point ougrave nous en Au point ougrave nous en sommessommes
Au point ougrave nous en sommes un document XML est identique agrave un fichier textuel mais il est un peu plus portable (indication de
lrsquoencodage employeacute) chaque information est associeacutee agrave une laquo
eacutetiquette raquo sa balise donc plus facilement identifiable et controcirclable
la qualiteacute de sa structure est facile agrave veacuterifier pour lrsquoinstant la coheacuterence de ses
informations nrsquoest pas garantiehellip
Incoheacuterences Incoheacuterences seacutemantiqueseacutemantique
Exemple drsquoun fichier XML de structure correcte avec des incoheacuterences seacutemantiques
ltxml version=10 encoding=UTF-8gtlt-- commentaire xml --gtltlistePersonnesgtltpersonne statut=etudiantgtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltnumerogt10ltnumerogtltadresse pays=Francegtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Preacutenom numeacuterique
numeacutero mal placeacuteadresse incomplegravetehellip
Controcircle du xmlControcircle du xml
XML nrsquoest vraiment puissant que si la coheacuterence est controcircleacutee pour cela deux technologies au choix le DTD
bull rudimentaire mais suffisant dans la plupart des cas bull syntaxe diffeacuterente
le XML-Scheacutemabull puissant (donneacutees plus fortement typeacutees)bull syntaxe de style xml
DTD ouet scheacutema permettent de deacutefinir son propre langage baseacute sur XML Vocabulaire (balises) Grammaire (imbrications)
les donneacutees de controcircle peuvent ecirctre dans le fichier xml lui-mecircme dans un fichier annexe sur le Web
DTDDTD
Une DTD deacutecrit les balises autoriseacutees dans un document xml lrsquoordre dans lequel elles doivent ecirctre imbriqueacutees leurs eacuteventuels attributs les types des informations qursquoelles encapsulent
ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gtltELEMENT adresse (numero rue codePostal ville)gtltATTLIST adresse pays NMTOKENS IMPLIEDgtltELEMENT numero (PCDATA) gtltELEMENT rue (PCDATA) gtltELEMENT codePostal (PCDATA) gtltELEMENT ville (PCDATA) gt
Lien xml DTD Lien xml DTD seacutepareacuteeseacutepareacutee
ltxml version=10 encoding=iso-8859-1gtltDOCTYPE listePersonnes SYSTEM listePersonnesdtd
gtltlistePersonnesgtltpersonne statut =etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
XML DTD 1 seul XML DTD 1 seul fichierfichier
ltxml version=10 encoding=iso-8859-1 standalone=yesgtltDOCTYPE listePersonnes [ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gtltELEMENT adresse (numero rue codePostal ville)gtltATTLIST adresse pays NMTOKENS IMPLIEDgtltELEMENT numero (PCDATA) gtltELEMENT rue (PCDATA) gtltELEMENT codePostal (PCDATA) gtltELEMENT ville (PCDATA) gt]gtltlistePersonnesgtltpersonnegtltstatut libelleacute=etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Lien DTD webLien DTD web
ltxml version=10 encoding=iso-8859-1 standalone=nogtltDOChTtYtPpE
lilsotceaPlehrossotnnleisstSeYPSeTrEsMo nnesdtd gt
ltlistePersonnesgtltpersonne statut =etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Deacuteclaration Deacuteclaration deacuteleacutement simpledeacuteleacutement simple
lt ELEMENT balise (deacutefinition) gt Le paramegravetre deacutefinition repreacutesente soit un type
de donneacutee preacutedeacutefini soit un eacuteleacutement de donneacutees composeacute constitueacute lui mecircme deacuteleacutements
Types preacutedeacutefinisbull ANY Leacuteleacutement peut contenir tout type de donneacutee
bull EMPTY Leacuteleacutement ne contient pas de donneacutees speacutecifiques
bull PCDATA Leacuteleacutement doit contenir une chaicircne de caractegravere
Deacuteclaration Deacuteclaration deacuteleacutement composeacutedeacuteleacutement composeacute
Deacutefinit une seacutequence ou un choix deacuteleacutementsSyntaxe speacutecifique avec opeacuterateurs de composition deacuteleacutements lt ELEMENT balise (composition) gt
Opeacuterateur Signification Exemple + Leacuteleacutement doit ecirctre preacutesent au minimum une fois A+ Leacuteleacutement peut ecirctre preacutesent plusieurs fois (ou aucune) A Leacuteleacutement peut ecirctre optionnellement preacutesent A | Leacuteleacutement A ou B peuvent ecirctre preacutesents (pas les deux) A|B Leacuteleacutement A doit ecirctre preacutesent et suivi de leacuteleacutement B AB
() Les parenthegraveses permettent de regrouper des eacuteleacutements afin de leur appliquer les autres opeacuterateurs
(AB)+
Deacuteclaration Deacuteclaration drsquoattributsdrsquoattributs
lt ATTLIST balise Attribut Type Mode gt balise speacutecifie leacuteleacutement auquel est attacheacute lattributAttribut est le nom de lattribut deacuteclareacuteType deacutefinit le type de donneacutee de lattribut choisi parmi CDATA
bull Chaicircnes de caractegraveres entre guillemets (aa) non analyseacutees Enumeacuteration
bull Liste de valeurs seacutepareacutees par | bull lt ATTLIST balise Attribut (Valeur1 | Valeur2 | ) gt
ID et IDREFbull Cleacute et reacutefeacuterence agrave cleacute
Mode preacutecise le caractegravere obligatoire ou non de lattribut REQUIRED IMPLIED ou FIXED
Exemple drsquoune DTDExemple drsquoune DTD
ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gt
1048710 une balise laquo listePersonnes raquo contient au moins 1 balise personne1048710 une balise laquo personne raquo contient une balise nom une eacuteventuelle balise prenom une balise adresse le tout dans lrsquoordre indiqueacute1048710 la balise laquo personne raquo contient un attribut laquo statut raquo obligatoire1048710 + signifie laquo au moins une raquo1048710 signifie laquo au moins zeacutero raquo1048710 signifie laquo 0 ou 1 raquo1048710 xxx | yyy signifie une de ces deux balises au choix1048710 PCDATA laquo parsed character data raquo1048710 REQUIRED = obligatoire IMPLIED = facultatif
XML ScheacutemaXML Scheacutema
Limite des DTD Description limiteacutee dans des documents
structureacutesbull Problegraveme de typage (PCDATA)
Exprimeacute dans un langage autre que XMLbull Pas les mecircmes parseurs
Objectif de XML Scheacutema Ameacutelioration du typage Ameacutelioration de la structure
bull Nombre borneacute drsquoeacuteleacutements inclus hellip
Remplace de plus en plus la DTD car exprimeacute en syntaxe XML et extensible
XML ScheacutemaXML Scheacutema
Comme une DTD le Scheacutema (xsd) permet de garantir la coheacuterence des donneacutees xml mais sa syntaxe est de style xml le niveau de preacutecision est beaucoup plus eacuteleveacute Dans le document xml
ltlistePersonnes xmlnsxsi=httpwwww3org2001XMLSchema-instance xsinoNamespaceSchemaLocation=listePersonnesxsdgt
XML ScheacutemaXML Scheacutema
Deacuteclaration des eacuteleacutements et attributs Nom Typage similaire agrave lobjet
Speacutecification de types simples Grande varieacuteteacute de types
Geacuteneacuteration de types complexes Seacutequence (Sequence) Choix (Choice) Tas (All)
Les types simplesLes types simples
string Confirm this is electric
byte -1 126
hexBinary 0FB7
boolean true false 1 0
time 132000000 132000000-0500
dateTime 1999-05-31T132000000-0500
duration P1Y2M3DT10H30M123S
float -INF -1E4 -0 0 1278E-2 12 INF
NaN
integer -126789 -1 0 1 126789
positiveInteger 1 126789
negativeInteger -126789 -1
nonNegativeInteger 0 1 126789
nonPositiveInteger -126789 -1 0
int -1 126789675
unsignedInt 0 1267896754
anyURI httpwwwexamplecom
Les types complexesLes types complexes
Deacutefinition dobjets complexes ltsequencegt collection ordonneacutee deacuteleacutements typeacutes ltallgt collection non ordonneacutee deacuteleacutements typeacutes ltchoicegt choix entre eacuteleacutements typeacutes
ExempleltxsdcomplexType name=AddresseFRgt ltxsdsequencegt ltxsdelement name=nom type=xsdstringgt ltxsdelement name=rue type=xsdstringgt ltxsdelement name=ville type=xsdstringgt ltxsdelement name=codep
type=xsddecimalgt ltxsdsequencegt ltxsdattribute name=pays type=xsdNMTOKEN fixed=FRgt ltxsdcomplexTypegt
Les PatternsLes Patterns
Contraintes sur type simple preacutedeacutefini Utilisation dexpression reacuteguliegraveres Similaires agrave celles de Perl
ExempleltxsdsimpleType name=NumItemgt ltxsdrestriction base=xsdstringgt
ltxsdpattern value=d3-[A-Z]2gt ltxsdrestrictiongt ltxsdsimpleTypegt
XML SchemaXML Schemaexemple (1)exemple (1)
ltxsdschema xmlnsxsd=httpwwww3org1999XMLSchemagt
ltxsdelement name=commande type=CommandeTypegt ltxsdelement name=commentaire type=xsdstringgt ltxsdcomplexType name=CommandeTypegt
ltxsdsequencegt ltxsdelement name=livrer type=Adressegt ltxsdelement name=facturer type=Adressegt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=produits type=ProduitTypegt
ltxsdsequencegt ltxsdattribute name=date_com type=xsddategt
ltxsdcomplexTypegt
XML Schema XML Schema exemple (2)exemple (2)
ltxsdcomplexType name=ProduitTypegt ltxsdsequencegt
ltxsdelement name=produit minOccurs=0 maxOccurs=unboundedgt ltxsdcomplexTypegt
ltxsdsequencegt ltxsdelement name=nom_prod type=xsdstringgt ltxsdelement name=quantitegt ltxsdsimpleTypegt ltxsdrestriction
base=xsdpositiveIntegergt ltxsdmaxExclusive value=100gt ltxsdrestrictiongt ltxsdsimpleTypegt ltxsdelementgt ltxsdelement name=prix type=xsddecimalgt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=date_livraison type=xsddate
minOccurs=0gt ltxsdsequencegt ltxsdattribute name=num_prod type=xsdpositiveInteger
use=requiredgt ltxsdcomplexTypegt
ltxsdelementgt ltxsdsequencegt ltxsdcomplexTypegt ltxsdschemagt
Feuille de styleFeuille de style
Feuille de styleFeuille de style
La repreacutesentation de cette lettre en XML ne comporte aucune indication sur sa mise en page Les aspects graphiques ou typographiques sont
absents du source XML Ces aspects seront deacutefinis par lrsquointermeacutediaire
drsquoune feuille de styleUne feuille de style est un ensemble de regravegles pour speacutecifier la reacutealisation concregravete drsquoun document sur un meacutedia particulierOn ajoute dans le deacutebut du fichier xml un lien vers la feuille de style fichier xsl ltxml-stylesheet type=textxsllaquo
href=transformateurxslgt Ce fichier peut ecirctre local ou acceacutedeacute via une URL
Conception de Conception de DTDScheacutemaDTDScheacutema
Possible agrave partir drsquoune modeacutelisation ULM
Quelques outils de Quelques outils de travailtravail
Editeur Outil Support
Tibco Turbo XML DTD XSLScheacutema
Altova XMLSpy DTD Scheacutema XSL Xquery
SyncRO Ltd Oxygen DTD Scheacutema XSL Xquery
Data Junction XML Junction Scheacutema
Insight Soft XMLMate DTD ScheacutemaXSL XPath
XML Mind XMLMind Editor DTD ScheacutemaXSL XPath
Exemple DTDExemple DTD
Convertisseur TAC vers XML (metaf2xml)
ltENTITY cloudType AC|ACC|ACSL|AS|CB|CBMAM|CC|CCSL|CI|CS|CU|CF|CUFRA|NS|SAC|SC|SCSL|ST|SF|STFRA|TCUgt
ltENTITY colourCodes BLUplus|BLU|WHT|GRN|YLO|YLO1|YLO2|AMB|RED|FCSTCANCELgtltENTITY cloudCover FEW|SCT|BKN|OVCgtltENTITY cloudFamily 0|1|2|3|4|5|6|7|8|9gtltENTITY phenomDescr isFrequent|isOccasional|isIntermittent|isContinuous|isThick|
isPrettyThick|isVeryThick|isThin|isPrettyThin|isVeryThin|isFeeble|isPrettyFeeble|isVeryFeeble|isLight|isPrettyLight|isVeryLight|isModerate|isLow|isLower|isIsolated|isConvective|isDissipated|inPastHour|baseBelowStation|isAloft|isAround|isFreezing|isPatchygt
ltENTITY unitRadiation kJmm|JcmcmgtltENTITY unitSpeed KT|MPS|KMHgtltENTITY period 1d|24h|1h|ngtltENTITY compassDir N|NNE|NE|ENE|E|ESE|SE|SSE|S|SSW|SW|WSW|W|WNW|NW|NNWgt
Exemple DTDExemple DTD
ltELEMENT taf (ERROR WARNING obsStation issueTime fcstPeriod reportModifier fcstNotAvbl sfcWind (CAVOK | (visPrev weatherList cloudList visVert)) (turbulence | icing | windShearLvl | QNH) trendList (tempAt | tempMaxAt | tempMinAt | correctedAt |
amendedAt | limMetwatch | autoMetwatch | amendment) tafRemarkList)gtltATTLIST taf s CDATA REQUIREDgt
Exemple xmlExemple xml
ltxml version=10 encoding=UTF-8gtltdatagt ltoptionsgtltformat v=xml gt ltlang v=en gt ltmode v=latest gt
ltmsg_metaf v= gt ltmsg_synop v=AAXX 09004 08495 11459
30714 10147 20136 30151 40159 58005 60001 70511 83500 92350 gt
ltsrc_metaf v=noaa gt ltsrc_synop v=nws_land gt lttype_metaf v=metar gt lttype_synop v=synop gt ltoptionsgt ltreportsgt ltsynop s=AAXX 09004 08495
11459 30714 10147 20136 30151 40159 58005 60001 70511 83500 92350gt
ltobsStationType s=AAXXgt ltstationType v=AAXX gt ltobsStationTypegt ltobsTime s=0900gt ltday v=09 gt lthour
v=00 gt ltminute v=00 gt ltobsTimegt
ltwindIndicator s=4gtltwindUnit v=KT gt ltwindIndicatorgt
ltstationId s=08495gt ltid v=08495 gt ltregion v=VI gt
ltprecipInd s=1gt ltprecipIndVal v=1 gt ltprecipIndgt ltwxInd s=1gt ltwxIndVal v=1 gt ltwxIndgt ltbaseLowestCloud s=4gt ltfrom v=300 u=M gtltto v=600 u=M gt ltbaseLowestCloudgt ltvisPrev s=59gt ltdistance v=9 u=KM gt ltvisPrevgt lttotalCloudCover s=3gt ltoktas v=3 gt lttotalCloudCovergt ltsfcWind s=0714gt ltwindgt ltdir v=70 gt ltspeed v=14 u=KT gt ltwindgt ltsfcWindgt lttemperature s=10147 20136gt ltairgt lttemp v=147 u=C gtltairgt
Exemple Interface Exemple Interface WEBWEB
WIS XMLBUFRWIS XMLBUFR
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
-
XML est issu de la Gestion de Documents (GED)Seacuteparation du fond de la forme Forme = preacutesentation agrave partir de la structure (style) Fond = structure + donneacutees (contenu)
Langage agrave balises encadrement des champs par des balises deacutebut et
fin
Multiples preacutecurseurs dont les plus connues SGML pour la structuration HTML pour la preacutesentation
XML= un nouveau langage deacutechange baseacute sur le balisageXML= plus simple que SGMLXML= plus ouvert que HTMLXML = deacuteveloppeacute par XML Working Group dirigeacute par le W3C (depuis 1996)XML 10 = recommandation officielle du W3C depuis le 10 feacutevrier 1998
XMLXML
Langage portable eacutechangeable universellisiblepreacutesentable (navigateurs Web)Avec garantie possible de coheacuterence des donneacuteessans SGBD mais compatible avec tous les SGBD (import-export)
XML standardise la maniegravere dont linformation est eacutechangeacutee preacutesenteacutee archiveacutee retrouveacutee transformeacutee crypteacutee
XML crsquoest quoi XML crsquoest quoi
un langage de balises heacuteritier de html sgmlhellipun meacutetalangage lrsquoutilisateur deacutefinit lui-mecircme ses balises
exemple xml ltcoucougtUn texteltcoucougt
XML exemple simpleXML exemple simple
ltxml version=10 encoding=UTF-8gt
ltlistePersonnesgtltpersonne statut =etudiant gtltnomgtDupontltnomgtltprenomgtArthurltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgt91400ltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Encodagepar deacutefautEncodagepar deacutefaut
Balises ouvrantes
et fermantes
Balises ouvrantes
et fermantes
Balise avec attributs
Balise avec attributs
Exemple completExemple complet
Modegravele arborescentModegravele arborescent
RestaurantManager
Adresse
No
Rue
Ville
Le Moulin de Mougin
Dupuis
7
Des Vignes
Mougin
FranccedilaisType
Cateacutegorie
Nom
Au point ougrave nous en Au point ougrave nous en sommessommes
Au point ougrave nous en sommes un document XML est identique agrave un fichier textuel mais il est un peu plus portable (indication de
lrsquoencodage employeacute) chaque information est associeacutee agrave une laquo
eacutetiquette raquo sa balise donc plus facilement identifiable et controcirclable
la qualiteacute de sa structure est facile agrave veacuterifier pour lrsquoinstant la coheacuterence de ses
informations nrsquoest pas garantiehellip
Incoheacuterences Incoheacuterences seacutemantiqueseacutemantique
Exemple drsquoun fichier XML de structure correcte avec des incoheacuterences seacutemantiques
ltxml version=10 encoding=UTF-8gtlt-- commentaire xml --gtltlistePersonnesgtltpersonne statut=etudiantgtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltnumerogt10ltnumerogtltadresse pays=Francegtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Preacutenom numeacuterique
numeacutero mal placeacuteadresse incomplegravetehellip
Controcircle du xmlControcircle du xml
XML nrsquoest vraiment puissant que si la coheacuterence est controcircleacutee pour cela deux technologies au choix le DTD
bull rudimentaire mais suffisant dans la plupart des cas bull syntaxe diffeacuterente
le XML-Scheacutemabull puissant (donneacutees plus fortement typeacutees)bull syntaxe de style xml
DTD ouet scheacutema permettent de deacutefinir son propre langage baseacute sur XML Vocabulaire (balises) Grammaire (imbrications)
les donneacutees de controcircle peuvent ecirctre dans le fichier xml lui-mecircme dans un fichier annexe sur le Web
DTDDTD
Une DTD deacutecrit les balises autoriseacutees dans un document xml lrsquoordre dans lequel elles doivent ecirctre imbriqueacutees leurs eacuteventuels attributs les types des informations qursquoelles encapsulent
ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gtltELEMENT adresse (numero rue codePostal ville)gtltATTLIST adresse pays NMTOKENS IMPLIEDgtltELEMENT numero (PCDATA) gtltELEMENT rue (PCDATA) gtltELEMENT codePostal (PCDATA) gtltELEMENT ville (PCDATA) gt
Lien xml DTD Lien xml DTD seacutepareacuteeseacutepareacutee
ltxml version=10 encoding=iso-8859-1gtltDOCTYPE listePersonnes SYSTEM listePersonnesdtd
gtltlistePersonnesgtltpersonne statut =etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
XML DTD 1 seul XML DTD 1 seul fichierfichier
ltxml version=10 encoding=iso-8859-1 standalone=yesgtltDOCTYPE listePersonnes [ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gtltELEMENT adresse (numero rue codePostal ville)gtltATTLIST adresse pays NMTOKENS IMPLIEDgtltELEMENT numero (PCDATA) gtltELEMENT rue (PCDATA) gtltELEMENT codePostal (PCDATA) gtltELEMENT ville (PCDATA) gt]gtltlistePersonnesgtltpersonnegtltstatut libelleacute=etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Lien DTD webLien DTD web
ltxml version=10 encoding=iso-8859-1 standalone=nogtltDOChTtYtPpE
lilsotceaPlehrossotnnleisstSeYPSeTrEsMo nnesdtd gt
ltlistePersonnesgtltpersonne statut =etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Deacuteclaration Deacuteclaration deacuteleacutement simpledeacuteleacutement simple
lt ELEMENT balise (deacutefinition) gt Le paramegravetre deacutefinition repreacutesente soit un type
de donneacutee preacutedeacutefini soit un eacuteleacutement de donneacutees composeacute constitueacute lui mecircme deacuteleacutements
Types preacutedeacutefinisbull ANY Leacuteleacutement peut contenir tout type de donneacutee
bull EMPTY Leacuteleacutement ne contient pas de donneacutees speacutecifiques
bull PCDATA Leacuteleacutement doit contenir une chaicircne de caractegravere
Deacuteclaration Deacuteclaration deacuteleacutement composeacutedeacuteleacutement composeacute
Deacutefinit une seacutequence ou un choix deacuteleacutementsSyntaxe speacutecifique avec opeacuterateurs de composition deacuteleacutements lt ELEMENT balise (composition) gt
Opeacuterateur Signification Exemple + Leacuteleacutement doit ecirctre preacutesent au minimum une fois A+ Leacuteleacutement peut ecirctre preacutesent plusieurs fois (ou aucune) A Leacuteleacutement peut ecirctre optionnellement preacutesent A | Leacuteleacutement A ou B peuvent ecirctre preacutesents (pas les deux) A|B Leacuteleacutement A doit ecirctre preacutesent et suivi de leacuteleacutement B AB
() Les parenthegraveses permettent de regrouper des eacuteleacutements afin de leur appliquer les autres opeacuterateurs
(AB)+
Deacuteclaration Deacuteclaration drsquoattributsdrsquoattributs
lt ATTLIST balise Attribut Type Mode gt balise speacutecifie leacuteleacutement auquel est attacheacute lattributAttribut est le nom de lattribut deacuteclareacuteType deacutefinit le type de donneacutee de lattribut choisi parmi CDATA
bull Chaicircnes de caractegraveres entre guillemets (aa) non analyseacutees Enumeacuteration
bull Liste de valeurs seacutepareacutees par | bull lt ATTLIST balise Attribut (Valeur1 | Valeur2 | ) gt
ID et IDREFbull Cleacute et reacutefeacuterence agrave cleacute
Mode preacutecise le caractegravere obligatoire ou non de lattribut REQUIRED IMPLIED ou FIXED
Exemple drsquoune DTDExemple drsquoune DTD
ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gt
1048710 une balise laquo listePersonnes raquo contient au moins 1 balise personne1048710 une balise laquo personne raquo contient une balise nom une eacuteventuelle balise prenom une balise adresse le tout dans lrsquoordre indiqueacute1048710 la balise laquo personne raquo contient un attribut laquo statut raquo obligatoire1048710 + signifie laquo au moins une raquo1048710 signifie laquo au moins zeacutero raquo1048710 signifie laquo 0 ou 1 raquo1048710 xxx | yyy signifie une de ces deux balises au choix1048710 PCDATA laquo parsed character data raquo1048710 REQUIRED = obligatoire IMPLIED = facultatif
XML ScheacutemaXML Scheacutema
Limite des DTD Description limiteacutee dans des documents
structureacutesbull Problegraveme de typage (PCDATA)
Exprimeacute dans un langage autre que XMLbull Pas les mecircmes parseurs
Objectif de XML Scheacutema Ameacutelioration du typage Ameacutelioration de la structure
bull Nombre borneacute drsquoeacuteleacutements inclus hellip
Remplace de plus en plus la DTD car exprimeacute en syntaxe XML et extensible
XML ScheacutemaXML Scheacutema
Comme une DTD le Scheacutema (xsd) permet de garantir la coheacuterence des donneacutees xml mais sa syntaxe est de style xml le niveau de preacutecision est beaucoup plus eacuteleveacute Dans le document xml
ltlistePersonnes xmlnsxsi=httpwwww3org2001XMLSchema-instance xsinoNamespaceSchemaLocation=listePersonnesxsdgt
XML ScheacutemaXML Scheacutema
Deacuteclaration des eacuteleacutements et attributs Nom Typage similaire agrave lobjet
Speacutecification de types simples Grande varieacuteteacute de types
Geacuteneacuteration de types complexes Seacutequence (Sequence) Choix (Choice) Tas (All)
Les types simplesLes types simples
string Confirm this is electric
byte -1 126
hexBinary 0FB7
boolean true false 1 0
time 132000000 132000000-0500
dateTime 1999-05-31T132000000-0500
duration P1Y2M3DT10H30M123S
float -INF -1E4 -0 0 1278E-2 12 INF
NaN
integer -126789 -1 0 1 126789
positiveInteger 1 126789
negativeInteger -126789 -1
nonNegativeInteger 0 1 126789
nonPositiveInteger -126789 -1 0
int -1 126789675
unsignedInt 0 1267896754
anyURI httpwwwexamplecom
Les types complexesLes types complexes
Deacutefinition dobjets complexes ltsequencegt collection ordonneacutee deacuteleacutements typeacutes ltallgt collection non ordonneacutee deacuteleacutements typeacutes ltchoicegt choix entre eacuteleacutements typeacutes
ExempleltxsdcomplexType name=AddresseFRgt ltxsdsequencegt ltxsdelement name=nom type=xsdstringgt ltxsdelement name=rue type=xsdstringgt ltxsdelement name=ville type=xsdstringgt ltxsdelement name=codep
type=xsddecimalgt ltxsdsequencegt ltxsdattribute name=pays type=xsdNMTOKEN fixed=FRgt ltxsdcomplexTypegt
Les PatternsLes Patterns
Contraintes sur type simple preacutedeacutefini Utilisation dexpression reacuteguliegraveres Similaires agrave celles de Perl
ExempleltxsdsimpleType name=NumItemgt ltxsdrestriction base=xsdstringgt
ltxsdpattern value=d3-[A-Z]2gt ltxsdrestrictiongt ltxsdsimpleTypegt
XML SchemaXML Schemaexemple (1)exemple (1)
ltxsdschema xmlnsxsd=httpwwww3org1999XMLSchemagt
ltxsdelement name=commande type=CommandeTypegt ltxsdelement name=commentaire type=xsdstringgt ltxsdcomplexType name=CommandeTypegt
ltxsdsequencegt ltxsdelement name=livrer type=Adressegt ltxsdelement name=facturer type=Adressegt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=produits type=ProduitTypegt
ltxsdsequencegt ltxsdattribute name=date_com type=xsddategt
ltxsdcomplexTypegt
XML Schema XML Schema exemple (2)exemple (2)
ltxsdcomplexType name=ProduitTypegt ltxsdsequencegt
ltxsdelement name=produit minOccurs=0 maxOccurs=unboundedgt ltxsdcomplexTypegt
ltxsdsequencegt ltxsdelement name=nom_prod type=xsdstringgt ltxsdelement name=quantitegt ltxsdsimpleTypegt ltxsdrestriction
base=xsdpositiveIntegergt ltxsdmaxExclusive value=100gt ltxsdrestrictiongt ltxsdsimpleTypegt ltxsdelementgt ltxsdelement name=prix type=xsddecimalgt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=date_livraison type=xsddate
minOccurs=0gt ltxsdsequencegt ltxsdattribute name=num_prod type=xsdpositiveInteger
use=requiredgt ltxsdcomplexTypegt
ltxsdelementgt ltxsdsequencegt ltxsdcomplexTypegt ltxsdschemagt
Feuille de styleFeuille de style
Feuille de styleFeuille de style
La repreacutesentation de cette lettre en XML ne comporte aucune indication sur sa mise en page Les aspects graphiques ou typographiques sont
absents du source XML Ces aspects seront deacutefinis par lrsquointermeacutediaire
drsquoune feuille de styleUne feuille de style est un ensemble de regravegles pour speacutecifier la reacutealisation concregravete drsquoun document sur un meacutedia particulierOn ajoute dans le deacutebut du fichier xml un lien vers la feuille de style fichier xsl ltxml-stylesheet type=textxsllaquo
href=transformateurxslgt Ce fichier peut ecirctre local ou acceacutedeacute via une URL
Conception de Conception de DTDScheacutemaDTDScheacutema
Possible agrave partir drsquoune modeacutelisation ULM
Quelques outils de Quelques outils de travailtravail
Editeur Outil Support
Tibco Turbo XML DTD XSLScheacutema
Altova XMLSpy DTD Scheacutema XSL Xquery
SyncRO Ltd Oxygen DTD Scheacutema XSL Xquery
Data Junction XML Junction Scheacutema
Insight Soft XMLMate DTD ScheacutemaXSL XPath
XML Mind XMLMind Editor DTD ScheacutemaXSL XPath
Exemple DTDExemple DTD
Convertisseur TAC vers XML (metaf2xml)
ltENTITY cloudType AC|ACC|ACSL|AS|CB|CBMAM|CC|CCSL|CI|CS|CU|CF|CUFRA|NS|SAC|SC|SCSL|ST|SF|STFRA|TCUgt
ltENTITY colourCodes BLUplus|BLU|WHT|GRN|YLO|YLO1|YLO2|AMB|RED|FCSTCANCELgtltENTITY cloudCover FEW|SCT|BKN|OVCgtltENTITY cloudFamily 0|1|2|3|4|5|6|7|8|9gtltENTITY phenomDescr isFrequent|isOccasional|isIntermittent|isContinuous|isThick|
isPrettyThick|isVeryThick|isThin|isPrettyThin|isVeryThin|isFeeble|isPrettyFeeble|isVeryFeeble|isLight|isPrettyLight|isVeryLight|isModerate|isLow|isLower|isIsolated|isConvective|isDissipated|inPastHour|baseBelowStation|isAloft|isAround|isFreezing|isPatchygt
ltENTITY unitRadiation kJmm|JcmcmgtltENTITY unitSpeed KT|MPS|KMHgtltENTITY period 1d|24h|1h|ngtltENTITY compassDir N|NNE|NE|ENE|E|ESE|SE|SSE|S|SSW|SW|WSW|W|WNW|NW|NNWgt
Exemple DTDExemple DTD
ltELEMENT taf (ERROR WARNING obsStation issueTime fcstPeriod reportModifier fcstNotAvbl sfcWind (CAVOK | (visPrev weatherList cloudList visVert)) (turbulence | icing | windShearLvl | QNH) trendList (tempAt | tempMaxAt | tempMinAt | correctedAt |
amendedAt | limMetwatch | autoMetwatch | amendment) tafRemarkList)gtltATTLIST taf s CDATA REQUIREDgt
Exemple xmlExemple xml
ltxml version=10 encoding=UTF-8gtltdatagt ltoptionsgtltformat v=xml gt ltlang v=en gt ltmode v=latest gt
ltmsg_metaf v= gt ltmsg_synop v=AAXX 09004 08495 11459
30714 10147 20136 30151 40159 58005 60001 70511 83500 92350 gt
ltsrc_metaf v=noaa gt ltsrc_synop v=nws_land gt lttype_metaf v=metar gt lttype_synop v=synop gt ltoptionsgt ltreportsgt ltsynop s=AAXX 09004 08495
11459 30714 10147 20136 30151 40159 58005 60001 70511 83500 92350gt
ltobsStationType s=AAXXgt ltstationType v=AAXX gt ltobsStationTypegt ltobsTime s=0900gt ltday v=09 gt lthour
v=00 gt ltminute v=00 gt ltobsTimegt
ltwindIndicator s=4gtltwindUnit v=KT gt ltwindIndicatorgt
ltstationId s=08495gt ltid v=08495 gt ltregion v=VI gt
ltprecipInd s=1gt ltprecipIndVal v=1 gt ltprecipIndgt ltwxInd s=1gt ltwxIndVal v=1 gt ltwxIndgt ltbaseLowestCloud s=4gt ltfrom v=300 u=M gtltto v=600 u=M gt ltbaseLowestCloudgt ltvisPrev s=59gt ltdistance v=9 u=KM gt ltvisPrevgt lttotalCloudCover s=3gt ltoktas v=3 gt lttotalCloudCovergt ltsfcWind s=0714gt ltwindgt ltdir v=70 gt ltspeed v=14 u=KT gt ltwindgt ltsfcWindgt lttemperature s=10147 20136gt ltairgt lttemp v=147 u=C gtltairgt
Exemple Interface Exemple Interface WEBWEB
WIS XMLBUFRWIS XMLBUFR
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
-
XML= un nouveau langage deacutechange baseacute sur le balisageXML= plus simple que SGMLXML= plus ouvert que HTMLXML = deacuteveloppeacute par XML Working Group dirigeacute par le W3C (depuis 1996)XML 10 = recommandation officielle du W3C depuis le 10 feacutevrier 1998
XMLXML
Langage portable eacutechangeable universellisiblepreacutesentable (navigateurs Web)Avec garantie possible de coheacuterence des donneacuteessans SGBD mais compatible avec tous les SGBD (import-export)
XML standardise la maniegravere dont linformation est eacutechangeacutee preacutesenteacutee archiveacutee retrouveacutee transformeacutee crypteacutee
XML crsquoest quoi XML crsquoest quoi
un langage de balises heacuteritier de html sgmlhellipun meacutetalangage lrsquoutilisateur deacutefinit lui-mecircme ses balises
exemple xml ltcoucougtUn texteltcoucougt
XML exemple simpleXML exemple simple
ltxml version=10 encoding=UTF-8gt
ltlistePersonnesgtltpersonne statut =etudiant gtltnomgtDupontltnomgtltprenomgtArthurltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgt91400ltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Encodagepar deacutefautEncodagepar deacutefaut
Balises ouvrantes
et fermantes
Balises ouvrantes
et fermantes
Balise avec attributs
Balise avec attributs
Exemple completExemple complet
Modegravele arborescentModegravele arborescent
RestaurantManager
Adresse
No
Rue
Ville
Le Moulin de Mougin
Dupuis
7
Des Vignes
Mougin
FranccedilaisType
Cateacutegorie
Nom
Au point ougrave nous en Au point ougrave nous en sommessommes
Au point ougrave nous en sommes un document XML est identique agrave un fichier textuel mais il est un peu plus portable (indication de
lrsquoencodage employeacute) chaque information est associeacutee agrave une laquo
eacutetiquette raquo sa balise donc plus facilement identifiable et controcirclable
la qualiteacute de sa structure est facile agrave veacuterifier pour lrsquoinstant la coheacuterence de ses
informations nrsquoest pas garantiehellip
Incoheacuterences Incoheacuterences seacutemantiqueseacutemantique
Exemple drsquoun fichier XML de structure correcte avec des incoheacuterences seacutemantiques
ltxml version=10 encoding=UTF-8gtlt-- commentaire xml --gtltlistePersonnesgtltpersonne statut=etudiantgtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltnumerogt10ltnumerogtltadresse pays=Francegtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Preacutenom numeacuterique
numeacutero mal placeacuteadresse incomplegravetehellip
Controcircle du xmlControcircle du xml
XML nrsquoest vraiment puissant que si la coheacuterence est controcircleacutee pour cela deux technologies au choix le DTD
bull rudimentaire mais suffisant dans la plupart des cas bull syntaxe diffeacuterente
le XML-Scheacutemabull puissant (donneacutees plus fortement typeacutees)bull syntaxe de style xml
DTD ouet scheacutema permettent de deacutefinir son propre langage baseacute sur XML Vocabulaire (balises) Grammaire (imbrications)
les donneacutees de controcircle peuvent ecirctre dans le fichier xml lui-mecircme dans un fichier annexe sur le Web
DTDDTD
Une DTD deacutecrit les balises autoriseacutees dans un document xml lrsquoordre dans lequel elles doivent ecirctre imbriqueacutees leurs eacuteventuels attributs les types des informations qursquoelles encapsulent
ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gtltELEMENT adresse (numero rue codePostal ville)gtltATTLIST adresse pays NMTOKENS IMPLIEDgtltELEMENT numero (PCDATA) gtltELEMENT rue (PCDATA) gtltELEMENT codePostal (PCDATA) gtltELEMENT ville (PCDATA) gt
Lien xml DTD Lien xml DTD seacutepareacuteeseacutepareacutee
ltxml version=10 encoding=iso-8859-1gtltDOCTYPE listePersonnes SYSTEM listePersonnesdtd
gtltlistePersonnesgtltpersonne statut =etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
XML DTD 1 seul XML DTD 1 seul fichierfichier
ltxml version=10 encoding=iso-8859-1 standalone=yesgtltDOCTYPE listePersonnes [ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gtltELEMENT adresse (numero rue codePostal ville)gtltATTLIST adresse pays NMTOKENS IMPLIEDgtltELEMENT numero (PCDATA) gtltELEMENT rue (PCDATA) gtltELEMENT codePostal (PCDATA) gtltELEMENT ville (PCDATA) gt]gtltlistePersonnesgtltpersonnegtltstatut libelleacute=etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Lien DTD webLien DTD web
ltxml version=10 encoding=iso-8859-1 standalone=nogtltDOChTtYtPpE
lilsotceaPlehrossotnnleisstSeYPSeTrEsMo nnesdtd gt
ltlistePersonnesgtltpersonne statut =etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Deacuteclaration Deacuteclaration deacuteleacutement simpledeacuteleacutement simple
lt ELEMENT balise (deacutefinition) gt Le paramegravetre deacutefinition repreacutesente soit un type
de donneacutee preacutedeacutefini soit un eacuteleacutement de donneacutees composeacute constitueacute lui mecircme deacuteleacutements
Types preacutedeacutefinisbull ANY Leacuteleacutement peut contenir tout type de donneacutee
bull EMPTY Leacuteleacutement ne contient pas de donneacutees speacutecifiques
bull PCDATA Leacuteleacutement doit contenir une chaicircne de caractegravere
Deacuteclaration Deacuteclaration deacuteleacutement composeacutedeacuteleacutement composeacute
Deacutefinit une seacutequence ou un choix deacuteleacutementsSyntaxe speacutecifique avec opeacuterateurs de composition deacuteleacutements lt ELEMENT balise (composition) gt
Opeacuterateur Signification Exemple + Leacuteleacutement doit ecirctre preacutesent au minimum une fois A+ Leacuteleacutement peut ecirctre preacutesent plusieurs fois (ou aucune) A Leacuteleacutement peut ecirctre optionnellement preacutesent A | Leacuteleacutement A ou B peuvent ecirctre preacutesents (pas les deux) A|B Leacuteleacutement A doit ecirctre preacutesent et suivi de leacuteleacutement B AB
() Les parenthegraveses permettent de regrouper des eacuteleacutements afin de leur appliquer les autres opeacuterateurs
(AB)+
Deacuteclaration Deacuteclaration drsquoattributsdrsquoattributs
lt ATTLIST balise Attribut Type Mode gt balise speacutecifie leacuteleacutement auquel est attacheacute lattributAttribut est le nom de lattribut deacuteclareacuteType deacutefinit le type de donneacutee de lattribut choisi parmi CDATA
bull Chaicircnes de caractegraveres entre guillemets (aa) non analyseacutees Enumeacuteration
bull Liste de valeurs seacutepareacutees par | bull lt ATTLIST balise Attribut (Valeur1 | Valeur2 | ) gt
ID et IDREFbull Cleacute et reacutefeacuterence agrave cleacute
Mode preacutecise le caractegravere obligatoire ou non de lattribut REQUIRED IMPLIED ou FIXED
Exemple drsquoune DTDExemple drsquoune DTD
ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gt
1048710 une balise laquo listePersonnes raquo contient au moins 1 balise personne1048710 une balise laquo personne raquo contient une balise nom une eacuteventuelle balise prenom une balise adresse le tout dans lrsquoordre indiqueacute1048710 la balise laquo personne raquo contient un attribut laquo statut raquo obligatoire1048710 + signifie laquo au moins une raquo1048710 signifie laquo au moins zeacutero raquo1048710 signifie laquo 0 ou 1 raquo1048710 xxx | yyy signifie une de ces deux balises au choix1048710 PCDATA laquo parsed character data raquo1048710 REQUIRED = obligatoire IMPLIED = facultatif
XML ScheacutemaXML Scheacutema
Limite des DTD Description limiteacutee dans des documents
structureacutesbull Problegraveme de typage (PCDATA)
Exprimeacute dans un langage autre que XMLbull Pas les mecircmes parseurs
Objectif de XML Scheacutema Ameacutelioration du typage Ameacutelioration de la structure
bull Nombre borneacute drsquoeacuteleacutements inclus hellip
Remplace de plus en plus la DTD car exprimeacute en syntaxe XML et extensible
XML ScheacutemaXML Scheacutema
Comme une DTD le Scheacutema (xsd) permet de garantir la coheacuterence des donneacutees xml mais sa syntaxe est de style xml le niveau de preacutecision est beaucoup plus eacuteleveacute Dans le document xml
ltlistePersonnes xmlnsxsi=httpwwww3org2001XMLSchema-instance xsinoNamespaceSchemaLocation=listePersonnesxsdgt
XML ScheacutemaXML Scheacutema
Deacuteclaration des eacuteleacutements et attributs Nom Typage similaire agrave lobjet
Speacutecification de types simples Grande varieacuteteacute de types
Geacuteneacuteration de types complexes Seacutequence (Sequence) Choix (Choice) Tas (All)
Les types simplesLes types simples
string Confirm this is electric
byte -1 126
hexBinary 0FB7
boolean true false 1 0
time 132000000 132000000-0500
dateTime 1999-05-31T132000000-0500
duration P1Y2M3DT10H30M123S
float -INF -1E4 -0 0 1278E-2 12 INF
NaN
integer -126789 -1 0 1 126789
positiveInteger 1 126789
negativeInteger -126789 -1
nonNegativeInteger 0 1 126789
nonPositiveInteger -126789 -1 0
int -1 126789675
unsignedInt 0 1267896754
anyURI httpwwwexamplecom
Les types complexesLes types complexes
Deacutefinition dobjets complexes ltsequencegt collection ordonneacutee deacuteleacutements typeacutes ltallgt collection non ordonneacutee deacuteleacutements typeacutes ltchoicegt choix entre eacuteleacutements typeacutes
ExempleltxsdcomplexType name=AddresseFRgt ltxsdsequencegt ltxsdelement name=nom type=xsdstringgt ltxsdelement name=rue type=xsdstringgt ltxsdelement name=ville type=xsdstringgt ltxsdelement name=codep
type=xsddecimalgt ltxsdsequencegt ltxsdattribute name=pays type=xsdNMTOKEN fixed=FRgt ltxsdcomplexTypegt
Les PatternsLes Patterns
Contraintes sur type simple preacutedeacutefini Utilisation dexpression reacuteguliegraveres Similaires agrave celles de Perl
ExempleltxsdsimpleType name=NumItemgt ltxsdrestriction base=xsdstringgt
ltxsdpattern value=d3-[A-Z]2gt ltxsdrestrictiongt ltxsdsimpleTypegt
XML SchemaXML Schemaexemple (1)exemple (1)
ltxsdschema xmlnsxsd=httpwwww3org1999XMLSchemagt
ltxsdelement name=commande type=CommandeTypegt ltxsdelement name=commentaire type=xsdstringgt ltxsdcomplexType name=CommandeTypegt
ltxsdsequencegt ltxsdelement name=livrer type=Adressegt ltxsdelement name=facturer type=Adressegt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=produits type=ProduitTypegt
ltxsdsequencegt ltxsdattribute name=date_com type=xsddategt
ltxsdcomplexTypegt
XML Schema XML Schema exemple (2)exemple (2)
ltxsdcomplexType name=ProduitTypegt ltxsdsequencegt
ltxsdelement name=produit minOccurs=0 maxOccurs=unboundedgt ltxsdcomplexTypegt
ltxsdsequencegt ltxsdelement name=nom_prod type=xsdstringgt ltxsdelement name=quantitegt ltxsdsimpleTypegt ltxsdrestriction
base=xsdpositiveIntegergt ltxsdmaxExclusive value=100gt ltxsdrestrictiongt ltxsdsimpleTypegt ltxsdelementgt ltxsdelement name=prix type=xsddecimalgt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=date_livraison type=xsddate
minOccurs=0gt ltxsdsequencegt ltxsdattribute name=num_prod type=xsdpositiveInteger
use=requiredgt ltxsdcomplexTypegt
ltxsdelementgt ltxsdsequencegt ltxsdcomplexTypegt ltxsdschemagt
Feuille de styleFeuille de style
Feuille de styleFeuille de style
La repreacutesentation de cette lettre en XML ne comporte aucune indication sur sa mise en page Les aspects graphiques ou typographiques sont
absents du source XML Ces aspects seront deacutefinis par lrsquointermeacutediaire
drsquoune feuille de styleUne feuille de style est un ensemble de regravegles pour speacutecifier la reacutealisation concregravete drsquoun document sur un meacutedia particulierOn ajoute dans le deacutebut du fichier xml un lien vers la feuille de style fichier xsl ltxml-stylesheet type=textxsllaquo
href=transformateurxslgt Ce fichier peut ecirctre local ou acceacutedeacute via une URL
Conception de Conception de DTDScheacutemaDTDScheacutema
Possible agrave partir drsquoune modeacutelisation ULM
Quelques outils de Quelques outils de travailtravail
Editeur Outil Support
Tibco Turbo XML DTD XSLScheacutema
Altova XMLSpy DTD Scheacutema XSL Xquery
SyncRO Ltd Oxygen DTD Scheacutema XSL Xquery
Data Junction XML Junction Scheacutema
Insight Soft XMLMate DTD ScheacutemaXSL XPath
XML Mind XMLMind Editor DTD ScheacutemaXSL XPath
Exemple DTDExemple DTD
Convertisseur TAC vers XML (metaf2xml)
ltENTITY cloudType AC|ACC|ACSL|AS|CB|CBMAM|CC|CCSL|CI|CS|CU|CF|CUFRA|NS|SAC|SC|SCSL|ST|SF|STFRA|TCUgt
ltENTITY colourCodes BLUplus|BLU|WHT|GRN|YLO|YLO1|YLO2|AMB|RED|FCSTCANCELgtltENTITY cloudCover FEW|SCT|BKN|OVCgtltENTITY cloudFamily 0|1|2|3|4|5|6|7|8|9gtltENTITY phenomDescr isFrequent|isOccasional|isIntermittent|isContinuous|isThick|
isPrettyThick|isVeryThick|isThin|isPrettyThin|isVeryThin|isFeeble|isPrettyFeeble|isVeryFeeble|isLight|isPrettyLight|isVeryLight|isModerate|isLow|isLower|isIsolated|isConvective|isDissipated|inPastHour|baseBelowStation|isAloft|isAround|isFreezing|isPatchygt
ltENTITY unitRadiation kJmm|JcmcmgtltENTITY unitSpeed KT|MPS|KMHgtltENTITY period 1d|24h|1h|ngtltENTITY compassDir N|NNE|NE|ENE|E|ESE|SE|SSE|S|SSW|SW|WSW|W|WNW|NW|NNWgt
Exemple DTDExemple DTD
ltELEMENT taf (ERROR WARNING obsStation issueTime fcstPeriod reportModifier fcstNotAvbl sfcWind (CAVOK | (visPrev weatherList cloudList visVert)) (turbulence | icing | windShearLvl | QNH) trendList (tempAt | tempMaxAt | tempMinAt | correctedAt |
amendedAt | limMetwatch | autoMetwatch | amendment) tafRemarkList)gtltATTLIST taf s CDATA REQUIREDgt
Exemple xmlExemple xml
ltxml version=10 encoding=UTF-8gtltdatagt ltoptionsgtltformat v=xml gt ltlang v=en gt ltmode v=latest gt
ltmsg_metaf v= gt ltmsg_synop v=AAXX 09004 08495 11459
30714 10147 20136 30151 40159 58005 60001 70511 83500 92350 gt
ltsrc_metaf v=noaa gt ltsrc_synop v=nws_land gt lttype_metaf v=metar gt lttype_synop v=synop gt ltoptionsgt ltreportsgt ltsynop s=AAXX 09004 08495
11459 30714 10147 20136 30151 40159 58005 60001 70511 83500 92350gt
ltobsStationType s=AAXXgt ltstationType v=AAXX gt ltobsStationTypegt ltobsTime s=0900gt ltday v=09 gt lthour
v=00 gt ltminute v=00 gt ltobsTimegt
ltwindIndicator s=4gtltwindUnit v=KT gt ltwindIndicatorgt
ltstationId s=08495gt ltid v=08495 gt ltregion v=VI gt
ltprecipInd s=1gt ltprecipIndVal v=1 gt ltprecipIndgt ltwxInd s=1gt ltwxIndVal v=1 gt ltwxIndgt ltbaseLowestCloud s=4gt ltfrom v=300 u=M gtltto v=600 u=M gt ltbaseLowestCloudgt ltvisPrev s=59gt ltdistance v=9 u=KM gt ltvisPrevgt lttotalCloudCover s=3gt ltoktas v=3 gt lttotalCloudCovergt ltsfcWind s=0714gt ltwindgt ltdir v=70 gt ltspeed v=14 u=KT gt ltwindgt ltsfcWindgt lttemperature s=10147 20136gt ltairgt lttemp v=147 u=C gtltairgt
Exemple Interface Exemple Interface WEBWEB
WIS XMLBUFRWIS XMLBUFR
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
-
XMLXML
Langage portable eacutechangeable universellisiblepreacutesentable (navigateurs Web)Avec garantie possible de coheacuterence des donneacuteessans SGBD mais compatible avec tous les SGBD (import-export)
XML standardise la maniegravere dont linformation est eacutechangeacutee preacutesenteacutee archiveacutee retrouveacutee transformeacutee crypteacutee
XML crsquoest quoi XML crsquoest quoi
un langage de balises heacuteritier de html sgmlhellipun meacutetalangage lrsquoutilisateur deacutefinit lui-mecircme ses balises
exemple xml ltcoucougtUn texteltcoucougt
XML exemple simpleXML exemple simple
ltxml version=10 encoding=UTF-8gt
ltlistePersonnesgtltpersonne statut =etudiant gtltnomgtDupontltnomgtltprenomgtArthurltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgt91400ltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Encodagepar deacutefautEncodagepar deacutefaut
Balises ouvrantes
et fermantes
Balises ouvrantes
et fermantes
Balise avec attributs
Balise avec attributs
Exemple completExemple complet
Modegravele arborescentModegravele arborescent
RestaurantManager
Adresse
No
Rue
Ville
Le Moulin de Mougin
Dupuis
7
Des Vignes
Mougin
FranccedilaisType
Cateacutegorie
Nom
Au point ougrave nous en Au point ougrave nous en sommessommes
Au point ougrave nous en sommes un document XML est identique agrave un fichier textuel mais il est un peu plus portable (indication de
lrsquoencodage employeacute) chaque information est associeacutee agrave une laquo
eacutetiquette raquo sa balise donc plus facilement identifiable et controcirclable
la qualiteacute de sa structure est facile agrave veacuterifier pour lrsquoinstant la coheacuterence de ses
informations nrsquoest pas garantiehellip
Incoheacuterences Incoheacuterences seacutemantiqueseacutemantique
Exemple drsquoun fichier XML de structure correcte avec des incoheacuterences seacutemantiques
ltxml version=10 encoding=UTF-8gtlt-- commentaire xml --gtltlistePersonnesgtltpersonne statut=etudiantgtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltnumerogt10ltnumerogtltadresse pays=Francegtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Preacutenom numeacuterique
numeacutero mal placeacuteadresse incomplegravetehellip
Controcircle du xmlControcircle du xml
XML nrsquoest vraiment puissant que si la coheacuterence est controcircleacutee pour cela deux technologies au choix le DTD
bull rudimentaire mais suffisant dans la plupart des cas bull syntaxe diffeacuterente
le XML-Scheacutemabull puissant (donneacutees plus fortement typeacutees)bull syntaxe de style xml
DTD ouet scheacutema permettent de deacutefinir son propre langage baseacute sur XML Vocabulaire (balises) Grammaire (imbrications)
les donneacutees de controcircle peuvent ecirctre dans le fichier xml lui-mecircme dans un fichier annexe sur le Web
DTDDTD
Une DTD deacutecrit les balises autoriseacutees dans un document xml lrsquoordre dans lequel elles doivent ecirctre imbriqueacutees leurs eacuteventuels attributs les types des informations qursquoelles encapsulent
ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gtltELEMENT adresse (numero rue codePostal ville)gtltATTLIST adresse pays NMTOKENS IMPLIEDgtltELEMENT numero (PCDATA) gtltELEMENT rue (PCDATA) gtltELEMENT codePostal (PCDATA) gtltELEMENT ville (PCDATA) gt
Lien xml DTD Lien xml DTD seacutepareacuteeseacutepareacutee
ltxml version=10 encoding=iso-8859-1gtltDOCTYPE listePersonnes SYSTEM listePersonnesdtd
gtltlistePersonnesgtltpersonne statut =etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
XML DTD 1 seul XML DTD 1 seul fichierfichier
ltxml version=10 encoding=iso-8859-1 standalone=yesgtltDOCTYPE listePersonnes [ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gtltELEMENT adresse (numero rue codePostal ville)gtltATTLIST adresse pays NMTOKENS IMPLIEDgtltELEMENT numero (PCDATA) gtltELEMENT rue (PCDATA) gtltELEMENT codePostal (PCDATA) gtltELEMENT ville (PCDATA) gt]gtltlistePersonnesgtltpersonnegtltstatut libelleacute=etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Lien DTD webLien DTD web
ltxml version=10 encoding=iso-8859-1 standalone=nogtltDOChTtYtPpE
lilsotceaPlehrossotnnleisstSeYPSeTrEsMo nnesdtd gt
ltlistePersonnesgtltpersonne statut =etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Deacuteclaration Deacuteclaration deacuteleacutement simpledeacuteleacutement simple
lt ELEMENT balise (deacutefinition) gt Le paramegravetre deacutefinition repreacutesente soit un type
de donneacutee preacutedeacutefini soit un eacuteleacutement de donneacutees composeacute constitueacute lui mecircme deacuteleacutements
Types preacutedeacutefinisbull ANY Leacuteleacutement peut contenir tout type de donneacutee
bull EMPTY Leacuteleacutement ne contient pas de donneacutees speacutecifiques
bull PCDATA Leacuteleacutement doit contenir une chaicircne de caractegravere
Deacuteclaration Deacuteclaration deacuteleacutement composeacutedeacuteleacutement composeacute
Deacutefinit une seacutequence ou un choix deacuteleacutementsSyntaxe speacutecifique avec opeacuterateurs de composition deacuteleacutements lt ELEMENT balise (composition) gt
Opeacuterateur Signification Exemple + Leacuteleacutement doit ecirctre preacutesent au minimum une fois A+ Leacuteleacutement peut ecirctre preacutesent plusieurs fois (ou aucune) A Leacuteleacutement peut ecirctre optionnellement preacutesent A | Leacuteleacutement A ou B peuvent ecirctre preacutesents (pas les deux) A|B Leacuteleacutement A doit ecirctre preacutesent et suivi de leacuteleacutement B AB
() Les parenthegraveses permettent de regrouper des eacuteleacutements afin de leur appliquer les autres opeacuterateurs
(AB)+
Deacuteclaration Deacuteclaration drsquoattributsdrsquoattributs
lt ATTLIST balise Attribut Type Mode gt balise speacutecifie leacuteleacutement auquel est attacheacute lattributAttribut est le nom de lattribut deacuteclareacuteType deacutefinit le type de donneacutee de lattribut choisi parmi CDATA
bull Chaicircnes de caractegraveres entre guillemets (aa) non analyseacutees Enumeacuteration
bull Liste de valeurs seacutepareacutees par | bull lt ATTLIST balise Attribut (Valeur1 | Valeur2 | ) gt
ID et IDREFbull Cleacute et reacutefeacuterence agrave cleacute
Mode preacutecise le caractegravere obligatoire ou non de lattribut REQUIRED IMPLIED ou FIXED
Exemple drsquoune DTDExemple drsquoune DTD
ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gt
1048710 une balise laquo listePersonnes raquo contient au moins 1 balise personne1048710 une balise laquo personne raquo contient une balise nom une eacuteventuelle balise prenom une balise adresse le tout dans lrsquoordre indiqueacute1048710 la balise laquo personne raquo contient un attribut laquo statut raquo obligatoire1048710 + signifie laquo au moins une raquo1048710 signifie laquo au moins zeacutero raquo1048710 signifie laquo 0 ou 1 raquo1048710 xxx | yyy signifie une de ces deux balises au choix1048710 PCDATA laquo parsed character data raquo1048710 REQUIRED = obligatoire IMPLIED = facultatif
XML ScheacutemaXML Scheacutema
Limite des DTD Description limiteacutee dans des documents
structureacutesbull Problegraveme de typage (PCDATA)
Exprimeacute dans un langage autre que XMLbull Pas les mecircmes parseurs
Objectif de XML Scheacutema Ameacutelioration du typage Ameacutelioration de la structure
bull Nombre borneacute drsquoeacuteleacutements inclus hellip
Remplace de plus en plus la DTD car exprimeacute en syntaxe XML et extensible
XML ScheacutemaXML Scheacutema
Comme une DTD le Scheacutema (xsd) permet de garantir la coheacuterence des donneacutees xml mais sa syntaxe est de style xml le niveau de preacutecision est beaucoup plus eacuteleveacute Dans le document xml
ltlistePersonnes xmlnsxsi=httpwwww3org2001XMLSchema-instance xsinoNamespaceSchemaLocation=listePersonnesxsdgt
XML ScheacutemaXML Scheacutema
Deacuteclaration des eacuteleacutements et attributs Nom Typage similaire agrave lobjet
Speacutecification de types simples Grande varieacuteteacute de types
Geacuteneacuteration de types complexes Seacutequence (Sequence) Choix (Choice) Tas (All)
Les types simplesLes types simples
string Confirm this is electric
byte -1 126
hexBinary 0FB7
boolean true false 1 0
time 132000000 132000000-0500
dateTime 1999-05-31T132000000-0500
duration P1Y2M3DT10H30M123S
float -INF -1E4 -0 0 1278E-2 12 INF
NaN
integer -126789 -1 0 1 126789
positiveInteger 1 126789
negativeInteger -126789 -1
nonNegativeInteger 0 1 126789
nonPositiveInteger -126789 -1 0
int -1 126789675
unsignedInt 0 1267896754
anyURI httpwwwexamplecom
Les types complexesLes types complexes
Deacutefinition dobjets complexes ltsequencegt collection ordonneacutee deacuteleacutements typeacutes ltallgt collection non ordonneacutee deacuteleacutements typeacutes ltchoicegt choix entre eacuteleacutements typeacutes
ExempleltxsdcomplexType name=AddresseFRgt ltxsdsequencegt ltxsdelement name=nom type=xsdstringgt ltxsdelement name=rue type=xsdstringgt ltxsdelement name=ville type=xsdstringgt ltxsdelement name=codep
type=xsddecimalgt ltxsdsequencegt ltxsdattribute name=pays type=xsdNMTOKEN fixed=FRgt ltxsdcomplexTypegt
Les PatternsLes Patterns
Contraintes sur type simple preacutedeacutefini Utilisation dexpression reacuteguliegraveres Similaires agrave celles de Perl
ExempleltxsdsimpleType name=NumItemgt ltxsdrestriction base=xsdstringgt
ltxsdpattern value=d3-[A-Z]2gt ltxsdrestrictiongt ltxsdsimpleTypegt
XML SchemaXML Schemaexemple (1)exemple (1)
ltxsdschema xmlnsxsd=httpwwww3org1999XMLSchemagt
ltxsdelement name=commande type=CommandeTypegt ltxsdelement name=commentaire type=xsdstringgt ltxsdcomplexType name=CommandeTypegt
ltxsdsequencegt ltxsdelement name=livrer type=Adressegt ltxsdelement name=facturer type=Adressegt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=produits type=ProduitTypegt
ltxsdsequencegt ltxsdattribute name=date_com type=xsddategt
ltxsdcomplexTypegt
XML Schema XML Schema exemple (2)exemple (2)
ltxsdcomplexType name=ProduitTypegt ltxsdsequencegt
ltxsdelement name=produit minOccurs=0 maxOccurs=unboundedgt ltxsdcomplexTypegt
ltxsdsequencegt ltxsdelement name=nom_prod type=xsdstringgt ltxsdelement name=quantitegt ltxsdsimpleTypegt ltxsdrestriction
base=xsdpositiveIntegergt ltxsdmaxExclusive value=100gt ltxsdrestrictiongt ltxsdsimpleTypegt ltxsdelementgt ltxsdelement name=prix type=xsddecimalgt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=date_livraison type=xsddate
minOccurs=0gt ltxsdsequencegt ltxsdattribute name=num_prod type=xsdpositiveInteger
use=requiredgt ltxsdcomplexTypegt
ltxsdelementgt ltxsdsequencegt ltxsdcomplexTypegt ltxsdschemagt
Feuille de styleFeuille de style
Feuille de styleFeuille de style
La repreacutesentation de cette lettre en XML ne comporte aucune indication sur sa mise en page Les aspects graphiques ou typographiques sont
absents du source XML Ces aspects seront deacutefinis par lrsquointermeacutediaire
drsquoune feuille de styleUne feuille de style est un ensemble de regravegles pour speacutecifier la reacutealisation concregravete drsquoun document sur un meacutedia particulierOn ajoute dans le deacutebut du fichier xml un lien vers la feuille de style fichier xsl ltxml-stylesheet type=textxsllaquo
href=transformateurxslgt Ce fichier peut ecirctre local ou acceacutedeacute via une URL
Conception de Conception de DTDScheacutemaDTDScheacutema
Possible agrave partir drsquoune modeacutelisation ULM
Quelques outils de Quelques outils de travailtravail
Editeur Outil Support
Tibco Turbo XML DTD XSLScheacutema
Altova XMLSpy DTD Scheacutema XSL Xquery
SyncRO Ltd Oxygen DTD Scheacutema XSL Xquery
Data Junction XML Junction Scheacutema
Insight Soft XMLMate DTD ScheacutemaXSL XPath
XML Mind XMLMind Editor DTD ScheacutemaXSL XPath
Exemple DTDExemple DTD
Convertisseur TAC vers XML (metaf2xml)
ltENTITY cloudType AC|ACC|ACSL|AS|CB|CBMAM|CC|CCSL|CI|CS|CU|CF|CUFRA|NS|SAC|SC|SCSL|ST|SF|STFRA|TCUgt
ltENTITY colourCodes BLUplus|BLU|WHT|GRN|YLO|YLO1|YLO2|AMB|RED|FCSTCANCELgtltENTITY cloudCover FEW|SCT|BKN|OVCgtltENTITY cloudFamily 0|1|2|3|4|5|6|7|8|9gtltENTITY phenomDescr isFrequent|isOccasional|isIntermittent|isContinuous|isThick|
isPrettyThick|isVeryThick|isThin|isPrettyThin|isVeryThin|isFeeble|isPrettyFeeble|isVeryFeeble|isLight|isPrettyLight|isVeryLight|isModerate|isLow|isLower|isIsolated|isConvective|isDissipated|inPastHour|baseBelowStation|isAloft|isAround|isFreezing|isPatchygt
ltENTITY unitRadiation kJmm|JcmcmgtltENTITY unitSpeed KT|MPS|KMHgtltENTITY period 1d|24h|1h|ngtltENTITY compassDir N|NNE|NE|ENE|E|ESE|SE|SSE|S|SSW|SW|WSW|W|WNW|NW|NNWgt
Exemple DTDExemple DTD
ltELEMENT taf (ERROR WARNING obsStation issueTime fcstPeriod reportModifier fcstNotAvbl sfcWind (CAVOK | (visPrev weatherList cloudList visVert)) (turbulence | icing | windShearLvl | QNH) trendList (tempAt | tempMaxAt | tempMinAt | correctedAt |
amendedAt | limMetwatch | autoMetwatch | amendment) tafRemarkList)gtltATTLIST taf s CDATA REQUIREDgt
Exemple xmlExemple xml
ltxml version=10 encoding=UTF-8gtltdatagt ltoptionsgtltformat v=xml gt ltlang v=en gt ltmode v=latest gt
ltmsg_metaf v= gt ltmsg_synop v=AAXX 09004 08495 11459
30714 10147 20136 30151 40159 58005 60001 70511 83500 92350 gt
ltsrc_metaf v=noaa gt ltsrc_synop v=nws_land gt lttype_metaf v=metar gt lttype_synop v=synop gt ltoptionsgt ltreportsgt ltsynop s=AAXX 09004 08495
11459 30714 10147 20136 30151 40159 58005 60001 70511 83500 92350gt
ltobsStationType s=AAXXgt ltstationType v=AAXX gt ltobsStationTypegt ltobsTime s=0900gt ltday v=09 gt lthour
v=00 gt ltminute v=00 gt ltobsTimegt
ltwindIndicator s=4gtltwindUnit v=KT gt ltwindIndicatorgt
ltstationId s=08495gt ltid v=08495 gt ltregion v=VI gt
ltprecipInd s=1gt ltprecipIndVal v=1 gt ltprecipIndgt ltwxInd s=1gt ltwxIndVal v=1 gt ltwxIndgt ltbaseLowestCloud s=4gt ltfrom v=300 u=M gtltto v=600 u=M gt ltbaseLowestCloudgt ltvisPrev s=59gt ltdistance v=9 u=KM gt ltvisPrevgt lttotalCloudCover s=3gt ltoktas v=3 gt lttotalCloudCovergt ltsfcWind s=0714gt ltwindgt ltdir v=70 gt ltspeed v=14 u=KT gt ltwindgt ltsfcWindgt lttemperature s=10147 20136gt ltairgt lttemp v=147 u=C gtltairgt
Exemple Interface Exemple Interface WEBWEB
WIS XMLBUFRWIS XMLBUFR
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
-
XML standardise la maniegravere dont linformation est eacutechangeacutee preacutesenteacutee archiveacutee retrouveacutee transformeacutee crypteacutee
XML crsquoest quoi XML crsquoest quoi
un langage de balises heacuteritier de html sgmlhellipun meacutetalangage lrsquoutilisateur deacutefinit lui-mecircme ses balises
exemple xml ltcoucougtUn texteltcoucougt
XML exemple simpleXML exemple simple
ltxml version=10 encoding=UTF-8gt
ltlistePersonnesgtltpersonne statut =etudiant gtltnomgtDupontltnomgtltprenomgtArthurltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgt91400ltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Encodagepar deacutefautEncodagepar deacutefaut
Balises ouvrantes
et fermantes
Balises ouvrantes
et fermantes
Balise avec attributs
Balise avec attributs
Exemple completExemple complet
Modegravele arborescentModegravele arborescent
RestaurantManager
Adresse
No
Rue
Ville
Le Moulin de Mougin
Dupuis
7
Des Vignes
Mougin
FranccedilaisType
Cateacutegorie
Nom
Au point ougrave nous en Au point ougrave nous en sommessommes
Au point ougrave nous en sommes un document XML est identique agrave un fichier textuel mais il est un peu plus portable (indication de
lrsquoencodage employeacute) chaque information est associeacutee agrave une laquo
eacutetiquette raquo sa balise donc plus facilement identifiable et controcirclable
la qualiteacute de sa structure est facile agrave veacuterifier pour lrsquoinstant la coheacuterence de ses
informations nrsquoest pas garantiehellip
Incoheacuterences Incoheacuterences seacutemantiqueseacutemantique
Exemple drsquoun fichier XML de structure correcte avec des incoheacuterences seacutemantiques
ltxml version=10 encoding=UTF-8gtlt-- commentaire xml --gtltlistePersonnesgtltpersonne statut=etudiantgtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltnumerogt10ltnumerogtltadresse pays=Francegtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Preacutenom numeacuterique
numeacutero mal placeacuteadresse incomplegravetehellip
Controcircle du xmlControcircle du xml
XML nrsquoest vraiment puissant que si la coheacuterence est controcircleacutee pour cela deux technologies au choix le DTD
bull rudimentaire mais suffisant dans la plupart des cas bull syntaxe diffeacuterente
le XML-Scheacutemabull puissant (donneacutees plus fortement typeacutees)bull syntaxe de style xml
DTD ouet scheacutema permettent de deacutefinir son propre langage baseacute sur XML Vocabulaire (balises) Grammaire (imbrications)
les donneacutees de controcircle peuvent ecirctre dans le fichier xml lui-mecircme dans un fichier annexe sur le Web
DTDDTD
Une DTD deacutecrit les balises autoriseacutees dans un document xml lrsquoordre dans lequel elles doivent ecirctre imbriqueacutees leurs eacuteventuels attributs les types des informations qursquoelles encapsulent
ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gtltELEMENT adresse (numero rue codePostal ville)gtltATTLIST adresse pays NMTOKENS IMPLIEDgtltELEMENT numero (PCDATA) gtltELEMENT rue (PCDATA) gtltELEMENT codePostal (PCDATA) gtltELEMENT ville (PCDATA) gt
Lien xml DTD Lien xml DTD seacutepareacuteeseacutepareacutee
ltxml version=10 encoding=iso-8859-1gtltDOCTYPE listePersonnes SYSTEM listePersonnesdtd
gtltlistePersonnesgtltpersonne statut =etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
XML DTD 1 seul XML DTD 1 seul fichierfichier
ltxml version=10 encoding=iso-8859-1 standalone=yesgtltDOCTYPE listePersonnes [ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gtltELEMENT adresse (numero rue codePostal ville)gtltATTLIST adresse pays NMTOKENS IMPLIEDgtltELEMENT numero (PCDATA) gtltELEMENT rue (PCDATA) gtltELEMENT codePostal (PCDATA) gtltELEMENT ville (PCDATA) gt]gtltlistePersonnesgtltpersonnegtltstatut libelleacute=etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Lien DTD webLien DTD web
ltxml version=10 encoding=iso-8859-1 standalone=nogtltDOChTtYtPpE
lilsotceaPlehrossotnnleisstSeYPSeTrEsMo nnesdtd gt
ltlistePersonnesgtltpersonne statut =etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Deacuteclaration Deacuteclaration deacuteleacutement simpledeacuteleacutement simple
lt ELEMENT balise (deacutefinition) gt Le paramegravetre deacutefinition repreacutesente soit un type
de donneacutee preacutedeacutefini soit un eacuteleacutement de donneacutees composeacute constitueacute lui mecircme deacuteleacutements
Types preacutedeacutefinisbull ANY Leacuteleacutement peut contenir tout type de donneacutee
bull EMPTY Leacuteleacutement ne contient pas de donneacutees speacutecifiques
bull PCDATA Leacuteleacutement doit contenir une chaicircne de caractegravere
Deacuteclaration Deacuteclaration deacuteleacutement composeacutedeacuteleacutement composeacute
Deacutefinit une seacutequence ou un choix deacuteleacutementsSyntaxe speacutecifique avec opeacuterateurs de composition deacuteleacutements lt ELEMENT balise (composition) gt
Opeacuterateur Signification Exemple + Leacuteleacutement doit ecirctre preacutesent au minimum une fois A+ Leacuteleacutement peut ecirctre preacutesent plusieurs fois (ou aucune) A Leacuteleacutement peut ecirctre optionnellement preacutesent A | Leacuteleacutement A ou B peuvent ecirctre preacutesents (pas les deux) A|B Leacuteleacutement A doit ecirctre preacutesent et suivi de leacuteleacutement B AB
() Les parenthegraveses permettent de regrouper des eacuteleacutements afin de leur appliquer les autres opeacuterateurs
(AB)+
Deacuteclaration Deacuteclaration drsquoattributsdrsquoattributs
lt ATTLIST balise Attribut Type Mode gt balise speacutecifie leacuteleacutement auquel est attacheacute lattributAttribut est le nom de lattribut deacuteclareacuteType deacutefinit le type de donneacutee de lattribut choisi parmi CDATA
bull Chaicircnes de caractegraveres entre guillemets (aa) non analyseacutees Enumeacuteration
bull Liste de valeurs seacutepareacutees par | bull lt ATTLIST balise Attribut (Valeur1 | Valeur2 | ) gt
ID et IDREFbull Cleacute et reacutefeacuterence agrave cleacute
Mode preacutecise le caractegravere obligatoire ou non de lattribut REQUIRED IMPLIED ou FIXED
Exemple drsquoune DTDExemple drsquoune DTD
ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gt
1048710 une balise laquo listePersonnes raquo contient au moins 1 balise personne1048710 une balise laquo personne raquo contient une balise nom une eacuteventuelle balise prenom une balise adresse le tout dans lrsquoordre indiqueacute1048710 la balise laquo personne raquo contient un attribut laquo statut raquo obligatoire1048710 + signifie laquo au moins une raquo1048710 signifie laquo au moins zeacutero raquo1048710 signifie laquo 0 ou 1 raquo1048710 xxx | yyy signifie une de ces deux balises au choix1048710 PCDATA laquo parsed character data raquo1048710 REQUIRED = obligatoire IMPLIED = facultatif
XML ScheacutemaXML Scheacutema
Limite des DTD Description limiteacutee dans des documents
structureacutesbull Problegraveme de typage (PCDATA)
Exprimeacute dans un langage autre que XMLbull Pas les mecircmes parseurs
Objectif de XML Scheacutema Ameacutelioration du typage Ameacutelioration de la structure
bull Nombre borneacute drsquoeacuteleacutements inclus hellip
Remplace de plus en plus la DTD car exprimeacute en syntaxe XML et extensible
XML ScheacutemaXML Scheacutema
Comme une DTD le Scheacutema (xsd) permet de garantir la coheacuterence des donneacutees xml mais sa syntaxe est de style xml le niveau de preacutecision est beaucoup plus eacuteleveacute Dans le document xml
ltlistePersonnes xmlnsxsi=httpwwww3org2001XMLSchema-instance xsinoNamespaceSchemaLocation=listePersonnesxsdgt
XML ScheacutemaXML Scheacutema
Deacuteclaration des eacuteleacutements et attributs Nom Typage similaire agrave lobjet
Speacutecification de types simples Grande varieacuteteacute de types
Geacuteneacuteration de types complexes Seacutequence (Sequence) Choix (Choice) Tas (All)
Les types simplesLes types simples
string Confirm this is electric
byte -1 126
hexBinary 0FB7
boolean true false 1 0
time 132000000 132000000-0500
dateTime 1999-05-31T132000000-0500
duration P1Y2M3DT10H30M123S
float -INF -1E4 -0 0 1278E-2 12 INF
NaN
integer -126789 -1 0 1 126789
positiveInteger 1 126789
negativeInteger -126789 -1
nonNegativeInteger 0 1 126789
nonPositiveInteger -126789 -1 0
int -1 126789675
unsignedInt 0 1267896754
anyURI httpwwwexamplecom
Les types complexesLes types complexes
Deacutefinition dobjets complexes ltsequencegt collection ordonneacutee deacuteleacutements typeacutes ltallgt collection non ordonneacutee deacuteleacutements typeacutes ltchoicegt choix entre eacuteleacutements typeacutes
ExempleltxsdcomplexType name=AddresseFRgt ltxsdsequencegt ltxsdelement name=nom type=xsdstringgt ltxsdelement name=rue type=xsdstringgt ltxsdelement name=ville type=xsdstringgt ltxsdelement name=codep
type=xsddecimalgt ltxsdsequencegt ltxsdattribute name=pays type=xsdNMTOKEN fixed=FRgt ltxsdcomplexTypegt
Les PatternsLes Patterns
Contraintes sur type simple preacutedeacutefini Utilisation dexpression reacuteguliegraveres Similaires agrave celles de Perl
ExempleltxsdsimpleType name=NumItemgt ltxsdrestriction base=xsdstringgt
ltxsdpattern value=d3-[A-Z]2gt ltxsdrestrictiongt ltxsdsimpleTypegt
XML SchemaXML Schemaexemple (1)exemple (1)
ltxsdschema xmlnsxsd=httpwwww3org1999XMLSchemagt
ltxsdelement name=commande type=CommandeTypegt ltxsdelement name=commentaire type=xsdstringgt ltxsdcomplexType name=CommandeTypegt
ltxsdsequencegt ltxsdelement name=livrer type=Adressegt ltxsdelement name=facturer type=Adressegt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=produits type=ProduitTypegt
ltxsdsequencegt ltxsdattribute name=date_com type=xsddategt
ltxsdcomplexTypegt
XML Schema XML Schema exemple (2)exemple (2)
ltxsdcomplexType name=ProduitTypegt ltxsdsequencegt
ltxsdelement name=produit minOccurs=0 maxOccurs=unboundedgt ltxsdcomplexTypegt
ltxsdsequencegt ltxsdelement name=nom_prod type=xsdstringgt ltxsdelement name=quantitegt ltxsdsimpleTypegt ltxsdrestriction
base=xsdpositiveIntegergt ltxsdmaxExclusive value=100gt ltxsdrestrictiongt ltxsdsimpleTypegt ltxsdelementgt ltxsdelement name=prix type=xsddecimalgt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=date_livraison type=xsddate
minOccurs=0gt ltxsdsequencegt ltxsdattribute name=num_prod type=xsdpositiveInteger
use=requiredgt ltxsdcomplexTypegt
ltxsdelementgt ltxsdsequencegt ltxsdcomplexTypegt ltxsdschemagt
Feuille de styleFeuille de style
Feuille de styleFeuille de style
La repreacutesentation de cette lettre en XML ne comporte aucune indication sur sa mise en page Les aspects graphiques ou typographiques sont
absents du source XML Ces aspects seront deacutefinis par lrsquointermeacutediaire
drsquoune feuille de styleUne feuille de style est un ensemble de regravegles pour speacutecifier la reacutealisation concregravete drsquoun document sur un meacutedia particulierOn ajoute dans le deacutebut du fichier xml un lien vers la feuille de style fichier xsl ltxml-stylesheet type=textxsllaquo
href=transformateurxslgt Ce fichier peut ecirctre local ou acceacutedeacute via une URL
Conception de Conception de DTDScheacutemaDTDScheacutema
Possible agrave partir drsquoune modeacutelisation ULM
Quelques outils de Quelques outils de travailtravail
Editeur Outil Support
Tibco Turbo XML DTD XSLScheacutema
Altova XMLSpy DTD Scheacutema XSL Xquery
SyncRO Ltd Oxygen DTD Scheacutema XSL Xquery
Data Junction XML Junction Scheacutema
Insight Soft XMLMate DTD ScheacutemaXSL XPath
XML Mind XMLMind Editor DTD ScheacutemaXSL XPath
Exemple DTDExemple DTD
Convertisseur TAC vers XML (metaf2xml)
ltENTITY cloudType AC|ACC|ACSL|AS|CB|CBMAM|CC|CCSL|CI|CS|CU|CF|CUFRA|NS|SAC|SC|SCSL|ST|SF|STFRA|TCUgt
ltENTITY colourCodes BLUplus|BLU|WHT|GRN|YLO|YLO1|YLO2|AMB|RED|FCSTCANCELgtltENTITY cloudCover FEW|SCT|BKN|OVCgtltENTITY cloudFamily 0|1|2|3|4|5|6|7|8|9gtltENTITY phenomDescr isFrequent|isOccasional|isIntermittent|isContinuous|isThick|
isPrettyThick|isVeryThick|isThin|isPrettyThin|isVeryThin|isFeeble|isPrettyFeeble|isVeryFeeble|isLight|isPrettyLight|isVeryLight|isModerate|isLow|isLower|isIsolated|isConvective|isDissipated|inPastHour|baseBelowStation|isAloft|isAround|isFreezing|isPatchygt
ltENTITY unitRadiation kJmm|JcmcmgtltENTITY unitSpeed KT|MPS|KMHgtltENTITY period 1d|24h|1h|ngtltENTITY compassDir N|NNE|NE|ENE|E|ESE|SE|SSE|S|SSW|SW|WSW|W|WNW|NW|NNWgt
Exemple DTDExemple DTD
ltELEMENT taf (ERROR WARNING obsStation issueTime fcstPeriod reportModifier fcstNotAvbl sfcWind (CAVOK | (visPrev weatherList cloudList visVert)) (turbulence | icing | windShearLvl | QNH) trendList (tempAt | tempMaxAt | tempMinAt | correctedAt |
amendedAt | limMetwatch | autoMetwatch | amendment) tafRemarkList)gtltATTLIST taf s CDATA REQUIREDgt
Exemple xmlExemple xml
ltxml version=10 encoding=UTF-8gtltdatagt ltoptionsgtltformat v=xml gt ltlang v=en gt ltmode v=latest gt
ltmsg_metaf v= gt ltmsg_synop v=AAXX 09004 08495 11459
30714 10147 20136 30151 40159 58005 60001 70511 83500 92350 gt
ltsrc_metaf v=noaa gt ltsrc_synop v=nws_land gt lttype_metaf v=metar gt lttype_synop v=synop gt ltoptionsgt ltreportsgt ltsynop s=AAXX 09004 08495
11459 30714 10147 20136 30151 40159 58005 60001 70511 83500 92350gt
ltobsStationType s=AAXXgt ltstationType v=AAXX gt ltobsStationTypegt ltobsTime s=0900gt ltday v=09 gt lthour
v=00 gt ltminute v=00 gt ltobsTimegt
ltwindIndicator s=4gtltwindUnit v=KT gt ltwindIndicatorgt
ltstationId s=08495gt ltid v=08495 gt ltregion v=VI gt
ltprecipInd s=1gt ltprecipIndVal v=1 gt ltprecipIndgt ltwxInd s=1gt ltwxIndVal v=1 gt ltwxIndgt ltbaseLowestCloud s=4gt ltfrom v=300 u=M gtltto v=600 u=M gt ltbaseLowestCloudgt ltvisPrev s=59gt ltdistance v=9 u=KM gt ltvisPrevgt lttotalCloudCover s=3gt ltoktas v=3 gt lttotalCloudCovergt ltsfcWind s=0714gt ltwindgt ltdir v=70 gt ltspeed v=14 u=KT gt ltwindgt ltsfcWindgt lttemperature s=10147 20136gt ltairgt lttemp v=147 u=C gtltairgt
Exemple Interface Exemple Interface WEBWEB
WIS XMLBUFRWIS XMLBUFR
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
-
XML crsquoest quoi XML crsquoest quoi
un langage de balises heacuteritier de html sgmlhellipun meacutetalangage lrsquoutilisateur deacutefinit lui-mecircme ses balises
exemple xml ltcoucougtUn texteltcoucougt
XML exemple simpleXML exemple simple
ltxml version=10 encoding=UTF-8gt
ltlistePersonnesgtltpersonne statut =etudiant gtltnomgtDupontltnomgtltprenomgtArthurltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgt91400ltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Encodagepar deacutefautEncodagepar deacutefaut
Balises ouvrantes
et fermantes
Balises ouvrantes
et fermantes
Balise avec attributs
Balise avec attributs
Exemple completExemple complet
Modegravele arborescentModegravele arborescent
RestaurantManager
Adresse
No
Rue
Ville
Le Moulin de Mougin
Dupuis
7
Des Vignes
Mougin
FranccedilaisType
Cateacutegorie
Nom
Au point ougrave nous en Au point ougrave nous en sommessommes
Au point ougrave nous en sommes un document XML est identique agrave un fichier textuel mais il est un peu plus portable (indication de
lrsquoencodage employeacute) chaque information est associeacutee agrave une laquo
eacutetiquette raquo sa balise donc plus facilement identifiable et controcirclable
la qualiteacute de sa structure est facile agrave veacuterifier pour lrsquoinstant la coheacuterence de ses
informations nrsquoest pas garantiehellip
Incoheacuterences Incoheacuterences seacutemantiqueseacutemantique
Exemple drsquoun fichier XML de structure correcte avec des incoheacuterences seacutemantiques
ltxml version=10 encoding=UTF-8gtlt-- commentaire xml --gtltlistePersonnesgtltpersonne statut=etudiantgtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltnumerogt10ltnumerogtltadresse pays=Francegtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Preacutenom numeacuterique
numeacutero mal placeacuteadresse incomplegravetehellip
Controcircle du xmlControcircle du xml
XML nrsquoest vraiment puissant que si la coheacuterence est controcircleacutee pour cela deux technologies au choix le DTD
bull rudimentaire mais suffisant dans la plupart des cas bull syntaxe diffeacuterente
le XML-Scheacutemabull puissant (donneacutees plus fortement typeacutees)bull syntaxe de style xml
DTD ouet scheacutema permettent de deacutefinir son propre langage baseacute sur XML Vocabulaire (balises) Grammaire (imbrications)
les donneacutees de controcircle peuvent ecirctre dans le fichier xml lui-mecircme dans un fichier annexe sur le Web
DTDDTD
Une DTD deacutecrit les balises autoriseacutees dans un document xml lrsquoordre dans lequel elles doivent ecirctre imbriqueacutees leurs eacuteventuels attributs les types des informations qursquoelles encapsulent
ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gtltELEMENT adresse (numero rue codePostal ville)gtltATTLIST adresse pays NMTOKENS IMPLIEDgtltELEMENT numero (PCDATA) gtltELEMENT rue (PCDATA) gtltELEMENT codePostal (PCDATA) gtltELEMENT ville (PCDATA) gt
Lien xml DTD Lien xml DTD seacutepareacuteeseacutepareacutee
ltxml version=10 encoding=iso-8859-1gtltDOCTYPE listePersonnes SYSTEM listePersonnesdtd
gtltlistePersonnesgtltpersonne statut =etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
XML DTD 1 seul XML DTD 1 seul fichierfichier
ltxml version=10 encoding=iso-8859-1 standalone=yesgtltDOCTYPE listePersonnes [ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gtltELEMENT adresse (numero rue codePostal ville)gtltATTLIST adresse pays NMTOKENS IMPLIEDgtltELEMENT numero (PCDATA) gtltELEMENT rue (PCDATA) gtltELEMENT codePostal (PCDATA) gtltELEMENT ville (PCDATA) gt]gtltlistePersonnesgtltpersonnegtltstatut libelleacute=etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Lien DTD webLien DTD web
ltxml version=10 encoding=iso-8859-1 standalone=nogtltDOChTtYtPpE
lilsotceaPlehrossotnnleisstSeYPSeTrEsMo nnesdtd gt
ltlistePersonnesgtltpersonne statut =etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Deacuteclaration Deacuteclaration deacuteleacutement simpledeacuteleacutement simple
lt ELEMENT balise (deacutefinition) gt Le paramegravetre deacutefinition repreacutesente soit un type
de donneacutee preacutedeacutefini soit un eacuteleacutement de donneacutees composeacute constitueacute lui mecircme deacuteleacutements
Types preacutedeacutefinisbull ANY Leacuteleacutement peut contenir tout type de donneacutee
bull EMPTY Leacuteleacutement ne contient pas de donneacutees speacutecifiques
bull PCDATA Leacuteleacutement doit contenir une chaicircne de caractegravere
Deacuteclaration Deacuteclaration deacuteleacutement composeacutedeacuteleacutement composeacute
Deacutefinit une seacutequence ou un choix deacuteleacutementsSyntaxe speacutecifique avec opeacuterateurs de composition deacuteleacutements lt ELEMENT balise (composition) gt
Opeacuterateur Signification Exemple + Leacuteleacutement doit ecirctre preacutesent au minimum une fois A+ Leacuteleacutement peut ecirctre preacutesent plusieurs fois (ou aucune) A Leacuteleacutement peut ecirctre optionnellement preacutesent A | Leacuteleacutement A ou B peuvent ecirctre preacutesents (pas les deux) A|B Leacuteleacutement A doit ecirctre preacutesent et suivi de leacuteleacutement B AB
() Les parenthegraveses permettent de regrouper des eacuteleacutements afin de leur appliquer les autres opeacuterateurs
(AB)+
Deacuteclaration Deacuteclaration drsquoattributsdrsquoattributs
lt ATTLIST balise Attribut Type Mode gt balise speacutecifie leacuteleacutement auquel est attacheacute lattributAttribut est le nom de lattribut deacuteclareacuteType deacutefinit le type de donneacutee de lattribut choisi parmi CDATA
bull Chaicircnes de caractegraveres entre guillemets (aa) non analyseacutees Enumeacuteration
bull Liste de valeurs seacutepareacutees par | bull lt ATTLIST balise Attribut (Valeur1 | Valeur2 | ) gt
ID et IDREFbull Cleacute et reacutefeacuterence agrave cleacute
Mode preacutecise le caractegravere obligatoire ou non de lattribut REQUIRED IMPLIED ou FIXED
Exemple drsquoune DTDExemple drsquoune DTD
ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gt
1048710 une balise laquo listePersonnes raquo contient au moins 1 balise personne1048710 une balise laquo personne raquo contient une balise nom une eacuteventuelle balise prenom une balise adresse le tout dans lrsquoordre indiqueacute1048710 la balise laquo personne raquo contient un attribut laquo statut raquo obligatoire1048710 + signifie laquo au moins une raquo1048710 signifie laquo au moins zeacutero raquo1048710 signifie laquo 0 ou 1 raquo1048710 xxx | yyy signifie une de ces deux balises au choix1048710 PCDATA laquo parsed character data raquo1048710 REQUIRED = obligatoire IMPLIED = facultatif
XML ScheacutemaXML Scheacutema
Limite des DTD Description limiteacutee dans des documents
structureacutesbull Problegraveme de typage (PCDATA)
Exprimeacute dans un langage autre que XMLbull Pas les mecircmes parseurs
Objectif de XML Scheacutema Ameacutelioration du typage Ameacutelioration de la structure
bull Nombre borneacute drsquoeacuteleacutements inclus hellip
Remplace de plus en plus la DTD car exprimeacute en syntaxe XML et extensible
XML ScheacutemaXML Scheacutema
Comme une DTD le Scheacutema (xsd) permet de garantir la coheacuterence des donneacutees xml mais sa syntaxe est de style xml le niveau de preacutecision est beaucoup plus eacuteleveacute Dans le document xml
ltlistePersonnes xmlnsxsi=httpwwww3org2001XMLSchema-instance xsinoNamespaceSchemaLocation=listePersonnesxsdgt
XML ScheacutemaXML Scheacutema
Deacuteclaration des eacuteleacutements et attributs Nom Typage similaire agrave lobjet
Speacutecification de types simples Grande varieacuteteacute de types
Geacuteneacuteration de types complexes Seacutequence (Sequence) Choix (Choice) Tas (All)
Les types simplesLes types simples
string Confirm this is electric
byte -1 126
hexBinary 0FB7
boolean true false 1 0
time 132000000 132000000-0500
dateTime 1999-05-31T132000000-0500
duration P1Y2M3DT10H30M123S
float -INF -1E4 -0 0 1278E-2 12 INF
NaN
integer -126789 -1 0 1 126789
positiveInteger 1 126789
negativeInteger -126789 -1
nonNegativeInteger 0 1 126789
nonPositiveInteger -126789 -1 0
int -1 126789675
unsignedInt 0 1267896754
anyURI httpwwwexamplecom
Les types complexesLes types complexes
Deacutefinition dobjets complexes ltsequencegt collection ordonneacutee deacuteleacutements typeacutes ltallgt collection non ordonneacutee deacuteleacutements typeacutes ltchoicegt choix entre eacuteleacutements typeacutes
ExempleltxsdcomplexType name=AddresseFRgt ltxsdsequencegt ltxsdelement name=nom type=xsdstringgt ltxsdelement name=rue type=xsdstringgt ltxsdelement name=ville type=xsdstringgt ltxsdelement name=codep
type=xsddecimalgt ltxsdsequencegt ltxsdattribute name=pays type=xsdNMTOKEN fixed=FRgt ltxsdcomplexTypegt
Les PatternsLes Patterns
Contraintes sur type simple preacutedeacutefini Utilisation dexpression reacuteguliegraveres Similaires agrave celles de Perl
ExempleltxsdsimpleType name=NumItemgt ltxsdrestriction base=xsdstringgt
ltxsdpattern value=d3-[A-Z]2gt ltxsdrestrictiongt ltxsdsimpleTypegt
XML SchemaXML Schemaexemple (1)exemple (1)
ltxsdschema xmlnsxsd=httpwwww3org1999XMLSchemagt
ltxsdelement name=commande type=CommandeTypegt ltxsdelement name=commentaire type=xsdstringgt ltxsdcomplexType name=CommandeTypegt
ltxsdsequencegt ltxsdelement name=livrer type=Adressegt ltxsdelement name=facturer type=Adressegt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=produits type=ProduitTypegt
ltxsdsequencegt ltxsdattribute name=date_com type=xsddategt
ltxsdcomplexTypegt
XML Schema XML Schema exemple (2)exemple (2)
ltxsdcomplexType name=ProduitTypegt ltxsdsequencegt
ltxsdelement name=produit minOccurs=0 maxOccurs=unboundedgt ltxsdcomplexTypegt
ltxsdsequencegt ltxsdelement name=nom_prod type=xsdstringgt ltxsdelement name=quantitegt ltxsdsimpleTypegt ltxsdrestriction
base=xsdpositiveIntegergt ltxsdmaxExclusive value=100gt ltxsdrestrictiongt ltxsdsimpleTypegt ltxsdelementgt ltxsdelement name=prix type=xsddecimalgt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=date_livraison type=xsddate
minOccurs=0gt ltxsdsequencegt ltxsdattribute name=num_prod type=xsdpositiveInteger
use=requiredgt ltxsdcomplexTypegt
ltxsdelementgt ltxsdsequencegt ltxsdcomplexTypegt ltxsdschemagt
Feuille de styleFeuille de style
Feuille de styleFeuille de style
La repreacutesentation de cette lettre en XML ne comporte aucune indication sur sa mise en page Les aspects graphiques ou typographiques sont
absents du source XML Ces aspects seront deacutefinis par lrsquointermeacutediaire
drsquoune feuille de styleUne feuille de style est un ensemble de regravegles pour speacutecifier la reacutealisation concregravete drsquoun document sur un meacutedia particulierOn ajoute dans le deacutebut du fichier xml un lien vers la feuille de style fichier xsl ltxml-stylesheet type=textxsllaquo
href=transformateurxslgt Ce fichier peut ecirctre local ou acceacutedeacute via une URL
Conception de Conception de DTDScheacutemaDTDScheacutema
Possible agrave partir drsquoune modeacutelisation ULM
Quelques outils de Quelques outils de travailtravail
Editeur Outil Support
Tibco Turbo XML DTD XSLScheacutema
Altova XMLSpy DTD Scheacutema XSL Xquery
SyncRO Ltd Oxygen DTD Scheacutema XSL Xquery
Data Junction XML Junction Scheacutema
Insight Soft XMLMate DTD ScheacutemaXSL XPath
XML Mind XMLMind Editor DTD ScheacutemaXSL XPath
Exemple DTDExemple DTD
Convertisseur TAC vers XML (metaf2xml)
ltENTITY cloudType AC|ACC|ACSL|AS|CB|CBMAM|CC|CCSL|CI|CS|CU|CF|CUFRA|NS|SAC|SC|SCSL|ST|SF|STFRA|TCUgt
ltENTITY colourCodes BLUplus|BLU|WHT|GRN|YLO|YLO1|YLO2|AMB|RED|FCSTCANCELgtltENTITY cloudCover FEW|SCT|BKN|OVCgtltENTITY cloudFamily 0|1|2|3|4|5|6|7|8|9gtltENTITY phenomDescr isFrequent|isOccasional|isIntermittent|isContinuous|isThick|
isPrettyThick|isVeryThick|isThin|isPrettyThin|isVeryThin|isFeeble|isPrettyFeeble|isVeryFeeble|isLight|isPrettyLight|isVeryLight|isModerate|isLow|isLower|isIsolated|isConvective|isDissipated|inPastHour|baseBelowStation|isAloft|isAround|isFreezing|isPatchygt
ltENTITY unitRadiation kJmm|JcmcmgtltENTITY unitSpeed KT|MPS|KMHgtltENTITY period 1d|24h|1h|ngtltENTITY compassDir N|NNE|NE|ENE|E|ESE|SE|SSE|S|SSW|SW|WSW|W|WNW|NW|NNWgt
Exemple DTDExemple DTD
ltELEMENT taf (ERROR WARNING obsStation issueTime fcstPeriod reportModifier fcstNotAvbl sfcWind (CAVOK | (visPrev weatherList cloudList visVert)) (turbulence | icing | windShearLvl | QNH) trendList (tempAt | tempMaxAt | tempMinAt | correctedAt |
amendedAt | limMetwatch | autoMetwatch | amendment) tafRemarkList)gtltATTLIST taf s CDATA REQUIREDgt
Exemple xmlExemple xml
ltxml version=10 encoding=UTF-8gtltdatagt ltoptionsgtltformat v=xml gt ltlang v=en gt ltmode v=latest gt
ltmsg_metaf v= gt ltmsg_synop v=AAXX 09004 08495 11459
30714 10147 20136 30151 40159 58005 60001 70511 83500 92350 gt
ltsrc_metaf v=noaa gt ltsrc_synop v=nws_land gt lttype_metaf v=metar gt lttype_synop v=synop gt ltoptionsgt ltreportsgt ltsynop s=AAXX 09004 08495
11459 30714 10147 20136 30151 40159 58005 60001 70511 83500 92350gt
ltobsStationType s=AAXXgt ltstationType v=AAXX gt ltobsStationTypegt ltobsTime s=0900gt ltday v=09 gt lthour
v=00 gt ltminute v=00 gt ltobsTimegt
ltwindIndicator s=4gtltwindUnit v=KT gt ltwindIndicatorgt
ltstationId s=08495gt ltid v=08495 gt ltregion v=VI gt
ltprecipInd s=1gt ltprecipIndVal v=1 gt ltprecipIndgt ltwxInd s=1gt ltwxIndVal v=1 gt ltwxIndgt ltbaseLowestCloud s=4gt ltfrom v=300 u=M gtltto v=600 u=M gt ltbaseLowestCloudgt ltvisPrev s=59gt ltdistance v=9 u=KM gt ltvisPrevgt lttotalCloudCover s=3gt ltoktas v=3 gt lttotalCloudCovergt ltsfcWind s=0714gt ltwindgt ltdir v=70 gt ltspeed v=14 u=KT gt ltwindgt ltsfcWindgt lttemperature s=10147 20136gt ltairgt lttemp v=147 u=C gtltairgt
Exemple Interface Exemple Interface WEBWEB
WIS XMLBUFRWIS XMLBUFR
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
-
XML exemple simpleXML exemple simple
ltxml version=10 encoding=UTF-8gt
ltlistePersonnesgtltpersonne statut =etudiant gtltnomgtDupontltnomgtltprenomgtArthurltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgt91400ltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Encodagepar deacutefautEncodagepar deacutefaut
Balises ouvrantes
et fermantes
Balises ouvrantes
et fermantes
Balise avec attributs
Balise avec attributs
Exemple completExemple complet
Modegravele arborescentModegravele arborescent
RestaurantManager
Adresse
No
Rue
Ville
Le Moulin de Mougin
Dupuis
7
Des Vignes
Mougin
FranccedilaisType
Cateacutegorie
Nom
Au point ougrave nous en Au point ougrave nous en sommessommes
Au point ougrave nous en sommes un document XML est identique agrave un fichier textuel mais il est un peu plus portable (indication de
lrsquoencodage employeacute) chaque information est associeacutee agrave une laquo
eacutetiquette raquo sa balise donc plus facilement identifiable et controcirclable
la qualiteacute de sa structure est facile agrave veacuterifier pour lrsquoinstant la coheacuterence de ses
informations nrsquoest pas garantiehellip
Incoheacuterences Incoheacuterences seacutemantiqueseacutemantique
Exemple drsquoun fichier XML de structure correcte avec des incoheacuterences seacutemantiques
ltxml version=10 encoding=UTF-8gtlt-- commentaire xml --gtltlistePersonnesgtltpersonne statut=etudiantgtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltnumerogt10ltnumerogtltadresse pays=Francegtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Preacutenom numeacuterique
numeacutero mal placeacuteadresse incomplegravetehellip
Controcircle du xmlControcircle du xml
XML nrsquoest vraiment puissant que si la coheacuterence est controcircleacutee pour cela deux technologies au choix le DTD
bull rudimentaire mais suffisant dans la plupart des cas bull syntaxe diffeacuterente
le XML-Scheacutemabull puissant (donneacutees plus fortement typeacutees)bull syntaxe de style xml
DTD ouet scheacutema permettent de deacutefinir son propre langage baseacute sur XML Vocabulaire (balises) Grammaire (imbrications)
les donneacutees de controcircle peuvent ecirctre dans le fichier xml lui-mecircme dans un fichier annexe sur le Web
DTDDTD
Une DTD deacutecrit les balises autoriseacutees dans un document xml lrsquoordre dans lequel elles doivent ecirctre imbriqueacutees leurs eacuteventuels attributs les types des informations qursquoelles encapsulent
ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gtltELEMENT adresse (numero rue codePostal ville)gtltATTLIST adresse pays NMTOKENS IMPLIEDgtltELEMENT numero (PCDATA) gtltELEMENT rue (PCDATA) gtltELEMENT codePostal (PCDATA) gtltELEMENT ville (PCDATA) gt
Lien xml DTD Lien xml DTD seacutepareacuteeseacutepareacutee
ltxml version=10 encoding=iso-8859-1gtltDOCTYPE listePersonnes SYSTEM listePersonnesdtd
gtltlistePersonnesgtltpersonne statut =etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
XML DTD 1 seul XML DTD 1 seul fichierfichier
ltxml version=10 encoding=iso-8859-1 standalone=yesgtltDOCTYPE listePersonnes [ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gtltELEMENT adresse (numero rue codePostal ville)gtltATTLIST adresse pays NMTOKENS IMPLIEDgtltELEMENT numero (PCDATA) gtltELEMENT rue (PCDATA) gtltELEMENT codePostal (PCDATA) gtltELEMENT ville (PCDATA) gt]gtltlistePersonnesgtltpersonnegtltstatut libelleacute=etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Lien DTD webLien DTD web
ltxml version=10 encoding=iso-8859-1 standalone=nogtltDOChTtYtPpE
lilsotceaPlehrossotnnleisstSeYPSeTrEsMo nnesdtd gt
ltlistePersonnesgtltpersonne statut =etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Deacuteclaration Deacuteclaration deacuteleacutement simpledeacuteleacutement simple
lt ELEMENT balise (deacutefinition) gt Le paramegravetre deacutefinition repreacutesente soit un type
de donneacutee preacutedeacutefini soit un eacuteleacutement de donneacutees composeacute constitueacute lui mecircme deacuteleacutements
Types preacutedeacutefinisbull ANY Leacuteleacutement peut contenir tout type de donneacutee
bull EMPTY Leacuteleacutement ne contient pas de donneacutees speacutecifiques
bull PCDATA Leacuteleacutement doit contenir une chaicircne de caractegravere
Deacuteclaration Deacuteclaration deacuteleacutement composeacutedeacuteleacutement composeacute
Deacutefinit une seacutequence ou un choix deacuteleacutementsSyntaxe speacutecifique avec opeacuterateurs de composition deacuteleacutements lt ELEMENT balise (composition) gt
Opeacuterateur Signification Exemple + Leacuteleacutement doit ecirctre preacutesent au minimum une fois A+ Leacuteleacutement peut ecirctre preacutesent plusieurs fois (ou aucune) A Leacuteleacutement peut ecirctre optionnellement preacutesent A | Leacuteleacutement A ou B peuvent ecirctre preacutesents (pas les deux) A|B Leacuteleacutement A doit ecirctre preacutesent et suivi de leacuteleacutement B AB
() Les parenthegraveses permettent de regrouper des eacuteleacutements afin de leur appliquer les autres opeacuterateurs
(AB)+
Deacuteclaration Deacuteclaration drsquoattributsdrsquoattributs
lt ATTLIST balise Attribut Type Mode gt balise speacutecifie leacuteleacutement auquel est attacheacute lattributAttribut est le nom de lattribut deacuteclareacuteType deacutefinit le type de donneacutee de lattribut choisi parmi CDATA
bull Chaicircnes de caractegraveres entre guillemets (aa) non analyseacutees Enumeacuteration
bull Liste de valeurs seacutepareacutees par | bull lt ATTLIST balise Attribut (Valeur1 | Valeur2 | ) gt
ID et IDREFbull Cleacute et reacutefeacuterence agrave cleacute
Mode preacutecise le caractegravere obligatoire ou non de lattribut REQUIRED IMPLIED ou FIXED
Exemple drsquoune DTDExemple drsquoune DTD
ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gt
1048710 une balise laquo listePersonnes raquo contient au moins 1 balise personne1048710 une balise laquo personne raquo contient une balise nom une eacuteventuelle balise prenom une balise adresse le tout dans lrsquoordre indiqueacute1048710 la balise laquo personne raquo contient un attribut laquo statut raquo obligatoire1048710 + signifie laquo au moins une raquo1048710 signifie laquo au moins zeacutero raquo1048710 signifie laquo 0 ou 1 raquo1048710 xxx | yyy signifie une de ces deux balises au choix1048710 PCDATA laquo parsed character data raquo1048710 REQUIRED = obligatoire IMPLIED = facultatif
XML ScheacutemaXML Scheacutema
Limite des DTD Description limiteacutee dans des documents
structureacutesbull Problegraveme de typage (PCDATA)
Exprimeacute dans un langage autre que XMLbull Pas les mecircmes parseurs
Objectif de XML Scheacutema Ameacutelioration du typage Ameacutelioration de la structure
bull Nombre borneacute drsquoeacuteleacutements inclus hellip
Remplace de plus en plus la DTD car exprimeacute en syntaxe XML et extensible
XML ScheacutemaXML Scheacutema
Comme une DTD le Scheacutema (xsd) permet de garantir la coheacuterence des donneacutees xml mais sa syntaxe est de style xml le niveau de preacutecision est beaucoup plus eacuteleveacute Dans le document xml
ltlistePersonnes xmlnsxsi=httpwwww3org2001XMLSchema-instance xsinoNamespaceSchemaLocation=listePersonnesxsdgt
XML ScheacutemaXML Scheacutema
Deacuteclaration des eacuteleacutements et attributs Nom Typage similaire agrave lobjet
Speacutecification de types simples Grande varieacuteteacute de types
Geacuteneacuteration de types complexes Seacutequence (Sequence) Choix (Choice) Tas (All)
Les types simplesLes types simples
string Confirm this is electric
byte -1 126
hexBinary 0FB7
boolean true false 1 0
time 132000000 132000000-0500
dateTime 1999-05-31T132000000-0500
duration P1Y2M3DT10H30M123S
float -INF -1E4 -0 0 1278E-2 12 INF
NaN
integer -126789 -1 0 1 126789
positiveInteger 1 126789
negativeInteger -126789 -1
nonNegativeInteger 0 1 126789
nonPositiveInteger -126789 -1 0
int -1 126789675
unsignedInt 0 1267896754
anyURI httpwwwexamplecom
Les types complexesLes types complexes
Deacutefinition dobjets complexes ltsequencegt collection ordonneacutee deacuteleacutements typeacutes ltallgt collection non ordonneacutee deacuteleacutements typeacutes ltchoicegt choix entre eacuteleacutements typeacutes
ExempleltxsdcomplexType name=AddresseFRgt ltxsdsequencegt ltxsdelement name=nom type=xsdstringgt ltxsdelement name=rue type=xsdstringgt ltxsdelement name=ville type=xsdstringgt ltxsdelement name=codep
type=xsddecimalgt ltxsdsequencegt ltxsdattribute name=pays type=xsdNMTOKEN fixed=FRgt ltxsdcomplexTypegt
Les PatternsLes Patterns
Contraintes sur type simple preacutedeacutefini Utilisation dexpression reacuteguliegraveres Similaires agrave celles de Perl
ExempleltxsdsimpleType name=NumItemgt ltxsdrestriction base=xsdstringgt
ltxsdpattern value=d3-[A-Z]2gt ltxsdrestrictiongt ltxsdsimpleTypegt
XML SchemaXML Schemaexemple (1)exemple (1)
ltxsdschema xmlnsxsd=httpwwww3org1999XMLSchemagt
ltxsdelement name=commande type=CommandeTypegt ltxsdelement name=commentaire type=xsdstringgt ltxsdcomplexType name=CommandeTypegt
ltxsdsequencegt ltxsdelement name=livrer type=Adressegt ltxsdelement name=facturer type=Adressegt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=produits type=ProduitTypegt
ltxsdsequencegt ltxsdattribute name=date_com type=xsddategt
ltxsdcomplexTypegt
XML Schema XML Schema exemple (2)exemple (2)
ltxsdcomplexType name=ProduitTypegt ltxsdsequencegt
ltxsdelement name=produit minOccurs=0 maxOccurs=unboundedgt ltxsdcomplexTypegt
ltxsdsequencegt ltxsdelement name=nom_prod type=xsdstringgt ltxsdelement name=quantitegt ltxsdsimpleTypegt ltxsdrestriction
base=xsdpositiveIntegergt ltxsdmaxExclusive value=100gt ltxsdrestrictiongt ltxsdsimpleTypegt ltxsdelementgt ltxsdelement name=prix type=xsddecimalgt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=date_livraison type=xsddate
minOccurs=0gt ltxsdsequencegt ltxsdattribute name=num_prod type=xsdpositiveInteger
use=requiredgt ltxsdcomplexTypegt
ltxsdelementgt ltxsdsequencegt ltxsdcomplexTypegt ltxsdschemagt
Feuille de styleFeuille de style
Feuille de styleFeuille de style
La repreacutesentation de cette lettre en XML ne comporte aucune indication sur sa mise en page Les aspects graphiques ou typographiques sont
absents du source XML Ces aspects seront deacutefinis par lrsquointermeacutediaire
drsquoune feuille de styleUne feuille de style est un ensemble de regravegles pour speacutecifier la reacutealisation concregravete drsquoun document sur un meacutedia particulierOn ajoute dans le deacutebut du fichier xml un lien vers la feuille de style fichier xsl ltxml-stylesheet type=textxsllaquo
href=transformateurxslgt Ce fichier peut ecirctre local ou acceacutedeacute via une URL
Conception de Conception de DTDScheacutemaDTDScheacutema
Possible agrave partir drsquoune modeacutelisation ULM
Quelques outils de Quelques outils de travailtravail
Editeur Outil Support
Tibco Turbo XML DTD XSLScheacutema
Altova XMLSpy DTD Scheacutema XSL Xquery
SyncRO Ltd Oxygen DTD Scheacutema XSL Xquery
Data Junction XML Junction Scheacutema
Insight Soft XMLMate DTD ScheacutemaXSL XPath
XML Mind XMLMind Editor DTD ScheacutemaXSL XPath
Exemple DTDExemple DTD
Convertisseur TAC vers XML (metaf2xml)
ltENTITY cloudType AC|ACC|ACSL|AS|CB|CBMAM|CC|CCSL|CI|CS|CU|CF|CUFRA|NS|SAC|SC|SCSL|ST|SF|STFRA|TCUgt
ltENTITY colourCodes BLUplus|BLU|WHT|GRN|YLO|YLO1|YLO2|AMB|RED|FCSTCANCELgtltENTITY cloudCover FEW|SCT|BKN|OVCgtltENTITY cloudFamily 0|1|2|3|4|5|6|7|8|9gtltENTITY phenomDescr isFrequent|isOccasional|isIntermittent|isContinuous|isThick|
isPrettyThick|isVeryThick|isThin|isPrettyThin|isVeryThin|isFeeble|isPrettyFeeble|isVeryFeeble|isLight|isPrettyLight|isVeryLight|isModerate|isLow|isLower|isIsolated|isConvective|isDissipated|inPastHour|baseBelowStation|isAloft|isAround|isFreezing|isPatchygt
ltENTITY unitRadiation kJmm|JcmcmgtltENTITY unitSpeed KT|MPS|KMHgtltENTITY period 1d|24h|1h|ngtltENTITY compassDir N|NNE|NE|ENE|E|ESE|SE|SSE|S|SSW|SW|WSW|W|WNW|NW|NNWgt
Exemple DTDExemple DTD
ltELEMENT taf (ERROR WARNING obsStation issueTime fcstPeriod reportModifier fcstNotAvbl sfcWind (CAVOK | (visPrev weatherList cloudList visVert)) (turbulence | icing | windShearLvl | QNH) trendList (tempAt | tempMaxAt | tempMinAt | correctedAt |
amendedAt | limMetwatch | autoMetwatch | amendment) tafRemarkList)gtltATTLIST taf s CDATA REQUIREDgt
Exemple xmlExemple xml
ltxml version=10 encoding=UTF-8gtltdatagt ltoptionsgtltformat v=xml gt ltlang v=en gt ltmode v=latest gt
ltmsg_metaf v= gt ltmsg_synop v=AAXX 09004 08495 11459
30714 10147 20136 30151 40159 58005 60001 70511 83500 92350 gt
ltsrc_metaf v=noaa gt ltsrc_synop v=nws_land gt lttype_metaf v=metar gt lttype_synop v=synop gt ltoptionsgt ltreportsgt ltsynop s=AAXX 09004 08495
11459 30714 10147 20136 30151 40159 58005 60001 70511 83500 92350gt
ltobsStationType s=AAXXgt ltstationType v=AAXX gt ltobsStationTypegt ltobsTime s=0900gt ltday v=09 gt lthour
v=00 gt ltminute v=00 gt ltobsTimegt
ltwindIndicator s=4gtltwindUnit v=KT gt ltwindIndicatorgt
ltstationId s=08495gt ltid v=08495 gt ltregion v=VI gt
ltprecipInd s=1gt ltprecipIndVal v=1 gt ltprecipIndgt ltwxInd s=1gt ltwxIndVal v=1 gt ltwxIndgt ltbaseLowestCloud s=4gt ltfrom v=300 u=M gtltto v=600 u=M gt ltbaseLowestCloudgt ltvisPrev s=59gt ltdistance v=9 u=KM gt ltvisPrevgt lttotalCloudCover s=3gt ltoktas v=3 gt lttotalCloudCovergt ltsfcWind s=0714gt ltwindgt ltdir v=70 gt ltspeed v=14 u=KT gt ltwindgt ltsfcWindgt lttemperature s=10147 20136gt ltairgt lttemp v=147 u=C gtltairgt
Exemple Interface Exemple Interface WEBWEB
WIS XMLBUFRWIS XMLBUFR
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
-
Exemple completExemple complet
Modegravele arborescentModegravele arborescent
RestaurantManager
Adresse
No
Rue
Ville
Le Moulin de Mougin
Dupuis
7
Des Vignes
Mougin
FranccedilaisType
Cateacutegorie
Nom
Au point ougrave nous en Au point ougrave nous en sommessommes
Au point ougrave nous en sommes un document XML est identique agrave un fichier textuel mais il est un peu plus portable (indication de
lrsquoencodage employeacute) chaque information est associeacutee agrave une laquo
eacutetiquette raquo sa balise donc plus facilement identifiable et controcirclable
la qualiteacute de sa structure est facile agrave veacuterifier pour lrsquoinstant la coheacuterence de ses
informations nrsquoest pas garantiehellip
Incoheacuterences Incoheacuterences seacutemantiqueseacutemantique
Exemple drsquoun fichier XML de structure correcte avec des incoheacuterences seacutemantiques
ltxml version=10 encoding=UTF-8gtlt-- commentaire xml --gtltlistePersonnesgtltpersonne statut=etudiantgtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltnumerogt10ltnumerogtltadresse pays=Francegtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Preacutenom numeacuterique
numeacutero mal placeacuteadresse incomplegravetehellip
Controcircle du xmlControcircle du xml
XML nrsquoest vraiment puissant que si la coheacuterence est controcircleacutee pour cela deux technologies au choix le DTD
bull rudimentaire mais suffisant dans la plupart des cas bull syntaxe diffeacuterente
le XML-Scheacutemabull puissant (donneacutees plus fortement typeacutees)bull syntaxe de style xml
DTD ouet scheacutema permettent de deacutefinir son propre langage baseacute sur XML Vocabulaire (balises) Grammaire (imbrications)
les donneacutees de controcircle peuvent ecirctre dans le fichier xml lui-mecircme dans un fichier annexe sur le Web
DTDDTD
Une DTD deacutecrit les balises autoriseacutees dans un document xml lrsquoordre dans lequel elles doivent ecirctre imbriqueacutees leurs eacuteventuels attributs les types des informations qursquoelles encapsulent
ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gtltELEMENT adresse (numero rue codePostal ville)gtltATTLIST adresse pays NMTOKENS IMPLIEDgtltELEMENT numero (PCDATA) gtltELEMENT rue (PCDATA) gtltELEMENT codePostal (PCDATA) gtltELEMENT ville (PCDATA) gt
Lien xml DTD Lien xml DTD seacutepareacuteeseacutepareacutee
ltxml version=10 encoding=iso-8859-1gtltDOCTYPE listePersonnes SYSTEM listePersonnesdtd
gtltlistePersonnesgtltpersonne statut =etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
XML DTD 1 seul XML DTD 1 seul fichierfichier
ltxml version=10 encoding=iso-8859-1 standalone=yesgtltDOCTYPE listePersonnes [ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gtltELEMENT adresse (numero rue codePostal ville)gtltATTLIST adresse pays NMTOKENS IMPLIEDgtltELEMENT numero (PCDATA) gtltELEMENT rue (PCDATA) gtltELEMENT codePostal (PCDATA) gtltELEMENT ville (PCDATA) gt]gtltlistePersonnesgtltpersonnegtltstatut libelleacute=etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Lien DTD webLien DTD web
ltxml version=10 encoding=iso-8859-1 standalone=nogtltDOChTtYtPpE
lilsotceaPlehrossotnnleisstSeYPSeTrEsMo nnesdtd gt
ltlistePersonnesgtltpersonne statut =etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Deacuteclaration Deacuteclaration deacuteleacutement simpledeacuteleacutement simple
lt ELEMENT balise (deacutefinition) gt Le paramegravetre deacutefinition repreacutesente soit un type
de donneacutee preacutedeacutefini soit un eacuteleacutement de donneacutees composeacute constitueacute lui mecircme deacuteleacutements
Types preacutedeacutefinisbull ANY Leacuteleacutement peut contenir tout type de donneacutee
bull EMPTY Leacuteleacutement ne contient pas de donneacutees speacutecifiques
bull PCDATA Leacuteleacutement doit contenir une chaicircne de caractegravere
Deacuteclaration Deacuteclaration deacuteleacutement composeacutedeacuteleacutement composeacute
Deacutefinit une seacutequence ou un choix deacuteleacutementsSyntaxe speacutecifique avec opeacuterateurs de composition deacuteleacutements lt ELEMENT balise (composition) gt
Opeacuterateur Signification Exemple + Leacuteleacutement doit ecirctre preacutesent au minimum une fois A+ Leacuteleacutement peut ecirctre preacutesent plusieurs fois (ou aucune) A Leacuteleacutement peut ecirctre optionnellement preacutesent A | Leacuteleacutement A ou B peuvent ecirctre preacutesents (pas les deux) A|B Leacuteleacutement A doit ecirctre preacutesent et suivi de leacuteleacutement B AB
() Les parenthegraveses permettent de regrouper des eacuteleacutements afin de leur appliquer les autres opeacuterateurs
(AB)+
Deacuteclaration Deacuteclaration drsquoattributsdrsquoattributs
lt ATTLIST balise Attribut Type Mode gt balise speacutecifie leacuteleacutement auquel est attacheacute lattributAttribut est le nom de lattribut deacuteclareacuteType deacutefinit le type de donneacutee de lattribut choisi parmi CDATA
bull Chaicircnes de caractegraveres entre guillemets (aa) non analyseacutees Enumeacuteration
bull Liste de valeurs seacutepareacutees par | bull lt ATTLIST balise Attribut (Valeur1 | Valeur2 | ) gt
ID et IDREFbull Cleacute et reacutefeacuterence agrave cleacute
Mode preacutecise le caractegravere obligatoire ou non de lattribut REQUIRED IMPLIED ou FIXED
Exemple drsquoune DTDExemple drsquoune DTD
ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gt
1048710 une balise laquo listePersonnes raquo contient au moins 1 balise personne1048710 une balise laquo personne raquo contient une balise nom une eacuteventuelle balise prenom une balise adresse le tout dans lrsquoordre indiqueacute1048710 la balise laquo personne raquo contient un attribut laquo statut raquo obligatoire1048710 + signifie laquo au moins une raquo1048710 signifie laquo au moins zeacutero raquo1048710 signifie laquo 0 ou 1 raquo1048710 xxx | yyy signifie une de ces deux balises au choix1048710 PCDATA laquo parsed character data raquo1048710 REQUIRED = obligatoire IMPLIED = facultatif
XML ScheacutemaXML Scheacutema
Limite des DTD Description limiteacutee dans des documents
structureacutesbull Problegraveme de typage (PCDATA)
Exprimeacute dans un langage autre que XMLbull Pas les mecircmes parseurs
Objectif de XML Scheacutema Ameacutelioration du typage Ameacutelioration de la structure
bull Nombre borneacute drsquoeacuteleacutements inclus hellip
Remplace de plus en plus la DTD car exprimeacute en syntaxe XML et extensible
XML ScheacutemaXML Scheacutema
Comme une DTD le Scheacutema (xsd) permet de garantir la coheacuterence des donneacutees xml mais sa syntaxe est de style xml le niveau de preacutecision est beaucoup plus eacuteleveacute Dans le document xml
ltlistePersonnes xmlnsxsi=httpwwww3org2001XMLSchema-instance xsinoNamespaceSchemaLocation=listePersonnesxsdgt
XML ScheacutemaXML Scheacutema
Deacuteclaration des eacuteleacutements et attributs Nom Typage similaire agrave lobjet
Speacutecification de types simples Grande varieacuteteacute de types
Geacuteneacuteration de types complexes Seacutequence (Sequence) Choix (Choice) Tas (All)
Les types simplesLes types simples
string Confirm this is electric
byte -1 126
hexBinary 0FB7
boolean true false 1 0
time 132000000 132000000-0500
dateTime 1999-05-31T132000000-0500
duration P1Y2M3DT10H30M123S
float -INF -1E4 -0 0 1278E-2 12 INF
NaN
integer -126789 -1 0 1 126789
positiveInteger 1 126789
negativeInteger -126789 -1
nonNegativeInteger 0 1 126789
nonPositiveInteger -126789 -1 0
int -1 126789675
unsignedInt 0 1267896754
anyURI httpwwwexamplecom
Les types complexesLes types complexes
Deacutefinition dobjets complexes ltsequencegt collection ordonneacutee deacuteleacutements typeacutes ltallgt collection non ordonneacutee deacuteleacutements typeacutes ltchoicegt choix entre eacuteleacutements typeacutes
ExempleltxsdcomplexType name=AddresseFRgt ltxsdsequencegt ltxsdelement name=nom type=xsdstringgt ltxsdelement name=rue type=xsdstringgt ltxsdelement name=ville type=xsdstringgt ltxsdelement name=codep
type=xsddecimalgt ltxsdsequencegt ltxsdattribute name=pays type=xsdNMTOKEN fixed=FRgt ltxsdcomplexTypegt
Les PatternsLes Patterns
Contraintes sur type simple preacutedeacutefini Utilisation dexpression reacuteguliegraveres Similaires agrave celles de Perl
ExempleltxsdsimpleType name=NumItemgt ltxsdrestriction base=xsdstringgt
ltxsdpattern value=d3-[A-Z]2gt ltxsdrestrictiongt ltxsdsimpleTypegt
XML SchemaXML Schemaexemple (1)exemple (1)
ltxsdschema xmlnsxsd=httpwwww3org1999XMLSchemagt
ltxsdelement name=commande type=CommandeTypegt ltxsdelement name=commentaire type=xsdstringgt ltxsdcomplexType name=CommandeTypegt
ltxsdsequencegt ltxsdelement name=livrer type=Adressegt ltxsdelement name=facturer type=Adressegt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=produits type=ProduitTypegt
ltxsdsequencegt ltxsdattribute name=date_com type=xsddategt
ltxsdcomplexTypegt
XML Schema XML Schema exemple (2)exemple (2)
ltxsdcomplexType name=ProduitTypegt ltxsdsequencegt
ltxsdelement name=produit minOccurs=0 maxOccurs=unboundedgt ltxsdcomplexTypegt
ltxsdsequencegt ltxsdelement name=nom_prod type=xsdstringgt ltxsdelement name=quantitegt ltxsdsimpleTypegt ltxsdrestriction
base=xsdpositiveIntegergt ltxsdmaxExclusive value=100gt ltxsdrestrictiongt ltxsdsimpleTypegt ltxsdelementgt ltxsdelement name=prix type=xsddecimalgt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=date_livraison type=xsddate
minOccurs=0gt ltxsdsequencegt ltxsdattribute name=num_prod type=xsdpositiveInteger
use=requiredgt ltxsdcomplexTypegt
ltxsdelementgt ltxsdsequencegt ltxsdcomplexTypegt ltxsdschemagt
Feuille de styleFeuille de style
Feuille de styleFeuille de style
La repreacutesentation de cette lettre en XML ne comporte aucune indication sur sa mise en page Les aspects graphiques ou typographiques sont
absents du source XML Ces aspects seront deacutefinis par lrsquointermeacutediaire
drsquoune feuille de styleUne feuille de style est un ensemble de regravegles pour speacutecifier la reacutealisation concregravete drsquoun document sur un meacutedia particulierOn ajoute dans le deacutebut du fichier xml un lien vers la feuille de style fichier xsl ltxml-stylesheet type=textxsllaquo
href=transformateurxslgt Ce fichier peut ecirctre local ou acceacutedeacute via une URL
Conception de Conception de DTDScheacutemaDTDScheacutema
Possible agrave partir drsquoune modeacutelisation ULM
Quelques outils de Quelques outils de travailtravail
Editeur Outil Support
Tibco Turbo XML DTD XSLScheacutema
Altova XMLSpy DTD Scheacutema XSL Xquery
SyncRO Ltd Oxygen DTD Scheacutema XSL Xquery
Data Junction XML Junction Scheacutema
Insight Soft XMLMate DTD ScheacutemaXSL XPath
XML Mind XMLMind Editor DTD ScheacutemaXSL XPath
Exemple DTDExemple DTD
Convertisseur TAC vers XML (metaf2xml)
ltENTITY cloudType AC|ACC|ACSL|AS|CB|CBMAM|CC|CCSL|CI|CS|CU|CF|CUFRA|NS|SAC|SC|SCSL|ST|SF|STFRA|TCUgt
ltENTITY colourCodes BLUplus|BLU|WHT|GRN|YLO|YLO1|YLO2|AMB|RED|FCSTCANCELgtltENTITY cloudCover FEW|SCT|BKN|OVCgtltENTITY cloudFamily 0|1|2|3|4|5|6|7|8|9gtltENTITY phenomDescr isFrequent|isOccasional|isIntermittent|isContinuous|isThick|
isPrettyThick|isVeryThick|isThin|isPrettyThin|isVeryThin|isFeeble|isPrettyFeeble|isVeryFeeble|isLight|isPrettyLight|isVeryLight|isModerate|isLow|isLower|isIsolated|isConvective|isDissipated|inPastHour|baseBelowStation|isAloft|isAround|isFreezing|isPatchygt
ltENTITY unitRadiation kJmm|JcmcmgtltENTITY unitSpeed KT|MPS|KMHgtltENTITY period 1d|24h|1h|ngtltENTITY compassDir N|NNE|NE|ENE|E|ESE|SE|SSE|S|SSW|SW|WSW|W|WNW|NW|NNWgt
Exemple DTDExemple DTD
ltELEMENT taf (ERROR WARNING obsStation issueTime fcstPeriod reportModifier fcstNotAvbl sfcWind (CAVOK | (visPrev weatherList cloudList visVert)) (turbulence | icing | windShearLvl | QNH) trendList (tempAt | tempMaxAt | tempMinAt | correctedAt |
amendedAt | limMetwatch | autoMetwatch | amendment) tafRemarkList)gtltATTLIST taf s CDATA REQUIREDgt
Exemple xmlExemple xml
ltxml version=10 encoding=UTF-8gtltdatagt ltoptionsgtltformat v=xml gt ltlang v=en gt ltmode v=latest gt
ltmsg_metaf v= gt ltmsg_synop v=AAXX 09004 08495 11459
30714 10147 20136 30151 40159 58005 60001 70511 83500 92350 gt
ltsrc_metaf v=noaa gt ltsrc_synop v=nws_land gt lttype_metaf v=metar gt lttype_synop v=synop gt ltoptionsgt ltreportsgt ltsynop s=AAXX 09004 08495
11459 30714 10147 20136 30151 40159 58005 60001 70511 83500 92350gt
ltobsStationType s=AAXXgt ltstationType v=AAXX gt ltobsStationTypegt ltobsTime s=0900gt ltday v=09 gt lthour
v=00 gt ltminute v=00 gt ltobsTimegt
ltwindIndicator s=4gtltwindUnit v=KT gt ltwindIndicatorgt
ltstationId s=08495gt ltid v=08495 gt ltregion v=VI gt
ltprecipInd s=1gt ltprecipIndVal v=1 gt ltprecipIndgt ltwxInd s=1gt ltwxIndVal v=1 gt ltwxIndgt ltbaseLowestCloud s=4gt ltfrom v=300 u=M gtltto v=600 u=M gt ltbaseLowestCloudgt ltvisPrev s=59gt ltdistance v=9 u=KM gt ltvisPrevgt lttotalCloudCover s=3gt ltoktas v=3 gt lttotalCloudCovergt ltsfcWind s=0714gt ltwindgt ltdir v=70 gt ltspeed v=14 u=KT gt ltwindgt ltsfcWindgt lttemperature s=10147 20136gt ltairgt lttemp v=147 u=C gtltairgt
Exemple Interface Exemple Interface WEBWEB
WIS XMLBUFRWIS XMLBUFR
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
-
Modegravele arborescentModegravele arborescent
RestaurantManager
Adresse
No
Rue
Ville
Le Moulin de Mougin
Dupuis
7
Des Vignes
Mougin
FranccedilaisType
Cateacutegorie
Nom
Au point ougrave nous en Au point ougrave nous en sommessommes
Au point ougrave nous en sommes un document XML est identique agrave un fichier textuel mais il est un peu plus portable (indication de
lrsquoencodage employeacute) chaque information est associeacutee agrave une laquo
eacutetiquette raquo sa balise donc plus facilement identifiable et controcirclable
la qualiteacute de sa structure est facile agrave veacuterifier pour lrsquoinstant la coheacuterence de ses
informations nrsquoest pas garantiehellip
Incoheacuterences Incoheacuterences seacutemantiqueseacutemantique
Exemple drsquoun fichier XML de structure correcte avec des incoheacuterences seacutemantiques
ltxml version=10 encoding=UTF-8gtlt-- commentaire xml --gtltlistePersonnesgtltpersonne statut=etudiantgtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltnumerogt10ltnumerogtltadresse pays=Francegtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Preacutenom numeacuterique
numeacutero mal placeacuteadresse incomplegravetehellip
Controcircle du xmlControcircle du xml
XML nrsquoest vraiment puissant que si la coheacuterence est controcircleacutee pour cela deux technologies au choix le DTD
bull rudimentaire mais suffisant dans la plupart des cas bull syntaxe diffeacuterente
le XML-Scheacutemabull puissant (donneacutees plus fortement typeacutees)bull syntaxe de style xml
DTD ouet scheacutema permettent de deacutefinir son propre langage baseacute sur XML Vocabulaire (balises) Grammaire (imbrications)
les donneacutees de controcircle peuvent ecirctre dans le fichier xml lui-mecircme dans un fichier annexe sur le Web
DTDDTD
Une DTD deacutecrit les balises autoriseacutees dans un document xml lrsquoordre dans lequel elles doivent ecirctre imbriqueacutees leurs eacuteventuels attributs les types des informations qursquoelles encapsulent
ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gtltELEMENT adresse (numero rue codePostal ville)gtltATTLIST adresse pays NMTOKENS IMPLIEDgtltELEMENT numero (PCDATA) gtltELEMENT rue (PCDATA) gtltELEMENT codePostal (PCDATA) gtltELEMENT ville (PCDATA) gt
Lien xml DTD Lien xml DTD seacutepareacuteeseacutepareacutee
ltxml version=10 encoding=iso-8859-1gtltDOCTYPE listePersonnes SYSTEM listePersonnesdtd
gtltlistePersonnesgtltpersonne statut =etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
XML DTD 1 seul XML DTD 1 seul fichierfichier
ltxml version=10 encoding=iso-8859-1 standalone=yesgtltDOCTYPE listePersonnes [ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gtltELEMENT adresse (numero rue codePostal ville)gtltATTLIST adresse pays NMTOKENS IMPLIEDgtltELEMENT numero (PCDATA) gtltELEMENT rue (PCDATA) gtltELEMENT codePostal (PCDATA) gtltELEMENT ville (PCDATA) gt]gtltlistePersonnesgtltpersonnegtltstatut libelleacute=etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Lien DTD webLien DTD web
ltxml version=10 encoding=iso-8859-1 standalone=nogtltDOChTtYtPpE
lilsotceaPlehrossotnnleisstSeYPSeTrEsMo nnesdtd gt
ltlistePersonnesgtltpersonne statut =etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Deacuteclaration Deacuteclaration deacuteleacutement simpledeacuteleacutement simple
lt ELEMENT balise (deacutefinition) gt Le paramegravetre deacutefinition repreacutesente soit un type
de donneacutee preacutedeacutefini soit un eacuteleacutement de donneacutees composeacute constitueacute lui mecircme deacuteleacutements
Types preacutedeacutefinisbull ANY Leacuteleacutement peut contenir tout type de donneacutee
bull EMPTY Leacuteleacutement ne contient pas de donneacutees speacutecifiques
bull PCDATA Leacuteleacutement doit contenir une chaicircne de caractegravere
Deacuteclaration Deacuteclaration deacuteleacutement composeacutedeacuteleacutement composeacute
Deacutefinit une seacutequence ou un choix deacuteleacutementsSyntaxe speacutecifique avec opeacuterateurs de composition deacuteleacutements lt ELEMENT balise (composition) gt
Opeacuterateur Signification Exemple + Leacuteleacutement doit ecirctre preacutesent au minimum une fois A+ Leacuteleacutement peut ecirctre preacutesent plusieurs fois (ou aucune) A Leacuteleacutement peut ecirctre optionnellement preacutesent A | Leacuteleacutement A ou B peuvent ecirctre preacutesents (pas les deux) A|B Leacuteleacutement A doit ecirctre preacutesent et suivi de leacuteleacutement B AB
() Les parenthegraveses permettent de regrouper des eacuteleacutements afin de leur appliquer les autres opeacuterateurs
(AB)+
Deacuteclaration Deacuteclaration drsquoattributsdrsquoattributs
lt ATTLIST balise Attribut Type Mode gt balise speacutecifie leacuteleacutement auquel est attacheacute lattributAttribut est le nom de lattribut deacuteclareacuteType deacutefinit le type de donneacutee de lattribut choisi parmi CDATA
bull Chaicircnes de caractegraveres entre guillemets (aa) non analyseacutees Enumeacuteration
bull Liste de valeurs seacutepareacutees par | bull lt ATTLIST balise Attribut (Valeur1 | Valeur2 | ) gt
ID et IDREFbull Cleacute et reacutefeacuterence agrave cleacute
Mode preacutecise le caractegravere obligatoire ou non de lattribut REQUIRED IMPLIED ou FIXED
Exemple drsquoune DTDExemple drsquoune DTD
ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gt
1048710 une balise laquo listePersonnes raquo contient au moins 1 balise personne1048710 une balise laquo personne raquo contient une balise nom une eacuteventuelle balise prenom une balise adresse le tout dans lrsquoordre indiqueacute1048710 la balise laquo personne raquo contient un attribut laquo statut raquo obligatoire1048710 + signifie laquo au moins une raquo1048710 signifie laquo au moins zeacutero raquo1048710 signifie laquo 0 ou 1 raquo1048710 xxx | yyy signifie une de ces deux balises au choix1048710 PCDATA laquo parsed character data raquo1048710 REQUIRED = obligatoire IMPLIED = facultatif
XML ScheacutemaXML Scheacutema
Limite des DTD Description limiteacutee dans des documents
structureacutesbull Problegraveme de typage (PCDATA)
Exprimeacute dans un langage autre que XMLbull Pas les mecircmes parseurs
Objectif de XML Scheacutema Ameacutelioration du typage Ameacutelioration de la structure
bull Nombre borneacute drsquoeacuteleacutements inclus hellip
Remplace de plus en plus la DTD car exprimeacute en syntaxe XML et extensible
XML ScheacutemaXML Scheacutema
Comme une DTD le Scheacutema (xsd) permet de garantir la coheacuterence des donneacutees xml mais sa syntaxe est de style xml le niveau de preacutecision est beaucoup plus eacuteleveacute Dans le document xml
ltlistePersonnes xmlnsxsi=httpwwww3org2001XMLSchema-instance xsinoNamespaceSchemaLocation=listePersonnesxsdgt
XML ScheacutemaXML Scheacutema
Deacuteclaration des eacuteleacutements et attributs Nom Typage similaire agrave lobjet
Speacutecification de types simples Grande varieacuteteacute de types
Geacuteneacuteration de types complexes Seacutequence (Sequence) Choix (Choice) Tas (All)
Les types simplesLes types simples
string Confirm this is electric
byte -1 126
hexBinary 0FB7
boolean true false 1 0
time 132000000 132000000-0500
dateTime 1999-05-31T132000000-0500
duration P1Y2M3DT10H30M123S
float -INF -1E4 -0 0 1278E-2 12 INF
NaN
integer -126789 -1 0 1 126789
positiveInteger 1 126789
negativeInteger -126789 -1
nonNegativeInteger 0 1 126789
nonPositiveInteger -126789 -1 0
int -1 126789675
unsignedInt 0 1267896754
anyURI httpwwwexamplecom
Les types complexesLes types complexes
Deacutefinition dobjets complexes ltsequencegt collection ordonneacutee deacuteleacutements typeacutes ltallgt collection non ordonneacutee deacuteleacutements typeacutes ltchoicegt choix entre eacuteleacutements typeacutes
ExempleltxsdcomplexType name=AddresseFRgt ltxsdsequencegt ltxsdelement name=nom type=xsdstringgt ltxsdelement name=rue type=xsdstringgt ltxsdelement name=ville type=xsdstringgt ltxsdelement name=codep
type=xsddecimalgt ltxsdsequencegt ltxsdattribute name=pays type=xsdNMTOKEN fixed=FRgt ltxsdcomplexTypegt
Les PatternsLes Patterns
Contraintes sur type simple preacutedeacutefini Utilisation dexpression reacuteguliegraveres Similaires agrave celles de Perl
ExempleltxsdsimpleType name=NumItemgt ltxsdrestriction base=xsdstringgt
ltxsdpattern value=d3-[A-Z]2gt ltxsdrestrictiongt ltxsdsimpleTypegt
XML SchemaXML Schemaexemple (1)exemple (1)
ltxsdschema xmlnsxsd=httpwwww3org1999XMLSchemagt
ltxsdelement name=commande type=CommandeTypegt ltxsdelement name=commentaire type=xsdstringgt ltxsdcomplexType name=CommandeTypegt
ltxsdsequencegt ltxsdelement name=livrer type=Adressegt ltxsdelement name=facturer type=Adressegt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=produits type=ProduitTypegt
ltxsdsequencegt ltxsdattribute name=date_com type=xsddategt
ltxsdcomplexTypegt
XML Schema XML Schema exemple (2)exemple (2)
ltxsdcomplexType name=ProduitTypegt ltxsdsequencegt
ltxsdelement name=produit minOccurs=0 maxOccurs=unboundedgt ltxsdcomplexTypegt
ltxsdsequencegt ltxsdelement name=nom_prod type=xsdstringgt ltxsdelement name=quantitegt ltxsdsimpleTypegt ltxsdrestriction
base=xsdpositiveIntegergt ltxsdmaxExclusive value=100gt ltxsdrestrictiongt ltxsdsimpleTypegt ltxsdelementgt ltxsdelement name=prix type=xsddecimalgt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=date_livraison type=xsddate
minOccurs=0gt ltxsdsequencegt ltxsdattribute name=num_prod type=xsdpositiveInteger
use=requiredgt ltxsdcomplexTypegt
ltxsdelementgt ltxsdsequencegt ltxsdcomplexTypegt ltxsdschemagt
Feuille de styleFeuille de style
Feuille de styleFeuille de style
La repreacutesentation de cette lettre en XML ne comporte aucune indication sur sa mise en page Les aspects graphiques ou typographiques sont
absents du source XML Ces aspects seront deacutefinis par lrsquointermeacutediaire
drsquoune feuille de styleUne feuille de style est un ensemble de regravegles pour speacutecifier la reacutealisation concregravete drsquoun document sur un meacutedia particulierOn ajoute dans le deacutebut du fichier xml un lien vers la feuille de style fichier xsl ltxml-stylesheet type=textxsllaquo
href=transformateurxslgt Ce fichier peut ecirctre local ou acceacutedeacute via une URL
Conception de Conception de DTDScheacutemaDTDScheacutema
Possible agrave partir drsquoune modeacutelisation ULM
Quelques outils de Quelques outils de travailtravail
Editeur Outil Support
Tibco Turbo XML DTD XSLScheacutema
Altova XMLSpy DTD Scheacutema XSL Xquery
SyncRO Ltd Oxygen DTD Scheacutema XSL Xquery
Data Junction XML Junction Scheacutema
Insight Soft XMLMate DTD ScheacutemaXSL XPath
XML Mind XMLMind Editor DTD ScheacutemaXSL XPath
Exemple DTDExemple DTD
Convertisseur TAC vers XML (metaf2xml)
ltENTITY cloudType AC|ACC|ACSL|AS|CB|CBMAM|CC|CCSL|CI|CS|CU|CF|CUFRA|NS|SAC|SC|SCSL|ST|SF|STFRA|TCUgt
ltENTITY colourCodes BLUplus|BLU|WHT|GRN|YLO|YLO1|YLO2|AMB|RED|FCSTCANCELgtltENTITY cloudCover FEW|SCT|BKN|OVCgtltENTITY cloudFamily 0|1|2|3|4|5|6|7|8|9gtltENTITY phenomDescr isFrequent|isOccasional|isIntermittent|isContinuous|isThick|
isPrettyThick|isVeryThick|isThin|isPrettyThin|isVeryThin|isFeeble|isPrettyFeeble|isVeryFeeble|isLight|isPrettyLight|isVeryLight|isModerate|isLow|isLower|isIsolated|isConvective|isDissipated|inPastHour|baseBelowStation|isAloft|isAround|isFreezing|isPatchygt
ltENTITY unitRadiation kJmm|JcmcmgtltENTITY unitSpeed KT|MPS|KMHgtltENTITY period 1d|24h|1h|ngtltENTITY compassDir N|NNE|NE|ENE|E|ESE|SE|SSE|S|SSW|SW|WSW|W|WNW|NW|NNWgt
Exemple DTDExemple DTD
ltELEMENT taf (ERROR WARNING obsStation issueTime fcstPeriod reportModifier fcstNotAvbl sfcWind (CAVOK | (visPrev weatherList cloudList visVert)) (turbulence | icing | windShearLvl | QNH) trendList (tempAt | tempMaxAt | tempMinAt | correctedAt |
amendedAt | limMetwatch | autoMetwatch | amendment) tafRemarkList)gtltATTLIST taf s CDATA REQUIREDgt
Exemple xmlExemple xml
ltxml version=10 encoding=UTF-8gtltdatagt ltoptionsgtltformat v=xml gt ltlang v=en gt ltmode v=latest gt
ltmsg_metaf v= gt ltmsg_synop v=AAXX 09004 08495 11459
30714 10147 20136 30151 40159 58005 60001 70511 83500 92350 gt
ltsrc_metaf v=noaa gt ltsrc_synop v=nws_land gt lttype_metaf v=metar gt lttype_synop v=synop gt ltoptionsgt ltreportsgt ltsynop s=AAXX 09004 08495
11459 30714 10147 20136 30151 40159 58005 60001 70511 83500 92350gt
ltobsStationType s=AAXXgt ltstationType v=AAXX gt ltobsStationTypegt ltobsTime s=0900gt ltday v=09 gt lthour
v=00 gt ltminute v=00 gt ltobsTimegt
ltwindIndicator s=4gtltwindUnit v=KT gt ltwindIndicatorgt
ltstationId s=08495gt ltid v=08495 gt ltregion v=VI gt
ltprecipInd s=1gt ltprecipIndVal v=1 gt ltprecipIndgt ltwxInd s=1gt ltwxIndVal v=1 gt ltwxIndgt ltbaseLowestCloud s=4gt ltfrom v=300 u=M gtltto v=600 u=M gt ltbaseLowestCloudgt ltvisPrev s=59gt ltdistance v=9 u=KM gt ltvisPrevgt lttotalCloudCover s=3gt ltoktas v=3 gt lttotalCloudCovergt ltsfcWind s=0714gt ltwindgt ltdir v=70 gt ltspeed v=14 u=KT gt ltwindgt ltsfcWindgt lttemperature s=10147 20136gt ltairgt lttemp v=147 u=C gtltairgt
Exemple Interface Exemple Interface WEBWEB
WIS XMLBUFRWIS XMLBUFR
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
-
Au point ougrave nous en Au point ougrave nous en sommessommes
Au point ougrave nous en sommes un document XML est identique agrave un fichier textuel mais il est un peu plus portable (indication de
lrsquoencodage employeacute) chaque information est associeacutee agrave une laquo
eacutetiquette raquo sa balise donc plus facilement identifiable et controcirclable
la qualiteacute de sa structure est facile agrave veacuterifier pour lrsquoinstant la coheacuterence de ses
informations nrsquoest pas garantiehellip
Incoheacuterences Incoheacuterences seacutemantiqueseacutemantique
Exemple drsquoun fichier XML de structure correcte avec des incoheacuterences seacutemantiques
ltxml version=10 encoding=UTF-8gtlt-- commentaire xml --gtltlistePersonnesgtltpersonne statut=etudiantgtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltnumerogt10ltnumerogtltadresse pays=Francegtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Preacutenom numeacuterique
numeacutero mal placeacuteadresse incomplegravetehellip
Controcircle du xmlControcircle du xml
XML nrsquoest vraiment puissant que si la coheacuterence est controcircleacutee pour cela deux technologies au choix le DTD
bull rudimentaire mais suffisant dans la plupart des cas bull syntaxe diffeacuterente
le XML-Scheacutemabull puissant (donneacutees plus fortement typeacutees)bull syntaxe de style xml
DTD ouet scheacutema permettent de deacutefinir son propre langage baseacute sur XML Vocabulaire (balises) Grammaire (imbrications)
les donneacutees de controcircle peuvent ecirctre dans le fichier xml lui-mecircme dans un fichier annexe sur le Web
DTDDTD
Une DTD deacutecrit les balises autoriseacutees dans un document xml lrsquoordre dans lequel elles doivent ecirctre imbriqueacutees leurs eacuteventuels attributs les types des informations qursquoelles encapsulent
ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gtltELEMENT adresse (numero rue codePostal ville)gtltATTLIST adresse pays NMTOKENS IMPLIEDgtltELEMENT numero (PCDATA) gtltELEMENT rue (PCDATA) gtltELEMENT codePostal (PCDATA) gtltELEMENT ville (PCDATA) gt
Lien xml DTD Lien xml DTD seacutepareacuteeseacutepareacutee
ltxml version=10 encoding=iso-8859-1gtltDOCTYPE listePersonnes SYSTEM listePersonnesdtd
gtltlistePersonnesgtltpersonne statut =etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
XML DTD 1 seul XML DTD 1 seul fichierfichier
ltxml version=10 encoding=iso-8859-1 standalone=yesgtltDOCTYPE listePersonnes [ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gtltELEMENT adresse (numero rue codePostal ville)gtltATTLIST adresse pays NMTOKENS IMPLIEDgtltELEMENT numero (PCDATA) gtltELEMENT rue (PCDATA) gtltELEMENT codePostal (PCDATA) gtltELEMENT ville (PCDATA) gt]gtltlistePersonnesgtltpersonnegtltstatut libelleacute=etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Lien DTD webLien DTD web
ltxml version=10 encoding=iso-8859-1 standalone=nogtltDOChTtYtPpE
lilsotceaPlehrossotnnleisstSeYPSeTrEsMo nnesdtd gt
ltlistePersonnesgtltpersonne statut =etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Deacuteclaration Deacuteclaration deacuteleacutement simpledeacuteleacutement simple
lt ELEMENT balise (deacutefinition) gt Le paramegravetre deacutefinition repreacutesente soit un type
de donneacutee preacutedeacutefini soit un eacuteleacutement de donneacutees composeacute constitueacute lui mecircme deacuteleacutements
Types preacutedeacutefinisbull ANY Leacuteleacutement peut contenir tout type de donneacutee
bull EMPTY Leacuteleacutement ne contient pas de donneacutees speacutecifiques
bull PCDATA Leacuteleacutement doit contenir une chaicircne de caractegravere
Deacuteclaration Deacuteclaration deacuteleacutement composeacutedeacuteleacutement composeacute
Deacutefinit une seacutequence ou un choix deacuteleacutementsSyntaxe speacutecifique avec opeacuterateurs de composition deacuteleacutements lt ELEMENT balise (composition) gt
Opeacuterateur Signification Exemple + Leacuteleacutement doit ecirctre preacutesent au minimum une fois A+ Leacuteleacutement peut ecirctre preacutesent plusieurs fois (ou aucune) A Leacuteleacutement peut ecirctre optionnellement preacutesent A | Leacuteleacutement A ou B peuvent ecirctre preacutesents (pas les deux) A|B Leacuteleacutement A doit ecirctre preacutesent et suivi de leacuteleacutement B AB
() Les parenthegraveses permettent de regrouper des eacuteleacutements afin de leur appliquer les autres opeacuterateurs
(AB)+
Deacuteclaration Deacuteclaration drsquoattributsdrsquoattributs
lt ATTLIST balise Attribut Type Mode gt balise speacutecifie leacuteleacutement auquel est attacheacute lattributAttribut est le nom de lattribut deacuteclareacuteType deacutefinit le type de donneacutee de lattribut choisi parmi CDATA
bull Chaicircnes de caractegraveres entre guillemets (aa) non analyseacutees Enumeacuteration
bull Liste de valeurs seacutepareacutees par | bull lt ATTLIST balise Attribut (Valeur1 | Valeur2 | ) gt
ID et IDREFbull Cleacute et reacutefeacuterence agrave cleacute
Mode preacutecise le caractegravere obligatoire ou non de lattribut REQUIRED IMPLIED ou FIXED
Exemple drsquoune DTDExemple drsquoune DTD
ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gt
1048710 une balise laquo listePersonnes raquo contient au moins 1 balise personne1048710 une balise laquo personne raquo contient une balise nom une eacuteventuelle balise prenom une balise adresse le tout dans lrsquoordre indiqueacute1048710 la balise laquo personne raquo contient un attribut laquo statut raquo obligatoire1048710 + signifie laquo au moins une raquo1048710 signifie laquo au moins zeacutero raquo1048710 signifie laquo 0 ou 1 raquo1048710 xxx | yyy signifie une de ces deux balises au choix1048710 PCDATA laquo parsed character data raquo1048710 REQUIRED = obligatoire IMPLIED = facultatif
XML ScheacutemaXML Scheacutema
Limite des DTD Description limiteacutee dans des documents
structureacutesbull Problegraveme de typage (PCDATA)
Exprimeacute dans un langage autre que XMLbull Pas les mecircmes parseurs
Objectif de XML Scheacutema Ameacutelioration du typage Ameacutelioration de la structure
bull Nombre borneacute drsquoeacuteleacutements inclus hellip
Remplace de plus en plus la DTD car exprimeacute en syntaxe XML et extensible
XML ScheacutemaXML Scheacutema
Comme une DTD le Scheacutema (xsd) permet de garantir la coheacuterence des donneacutees xml mais sa syntaxe est de style xml le niveau de preacutecision est beaucoup plus eacuteleveacute Dans le document xml
ltlistePersonnes xmlnsxsi=httpwwww3org2001XMLSchema-instance xsinoNamespaceSchemaLocation=listePersonnesxsdgt
XML ScheacutemaXML Scheacutema
Deacuteclaration des eacuteleacutements et attributs Nom Typage similaire agrave lobjet
Speacutecification de types simples Grande varieacuteteacute de types
Geacuteneacuteration de types complexes Seacutequence (Sequence) Choix (Choice) Tas (All)
Les types simplesLes types simples
string Confirm this is electric
byte -1 126
hexBinary 0FB7
boolean true false 1 0
time 132000000 132000000-0500
dateTime 1999-05-31T132000000-0500
duration P1Y2M3DT10H30M123S
float -INF -1E4 -0 0 1278E-2 12 INF
NaN
integer -126789 -1 0 1 126789
positiveInteger 1 126789
negativeInteger -126789 -1
nonNegativeInteger 0 1 126789
nonPositiveInteger -126789 -1 0
int -1 126789675
unsignedInt 0 1267896754
anyURI httpwwwexamplecom
Les types complexesLes types complexes
Deacutefinition dobjets complexes ltsequencegt collection ordonneacutee deacuteleacutements typeacutes ltallgt collection non ordonneacutee deacuteleacutements typeacutes ltchoicegt choix entre eacuteleacutements typeacutes
ExempleltxsdcomplexType name=AddresseFRgt ltxsdsequencegt ltxsdelement name=nom type=xsdstringgt ltxsdelement name=rue type=xsdstringgt ltxsdelement name=ville type=xsdstringgt ltxsdelement name=codep
type=xsddecimalgt ltxsdsequencegt ltxsdattribute name=pays type=xsdNMTOKEN fixed=FRgt ltxsdcomplexTypegt
Les PatternsLes Patterns
Contraintes sur type simple preacutedeacutefini Utilisation dexpression reacuteguliegraveres Similaires agrave celles de Perl
ExempleltxsdsimpleType name=NumItemgt ltxsdrestriction base=xsdstringgt
ltxsdpattern value=d3-[A-Z]2gt ltxsdrestrictiongt ltxsdsimpleTypegt
XML SchemaXML Schemaexemple (1)exemple (1)
ltxsdschema xmlnsxsd=httpwwww3org1999XMLSchemagt
ltxsdelement name=commande type=CommandeTypegt ltxsdelement name=commentaire type=xsdstringgt ltxsdcomplexType name=CommandeTypegt
ltxsdsequencegt ltxsdelement name=livrer type=Adressegt ltxsdelement name=facturer type=Adressegt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=produits type=ProduitTypegt
ltxsdsequencegt ltxsdattribute name=date_com type=xsddategt
ltxsdcomplexTypegt
XML Schema XML Schema exemple (2)exemple (2)
ltxsdcomplexType name=ProduitTypegt ltxsdsequencegt
ltxsdelement name=produit minOccurs=0 maxOccurs=unboundedgt ltxsdcomplexTypegt
ltxsdsequencegt ltxsdelement name=nom_prod type=xsdstringgt ltxsdelement name=quantitegt ltxsdsimpleTypegt ltxsdrestriction
base=xsdpositiveIntegergt ltxsdmaxExclusive value=100gt ltxsdrestrictiongt ltxsdsimpleTypegt ltxsdelementgt ltxsdelement name=prix type=xsddecimalgt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=date_livraison type=xsddate
minOccurs=0gt ltxsdsequencegt ltxsdattribute name=num_prod type=xsdpositiveInteger
use=requiredgt ltxsdcomplexTypegt
ltxsdelementgt ltxsdsequencegt ltxsdcomplexTypegt ltxsdschemagt
Feuille de styleFeuille de style
Feuille de styleFeuille de style
La repreacutesentation de cette lettre en XML ne comporte aucune indication sur sa mise en page Les aspects graphiques ou typographiques sont
absents du source XML Ces aspects seront deacutefinis par lrsquointermeacutediaire
drsquoune feuille de styleUne feuille de style est un ensemble de regravegles pour speacutecifier la reacutealisation concregravete drsquoun document sur un meacutedia particulierOn ajoute dans le deacutebut du fichier xml un lien vers la feuille de style fichier xsl ltxml-stylesheet type=textxsllaquo
href=transformateurxslgt Ce fichier peut ecirctre local ou acceacutedeacute via une URL
Conception de Conception de DTDScheacutemaDTDScheacutema
Possible agrave partir drsquoune modeacutelisation ULM
Quelques outils de Quelques outils de travailtravail
Editeur Outil Support
Tibco Turbo XML DTD XSLScheacutema
Altova XMLSpy DTD Scheacutema XSL Xquery
SyncRO Ltd Oxygen DTD Scheacutema XSL Xquery
Data Junction XML Junction Scheacutema
Insight Soft XMLMate DTD ScheacutemaXSL XPath
XML Mind XMLMind Editor DTD ScheacutemaXSL XPath
Exemple DTDExemple DTD
Convertisseur TAC vers XML (metaf2xml)
ltENTITY cloudType AC|ACC|ACSL|AS|CB|CBMAM|CC|CCSL|CI|CS|CU|CF|CUFRA|NS|SAC|SC|SCSL|ST|SF|STFRA|TCUgt
ltENTITY colourCodes BLUplus|BLU|WHT|GRN|YLO|YLO1|YLO2|AMB|RED|FCSTCANCELgtltENTITY cloudCover FEW|SCT|BKN|OVCgtltENTITY cloudFamily 0|1|2|3|4|5|6|7|8|9gtltENTITY phenomDescr isFrequent|isOccasional|isIntermittent|isContinuous|isThick|
isPrettyThick|isVeryThick|isThin|isPrettyThin|isVeryThin|isFeeble|isPrettyFeeble|isVeryFeeble|isLight|isPrettyLight|isVeryLight|isModerate|isLow|isLower|isIsolated|isConvective|isDissipated|inPastHour|baseBelowStation|isAloft|isAround|isFreezing|isPatchygt
ltENTITY unitRadiation kJmm|JcmcmgtltENTITY unitSpeed KT|MPS|KMHgtltENTITY period 1d|24h|1h|ngtltENTITY compassDir N|NNE|NE|ENE|E|ESE|SE|SSE|S|SSW|SW|WSW|W|WNW|NW|NNWgt
Exemple DTDExemple DTD
ltELEMENT taf (ERROR WARNING obsStation issueTime fcstPeriod reportModifier fcstNotAvbl sfcWind (CAVOK | (visPrev weatherList cloudList visVert)) (turbulence | icing | windShearLvl | QNH) trendList (tempAt | tempMaxAt | tempMinAt | correctedAt |
amendedAt | limMetwatch | autoMetwatch | amendment) tafRemarkList)gtltATTLIST taf s CDATA REQUIREDgt
Exemple xmlExemple xml
ltxml version=10 encoding=UTF-8gtltdatagt ltoptionsgtltformat v=xml gt ltlang v=en gt ltmode v=latest gt
ltmsg_metaf v= gt ltmsg_synop v=AAXX 09004 08495 11459
30714 10147 20136 30151 40159 58005 60001 70511 83500 92350 gt
ltsrc_metaf v=noaa gt ltsrc_synop v=nws_land gt lttype_metaf v=metar gt lttype_synop v=synop gt ltoptionsgt ltreportsgt ltsynop s=AAXX 09004 08495
11459 30714 10147 20136 30151 40159 58005 60001 70511 83500 92350gt
ltobsStationType s=AAXXgt ltstationType v=AAXX gt ltobsStationTypegt ltobsTime s=0900gt ltday v=09 gt lthour
v=00 gt ltminute v=00 gt ltobsTimegt
ltwindIndicator s=4gtltwindUnit v=KT gt ltwindIndicatorgt
ltstationId s=08495gt ltid v=08495 gt ltregion v=VI gt
ltprecipInd s=1gt ltprecipIndVal v=1 gt ltprecipIndgt ltwxInd s=1gt ltwxIndVal v=1 gt ltwxIndgt ltbaseLowestCloud s=4gt ltfrom v=300 u=M gtltto v=600 u=M gt ltbaseLowestCloudgt ltvisPrev s=59gt ltdistance v=9 u=KM gt ltvisPrevgt lttotalCloudCover s=3gt ltoktas v=3 gt lttotalCloudCovergt ltsfcWind s=0714gt ltwindgt ltdir v=70 gt ltspeed v=14 u=KT gt ltwindgt ltsfcWindgt lttemperature s=10147 20136gt ltairgt lttemp v=147 u=C gtltairgt
Exemple Interface Exemple Interface WEBWEB
WIS XMLBUFRWIS XMLBUFR
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
-
Incoheacuterences Incoheacuterences seacutemantiqueseacutemantique
Exemple drsquoun fichier XML de structure correcte avec des incoheacuterences seacutemantiques
ltxml version=10 encoding=UTF-8gtlt-- commentaire xml --gtltlistePersonnesgtltpersonne statut=etudiantgtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltnumerogt10ltnumerogtltadresse pays=Francegtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Preacutenom numeacuterique
numeacutero mal placeacuteadresse incomplegravetehellip
Controcircle du xmlControcircle du xml
XML nrsquoest vraiment puissant que si la coheacuterence est controcircleacutee pour cela deux technologies au choix le DTD
bull rudimentaire mais suffisant dans la plupart des cas bull syntaxe diffeacuterente
le XML-Scheacutemabull puissant (donneacutees plus fortement typeacutees)bull syntaxe de style xml
DTD ouet scheacutema permettent de deacutefinir son propre langage baseacute sur XML Vocabulaire (balises) Grammaire (imbrications)
les donneacutees de controcircle peuvent ecirctre dans le fichier xml lui-mecircme dans un fichier annexe sur le Web
DTDDTD
Une DTD deacutecrit les balises autoriseacutees dans un document xml lrsquoordre dans lequel elles doivent ecirctre imbriqueacutees leurs eacuteventuels attributs les types des informations qursquoelles encapsulent
ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gtltELEMENT adresse (numero rue codePostal ville)gtltATTLIST adresse pays NMTOKENS IMPLIEDgtltELEMENT numero (PCDATA) gtltELEMENT rue (PCDATA) gtltELEMENT codePostal (PCDATA) gtltELEMENT ville (PCDATA) gt
Lien xml DTD Lien xml DTD seacutepareacuteeseacutepareacutee
ltxml version=10 encoding=iso-8859-1gtltDOCTYPE listePersonnes SYSTEM listePersonnesdtd
gtltlistePersonnesgtltpersonne statut =etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
XML DTD 1 seul XML DTD 1 seul fichierfichier
ltxml version=10 encoding=iso-8859-1 standalone=yesgtltDOCTYPE listePersonnes [ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gtltELEMENT adresse (numero rue codePostal ville)gtltATTLIST adresse pays NMTOKENS IMPLIEDgtltELEMENT numero (PCDATA) gtltELEMENT rue (PCDATA) gtltELEMENT codePostal (PCDATA) gtltELEMENT ville (PCDATA) gt]gtltlistePersonnesgtltpersonnegtltstatut libelleacute=etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Lien DTD webLien DTD web
ltxml version=10 encoding=iso-8859-1 standalone=nogtltDOChTtYtPpE
lilsotceaPlehrossotnnleisstSeYPSeTrEsMo nnesdtd gt
ltlistePersonnesgtltpersonne statut =etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Deacuteclaration Deacuteclaration deacuteleacutement simpledeacuteleacutement simple
lt ELEMENT balise (deacutefinition) gt Le paramegravetre deacutefinition repreacutesente soit un type
de donneacutee preacutedeacutefini soit un eacuteleacutement de donneacutees composeacute constitueacute lui mecircme deacuteleacutements
Types preacutedeacutefinisbull ANY Leacuteleacutement peut contenir tout type de donneacutee
bull EMPTY Leacuteleacutement ne contient pas de donneacutees speacutecifiques
bull PCDATA Leacuteleacutement doit contenir une chaicircne de caractegravere
Deacuteclaration Deacuteclaration deacuteleacutement composeacutedeacuteleacutement composeacute
Deacutefinit une seacutequence ou un choix deacuteleacutementsSyntaxe speacutecifique avec opeacuterateurs de composition deacuteleacutements lt ELEMENT balise (composition) gt
Opeacuterateur Signification Exemple + Leacuteleacutement doit ecirctre preacutesent au minimum une fois A+ Leacuteleacutement peut ecirctre preacutesent plusieurs fois (ou aucune) A Leacuteleacutement peut ecirctre optionnellement preacutesent A | Leacuteleacutement A ou B peuvent ecirctre preacutesents (pas les deux) A|B Leacuteleacutement A doit ecirctre preacutesent et suivi de leacuteleacutement B AB
() Les parenthegraveses permettent de regrouper des eacuteleacutements afin de leur appliquer les autres opeacuterateurs
(AB)+
Deacuteclaration Deacuteclaration drsquoattributsdrsquoattributs
lt ATTLIST balise Attribut Type Mode gt balise speacutecifie leacuteleacutement auquel est attacheacute lattributAttribut est le nom de lattribut deacuteclareacuteType deacutefinit le type de donneacutee de lattribut choisi parmi CDATA
bull Chaicircnes de caractegraveres entre guillemets (aa) non analyseacutees Enumeacuteration
bull Liste de valeurs seacutepareacutees par | bull lt ATTLIST balise Attribut (Valeur1 | Valeur2 | ) gt
ID et IDREFbull Cleacute et reacutefeacuterence agrave cleacute
Mode preacutecise le caractegravere obligatoire ou non de lattribut REQUIRED IMPLIED ou FIXED
Exemple drsquoune DTDExemple drsquoune DTD
ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gt
1048710 une balise laquo listePersonnes raquo contient au moins 1 balise personne1048710 une balise laquo personne raquo contient une balise nom une eacuteventuelle balise prenom une balise adresse le tout dans lrsquoordre indiqueacute1048710 la balise laquo personne raquo contient un attribut laquo statut raquo obligatoire1048710 + signifie laquo au moins une raquo1048710 signifie laquo au moins zeacutero raquo1048710 signifie laquo 0 ou 1 raquo1048710 xxx | yyy signifie une de ces deux balises au choix1048710 PCDATA laquo parsed character data raquo1048710 REQUIRED = obligatoire IMPLIED = facultatif
XML ScheacutemaXML Scheacutema
Limite des DTD Description limiteacutee dans des documents
structureacutesbull Problegraveme de typage (PCDATA)
Exprimeacute dans un langage autre que XMLbull Pas les mecircmes parseurs
Objectif de XML Scheacutema Ameacutelioration du typage Ameacutelioration de la structure
bull Nombre borneacute drsquoeacuteleacutements inclus hellip
Remplace de plus en plus la DTD car exprimeacute en syntaxe XML et extensible
XML ScheacutemaXML Scheacutema
Comme une DTD le Scheacutema (xsd) permet de garantir la coheacuterence des donneacutees xml mais sa syntaxe est de style xml le niveau de preacutecision est beaucoup plus eacuteleveacute Dans le document xml
ltlistePersonnes xmlnsxsi=httpwwww3org2001XMLSchema-instance xsinoNamespaceSchemaLocation=listePersonnesxsdgt
XML ScheacutemaXML Scheacutema
Deacuteclaration des eacuteleacutements et attributs Nom Typage similaire agrave lobjet
Speacutecification de types simples Grande varieacuteteacute de types
Geacuteneacuteration de types complexes Seacutequence (Sequence) Choix (Choice) Tas (All)
Les types simplesLes types simples
string Confirm this is electric
byte -1 126
hexBinary 0FB7
boolean true false 1 0
time 132000000 132000000-0500
dateTime 1999-05-31T132000000-0500
duration P1Y2M3DT10H30M123S
float -INF -1E4 -0 0 1278E-2 12 INF
NaN
integer -126789 -1 0 1 126789
positiveInteger 1 126789
negativeInteger -126789 -1
nonNegativeInteger 0 1 126789
nonPositiveInteger -126789 -1 0
int -1 126789675
unsignedInt 0 1267896754
anyURI httpwwwexamplecom
Les types complexesLes types complexes
Deacutefinition dobjets complexes ltsequencegt collection ordonneacutee deacuteleacutements typeacutes ltallgt collection non ordonneacutee deacuteleacutements typeacutes ltchoicegt choix entre eacuteleacutements typeacutes
ExempleltxsdcomplexType name=AddresseFRgt ltxsdsequencegt ltxsdelement name=nom type=xsdstringgt ltxsdelement name=rue type=xsdstringgt ltxsdelement name=ville type=xsdstringgt ltxsdelement name=codep
type=xsddecimalgt ltxsdsequencegt ltxsdattribute name=pays type=xsdNMTOKEN fixed=FRgt ltxsdcomplexTypegt
Les PatternsLes Patterns
Contraintes sur type simple preacutedeacutefini Utilisation dexpression reacuteguliegraveres Similaires agrave celles de Perl
ExempleltxsdsimpleType name=NumItemgt ltxsdrestriction base=xsdstringgt
ltxsdpattern value=d3-[A-Z]2gt ltxsdrestrictiongt ltxsdsimpleTypegt
XML SchemaXML Schemaexemple (1)exemple (1)
ltxsdschema xmlnsxsd=httpwwww3org1999XMLSchemagt
ltxsdelement name=commande type=CommandeTypegt ltxsdelement name=commentaire type=xsdstringgt ltxsdcomplexType name=CommandeTypegt
ltxsdsequencegt ltxsdelement name=livrer type=Adressegt ltxsdelement name=facturer type=Adressegt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=produits type=ProduitTypegt
ltxsdsequencegt ltxsdattribute name=date_com type=xsddategt
ltxsdcomplexTypegt
XML Schema XML Schema exemple (2)exemple (2)
ltxsdcomplexType name=ProduitTypegt ltxsdsequencegt
ltxsdelement name=produit minOccurs=0 maxOccurs=unboundedgt ltxsdcomplexTypegt
ltxsdsequencegt ltxsdelement name=nom_prod type=xsdstringgt ltxsdelement name=quantitegt ltxsdsimpleTypegt ltxsdrestriction
base=xsdpositiveIntegergt ltxsdmaxExclusive value=100gt ltxsdrestrictiongt ltxsdsimpleTypegt ltxsdelementgt ltxsdelement name=prix type=xsddecimalgt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=date_livraison type=xsddate
minOccurs=0gt ltxsdsequencegt ltxsdattribute name=num_prod type=xsdpositiveInteger
use=requiredgt ltxsdcomplexTypegt
ltxsdelementgt ltxsdsequencegt ltxsdcomplexTypegt ltxsdschemagt
Feuille de styleFeuille de style
Feuille de styleFeuille de style
La repreacutesentation de cette lettre en XML ne comporte aucune indication sur sa mise en page Les aspects graphiques ou typographiques sont
absents du source XML Ces aspects seront deacutefinis par lrsquointermeacutediaire
drsquoune feuille de styleUne feuille de style est un ensemble de regravegles pour speacutecifier la reacutealisation concregravete drsquoun document sur un meacutedia particulierOn ajoute dans le deacutebut du fichier xml un lien vers la feuille de style fichier xsl ltxml-stylesheet type=textxsllaquo
href=transformateurxslgt Ce fichier peut ecirctre local ou acceacutedeacute via une URL
Conception de Conception de DTDScheacutemaDTDScheacutema
Possible agrave partir drsquoune modeacutelisation ULM
Quelques outils de Quelques outils de travailtravail
Editeur Outil Support
Tibco Turbo XML DTD XSLScheacutema
Altova XMLSpy DTD Scheacutema XSL Xquery
SyncRO Ltd Oxygen DTD Scheacutema XSL Xquery
Data Junction XML Junction Scheacutema
Insight Soft XMLMate DTD ScheacutemaXSL XPath
XML Mind XMLMind Editor DTD ScheacutemaXSL XPath
Exemple DTDExemple DTD
Convertisseur TAC vers XML (metaf2xml)
ltENTITY cloudType AC|ACC|ACSL|AS|CB|CBMAM|CC|CCSL|CI|CS|CU|CF|CUFRA|NS|SAC|SC|SCSL|ST|SF|STFRA|TCUgt
ltENTITY colourCodes BLUplus|BLU|WHT|GRN|YLO|YLO1|YLO2|AMB|RED|FCSTCANCELgtltENTITY cloudCover FEW|SCT|BKN|OVCgtltENTITY cloudFamily 0|1|2|3|4|5|6|7|8|9gtltENTITY phenomDescr isFrequent|isOccasional|isIntermittent|isContinuous|isThick|
isPrettyThick|isVeryThick|isThin|isPrettyThin|isVeryThin|isFeeble|isPrettyFeeble|isVeryFeeble|isLight|isPrettyLight|isVeryLight|isModerate|isLow|isLower|isIsolated|isConvective|isDissipated|inPastHour|baseBelowStation|isAloft|isAround|isFreezing|isPatchygt
ltENTITY unitRadiation kJmm|JcmcmgtltENTITY unitSpeed KT|MPS|KMHgtltENTITY period 1d|24h|1h|ngtltENTITY compassDir N|NNE|NE|ENE|E|ESE|SE|SSE|S|SSW|SW|WSW|W|WNW|NW|NNWgt
Exemple DTDExemple DTD
ltELEMENT taf (ERROR WARNING obsStation issueTime fcstPeriod reportModifier fcstNotAvbl sfcWind (CAVOK | (visPrev weatherList cloudList visVert)) (turbulence | icing | windShearLvl | QNH) trendList (tempAt | tempMaxAt | tempMinAt | correctedAt |
amendedAt | limMetwatch | autoMetwatch | amendment) tafRemarkList)gtltATTLIST taf s CDATA REQUIREDgt
Exemple xmlExemple xml
ltxml version=10 encoding=UTF-8gtltdatagt ltoptionsgtltformat v=xml gt ltlang v=en gt ltmode v=latest gt
ltmsg_metaf v= gt ltmsg_synop v=AAXX 09004 08495 11459
30714 10147 20136 30151 40159 58005 60001 70511 83500 92350 gt
ltsrc_metaf v=noaa gt ltsrc_synop v=nws_land gt lttype_metaf v=metar gt lttype_synop v=synop gt ltoptionsgt ltreportsgt ltsynop s=AAXX 09004 08495
11459 30714 10147 20136 30151 40159 58005 60001 70511 83500 92350gt
ltobsStationType s=AAXXgt ltstationType v=AAXX gt ltobsStationTypegt ltobsTime s=0900gt ltday v=09 gt lthour
v=00 gt ltminute v=00 gt ltobsTimegt
ltwindIndicator s=4gtltwindUnit v=KT gt ltwindIndicatorgt
ltstationId s=08495gt ltid v=08495 gt ltregion v=VI gt
ltprecipInd s=1gt ltprecipIndVal v=1 gt ltprecipIndgt ltwxInd s=1gt ltwxIndVal v=1 gt ltwxIndgt ltbaseLowestCloud s=4gt ltfrom v=300 u=M gtltto v=600 u=M gt ltbaseLowestCloudgt ltvisPrev s=59gt ltdistance v=9 u=KM gt ltvisPrevgt lttotalCloudCover s=3gt ltoktas v=3 gt lttotalCloudCovergt ltsfcWind s=0714gt ltwindgt ltdir v=70 gt ltspeed v=14 u=KT gt ltwindgt ltsfcWindgt lttemperature s=10147 20136gt ltairgt lttemp v=147 u=C gtltairgt
Exemple Interface Exemple Interface WEBWEB
WIS XMLBUFRWIS XMLBUFR
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
-
Controcircle du xmlControcircle du xml
XML nrsquoest vraiment puissant que si la coheacuterence est controcircleacutee pour cela deux technologies au choix le DTD
bull rudimentaire mais suffisant dans la plupart des cas bull syntaxe diffeacuterente
le XML-Scheacutemabull puissant (donneacutees plus fortement typeacutees)bull syntaxe de style xml
DTD ouet scheacutema permettent de deacutefinir son propre langage baseacute sur XML Vocabulaire (balises) Grammaire (imbrications)
les donneacutees de controcircle peuvent ecirctre dans le fichier xml lui-mecircme dans un fichier annexe sur le Web
DTDDTD
Une DTD deacutecrit les balises autoriseacutees dans un document xml lrsquoordre dans lequel elles doivent ecirctre imbriqueacutees leurs eacuteventuels attributs les types des informations qursquoelles encapsulent
ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gtltELEMENT adresse (numero rue codePostal ville)gtltATTLIST adresse pays NMTOKENS IMPLIEDgtltELEMENT numero (PCDATA) gtltELEMENT rue (PCDATA) gtltELEMENT codePostal (PCDATA) gtltELEMENT ville (PCDATA) gt
Lien xml DTD Lien xml DTD seacutepareacuteeseacutepareacutee
ltxml version=10 encoding=iso-8859-1gtltDOCTYPE listePersonnes SYSTEM listePersonnesdtd
gtltlistePersonnesgtltpersonne statut =etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
XML DTD 1 seul XML DTD 1 seul fichierfichier
ltxml version=10 encoding=iso-8859-1 standalone=yesgtltDOCTYPE listePersonnes [ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gtltELEMENT adresse (numero rue codePostal ville)gtltATTLIST adresse pays NMTOKENS IMPLIEDgtltELEMENT numero (PCDATA) gtltELEMENT rue (PCDATA) gtltELEMENT codePostal (PCDATA) gtltELEMENT ville (PCDATA) gt]gtltlistePersonnesgtltpersonnegtltstatut libelleacute=etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Lien DTD webLien DTD web
ltxml version=10 encoding=iso-8859-1 standalone=nogtltDOChTtYtPpE
lilsotceaPlehrossotnnleisstSeYPSeTrEsMo nnesdtd gt
ltlistePersonnesgtltpersonne statut =etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Deacuteclaration Deacuteclaration deacuteleacutement simpledeacuteleacutement simple
lt ELEMENT balise (deacutefinition) gt Le paramegravetre deacutefinition repreacutesente soit un type
de donneacutee preacutedeacutefini soit un eacuteleacutement de donneacutees composeacute constitueacute lui mecircme deacuteleacutements
Types preacutedeacutefinisbull ANY Leacuteleacutement peut contenir tout type de donneacutee
bull EMPTY Leacuteleacutement ne contient pas de donneacutees speacutecifiques
bull PCDATA Leacuteleacutement doit contenir une chaicircne de caractegravere
Deacuteclaration Deacuteclaration deacuteleacutement composeacutedeacuteleacutement composeacute
Deacutefinit une seacutequence ou un choix deacuteleacutementsSyntaxe speacutecifique avec opeacuterateurs de composition deacuteleacutements lt ELEMENT balise (composition) gt
Opeacuterateur Signification Exemple + Leacuteleacutement doit ecirctre preacutesent au minimum une fois A+ Leacuteleacutement peut ecirctre preacutesent plusieurs fois (ou aucune) A Leacuteleacutement peut ecirctre optionnellement preacutesent A | Leacuteleacutement A ou B peuvent ecirctre preacutesents (pas les deux) A|B Leacuteleacutement A doit ecirctre preacutesent et suivi de leacuteleacutement B AB
() Les parenthegraveses permettent de regrouper des eacuteleacutements afin de leur appliquer les autres opeacuterateurs
(AB)+
Deacuteclaration Deacuteclaration drsquoattributsdrsquoattributs
lt ATTLIST balise Attribut Type Mode gt balise speacutecifie leacuteleacutement auquel est attacheacute lattributAttribut est le nom de lattribut deacuteclareacuteType deacutefinit le type de donneacutee de lattribut choisi parmi CDATA
bull Chaicircnes de caractegraveres entre guillemets (aa) non analyseacutees Enumeacuteration
bull Liste de valeurs seacutepareacutees par | bull lt ATTLIST balise Attribut (Valeur1 | Valeur2 | ) gt
ID et IDREFbull Cleacute et reacutefeacuterence agrave cleacute
Mode preacutecise le caractegravere obligatoire ou non de lattribut REQUIRED IMPLIED ou FIXED
Exemple drsquoune DTDExemple drsquoune DTD
ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gt
1048710 une balise laquo listePersonnes raquo contient au moins 1 balise personne1048710 une balise laquo personne raquo contient une balise nom une eacuteventuelle balise prenom une balise adresse le tout dans lrsquoordre indiqueacute1048710 la balise laquo personne raquo contient un attribut laquo statut raquo obligatoire1048710 + signifie laquo au moins une raquo1048710 signifie laquo au moins zeacutero raquo1048710 signifie laquo 0 ou 1 raquo1048710 xxx | yyy signifie une de ces deux balises au choix1048710 PCDATA laquo parsed character data raquo1048710 REQUIRED = obligatoire IMPLIED = facultatif
XML ScheacutemaXML Scheacutema
Limite des DTD Description limiteacutee dans des documents
structureacutesbull Problegraveme de typage (PCDATA)
Exprimeacute dans un langage autre que XMLbull Pas les mecircmes parseurs
Objectif de XML Scheacutema Ameacutelioration du typage Ameacutelioration de la structure
bull Nombre borneacute drsquoeacuteleacutements inclus hellip
Remplace de plus en plus la DTD car exprimeacute en syntaxe XML et extensible
XML ScheacutemaXML Scheacutema
Comme une DTD le Scheacutema (xsd) permet de garantir la coheacuterence des donneacutees xml mais sa syntaxe est de style xml le niveau de preacutecision est beaucoup plus eacuteleveacute Dans le document xml
ltlistePersonnes xmlnsxsi=httpwwww3org2001XMLSchema-instance xsinoNamespaceSchemaLocation=listePersonnesxsdgt
XML ScheacutemaXML Scheacutema
Deacuteclaration des eacuteleacutements et attributs Nom Typage similaire agrave lobjet
Speacutecification de types simples Grande varieacuteteacute de types
Geacuteneacuteration de types complexes Seacutequence (Sequence) Choix (Choice) Tas (All)
Les types simplesLes types simples
string Confirm this is electric
byte -1 126
hexBinary 0FB7
boolean true false 1 0
time 132000000 132000000-0500
dateTime 1999-05-31T132000000-0500
duration P1Y2M3DT10H30M123S
float -INF -1E4 -0 0 1278E-2 12 INF
NaN
integer -126789 -1 0 1 126789
positiveInteger 1 126789
negativeInteger -126789 -1
nonNegativeInteger 0 1 126789
nonPositiveInteger -126789 -1 0
int -1 126789675
unsignedInt 0 1267896754
anyURI httpwwwexamplecom
Les types complexesLes types complexes
Deacutefinition dobjets complexes ltsequencegt collection ordonneacutee deacuteleacutements typeacutes ltallgt collection non ordonneacutee deacuteleacutements typeacutes ltchoicegt choix entre eacuteleacutements typeacutes
ExempleltxsdcomplexType name=AddresseFRgt ltxsdsequencegt ltxsdelement name=nom type=xsdstringgt ltxsdelement name=rue type=xsdstringgt ltxsdelement name=ville type=xsdstringgt ltxsdelement name=codep
type=xsddecimalgt ltxsdsequencegt ltxsdattribute name=pays type=xsdNMTOKEN fixed=FRgt ltxsdcomplexTypegt
Les PatternsLes Patterns
Contraintes sur type simple preacutedeacutefini Utilisation dexpression reacuteguliegraveres Similaires agrave celles de Perl
ExempleltxsdsimpleType name=NumItemgt ltxsdrestriction base=xsdstringgt
ltxsdpattern value=d3-[A-Z]2gt ltxsdrestrictiongt ltxsdsimpleTypegt
XML SchemaXML Schemaexemple (1)exemple (1)
ltxsdschema xmlnsxsd=httpwwww3org1999XMLSchemagt
ltxsdelement name=commande type=CommandeTypegt ltxsdelement name=commentaire type=xsdstringgt ltxsdcomplexType name=CommandeTypegt
ltxsdsequencegt ltxsdelement name=livrer type=Adressegt ltxsdelement name=facturer type=Adressegt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=produits type=ProduitTypegt
ltxsdsequencegt ltxsdattribute name=date_com type=xsddategt
ltxsdcomplexTypegt
XML Schema XML Schema exemple (2)exemple (2)
ltxsdcomplexType name=ProduitTypegt ltxsdsequencegt
ltxsdelement name=produit minOccurs=0 maxOccurs=unboundedgt ltxsdcomplexTypegt
ltxsdsequencegt ltxsdelement name=nom_prod type=xsdstringgt ltxsdelement name=quantitegt ltxsdsimpleTypegt ltxsdrestriction
base=xsdpositiveIntegergt ltxsdmaxExclusive value=100gt ltxsdrestrictiongt ltxsdsimpleTypegt ltxsdelementgt ltxsdelement name=prix type=xsddecimalgt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=date_livraison type=xsddate
minOccurs=0gt ltxsdsequencegt ltxsdattribute name=num_prod type=xsdpositiveInteger
use=requiredgt ltxsdcomplexTypegt
ltxsdelementgt ltxsdsequencegt ltxsdcomplexTypegt ltxsdschemagt
Feuille de styleFeuille de style
Feuille de styleFeuille de style
La repreacutesentation de cette lettre en XML ne comporte aucune indication sur sa mise en page Les aspects graphiques ou typographiques sont
absents du source XML Ces aspects seront deacutefinis par lrsquointermeacutediaire
drsquoune feuille de styleUne feuille de style est un ensemble de regravegles pour speacutecifier la reacutealisation concregravete drsquoun document sur un meacutedia particulierOn ajoute dans le deacutebut du fichier xml un lien vers la feuille de style fichier xsl ltxml-stylesheet type=textxsllaquo
href=transformateurxslgt Ce fichier peut ecirctre local ou acceacutedeacute via une URL
Conception de Conception de DTDScheacutemaDTDScheacutema
Possible agrave partir drsquoune modeacutelisation ULM
Quelques outils de Quelques outils de travailtravail
Editeur Outil Support
Tibco Turbo XML DTD XSLScheacutema
Altova XMLSpy DTD Scheacutema XSL Xquery
SyncRO Ltd Oxygen DTD Scheacutema XSL Xquery
Data Junction XML Junction Scheacutema
Insight Soft XMLMate DTD ScheacutemaXSL XPath
XML Mind XMLMind Editor DTD ScheacutemaXSL XPath
Exemple DTDExemple DTD
Convertisseur TAC vers XML (metaf2xml)
ltENTITY cloudType AC|ACC|ACSL|AS|CB|CBMAM|CC|CCSL|CI|CS|CU|CF|CUFRA|NS|SAC|SC|SCSL|ST|SF|STFRA|TCUgt
ltENTITY colourCodes BLUplus|BLU|WHT|GRN|YLO|YLO1|YLO2|AMB|RED|FCSTCANCELgtltENTITY cloudCover FEW|SCT|BKN|OVCgtltENTITY cloudFamily 0|1|2|3|4|5|6|7|8|9gtltENTITY phenomDescr isFrequent|isOccasional|isIntermittent|isContinuous|isThick|
isPrettyThick|isVeryThick|isThin|isPrettyThin|isVeryThin|isFeeble|isPrettyFeeble|isVeryFeeble|isLight|isPrettyLight|isVeryLight|isModerate|isLow|isLower|isIsolated|isConvective|isDissipated|inPastHour|baseBelowStation|isAloft|isAround|isFreezing|isPatchygt
ltENTITY unitRadiation kJmm|JcmcmgtltENTITY unitSpeed KT|MPS|KMHgtltENTITY period 1d|24h|1h|ngtltENTITY compassDir N|NNE|NE|ENE|E|ESE|SE|SSE|S|SSW|SW|WSW|W|WNW|NW|NNWgt
Exemple DTDExemple DTD
ltELEMENT taf (ERROR WARNING obsStation issueTime fcstPeriod reportModifier fcstNotAvbl sfcWind (CAVOK | (visPrev weatherList cloudList visVert)) (turbulence | icing | windShearLvl | QNH) trendList (tempAt | tempMaxAt | tempMinAt | correctedAt |
amendedAt | limMetwatch | autoMetwatch | amendment) tafRemarkList)gtltATTLIST taf s CDATA REQUIREDgt
Exemple xmlExemple xml
ltxml version=10 encoding=UTF-8gtltdatagt ltoptionsgtltformat v=xml gt ltlang v=en gt ltmode v=latest gt
ltmsg_metaf v= gt ltmsg_synop v=AAXX 09004 08495 11459
30714 10147 20136 30151 40159 58005 60001 70511 83500 92350 gt
ltsrc_metaf v=noaa gt ltsrc_synop v=nws_land gt lttype_metaf v=metar gt lttype_synop v=synop gt ltoptionsgt ltreportsgt ltsynop s=AAXX 09004 08495
11459 30714 10147 20136 30151 40159 58005 60001 70511 83500 92350gt
ltobsStationType s=AAXXgt ltstationType v=AAXX gt ltobsStationTypegt ltobsTime s=0900gt ltday v=09 gt lthour
v=00 gt ltminute v=00 gt ltobsTimegt
ltwindIndicator s=4gtltwindUnit v=KT gt ltwindIndicatorgt
ltstationId s=08495gt ltid v=08495 gt ltregion v=VI gt
ltprecipInd s=1gt ltprecipIndVal v=1 gt ltprecipIndgt ltwxInd s=1gt ltwxIndVal v=1 gt ltwxIndgt ltbaseLowestCloud s=4gt ltfrom v=300 u=M gtltto v=600 u=M gt ltbaseLowestCloudgt ltvisPrev s=59gt ltdistance v=9 u=KM gt ltvisPrevgt lttotalCloudCover s=3gt ltoktas v=3 gt lttotalCloudCovergt ltsfcWind s=0714gt ltwindgt ltdir v=70 gt ltspeed v=14 u=KT gt ltwindgt ltsfcWindgt lttemperature s=10147 20136gt ltairgt lttemp v=147 u=C gtltairgt
Exemple Interface Exemple Interface WEBWEB
WIS XMLBUFRWIS XMLBUFR
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
-
DTDDTD
Une DTD deacutecrit les balises autoriseacutees dans un document xml lrsquoordre dans lequel elles doivent ecirctre imbriqueacutees leurs eacuteventuels attributs les types des informations qursquoelles encapsulent
ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gtltELEMENT adresse (numero rue codePostal ville)gtltATTLIST adresse pays NMTOKENS IMPLIEDgtltELEMENT numero (PCDATA) gtltELEMENT rue (PCDATA) gtltELEMENT codePostal (PCDATA) gtltELEMENT ville (PCDATA) gt
Lien xml DTD Lien xml DTD seacutepareacuteeseacutepareacutee
ltxml version=10 encoding=iso-8859-1gtltDOCTYPE listePersonnes SYSTEM listePersonnesdtd
gtltlistePersonnesgtltpersonne statut =etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
XML DTD 1 seul XML DTD 1 seul fichierfichier
ltxml version=10 encoding=iso-8859-1 standalone=yesgtltDOCTYPE listePersonnes [ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gtltELEMENT adresse (numero rue codePostal ville)gtltATTLIST adresse pays NMTOKENS IMPLIEDgtltELEMENT numero (PCDATA) gtltELEMENT rue (PCDATA) gtltELEMENT codePostal (PCDATA) gtltELEMENT ville (PCDATA) gt]gtltlistePersonnesgtltpersonnegtltstatut libelleacute=etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Lien DTD webLien DTD web
ltxml version=10 encoding=iso-8859-1 standalone=nogtltDOChTtYtPpE
lilsotceaPlehrossotnnleisstSeYPSeTrEsMo nnesdtd gt
ltlistePersonnesgtltpersonne statut =etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Deacuteclaration Deacuteclaration deacuteleacutement simpledeacuteleacutement simple
lt ELEMENT balise (deacutefinition) gt Le paramegravetre deacutefinition repreacutesente soit un type
de donneacutee preacutedeacutefini soit un eacuteleacutement de donneacutees composeacute constitueacute lui mecircme deacuteleacutements
Types preacutedeacutefinisbull ANY Leacuteleacutement peut contenir tout type de donneacutee
bull EMPTY Leacuteleacutement ne contient pas de donneacutees speacutecifiques
bull PCDATA Leacuteleacutement doit contenir une chaicircne de caractegravere
Deacuteclaration Deacuteclaration deacuteleacutement composeacutedeacuteleacutement composeacute
Deacutefinit une seacutequence ou un choix deacuteleacutementsSyntaxe speacutecifique avec opeacuterateurs de composition deacuteleacutements lt ELEMENT balise (composition) gt
Opeacuterateur Signification Exemple + Leacuteleacutement doit ecirctre preacutesent au minimum une fois A+ Leacuteleacutement peut ecirctre preacutesent plusieurs fois (ou aucune) A Leacuteleacutement peut ecirctre optionnellement preacutesent A | Leacuteleacutement A ou B peuvent ecirctre preacutesents (pas les deux) A|B Leacuteleacutement A doit ecirctre preacutesent et suivi de leacuteleacutement B AB
() Les parenthegraveses permettent de regrouper des eacuteleacutements afin de leur appliquer les autres opeacuterateurs
(AB)+
Deacuteclaration Deacuteclaration drsquoattributsdrsquoattributs
lt ATTLIST balise Attribut Type Mode gt balise speacutecifie leacuteleacutement auquel est attacheacute lattributAttribut est le nom de lattribut deacuteclareacuteType deacutefinit le type de donneacutee de lattribut choisi parmi CDATA
bull Chaicircnes de caractegraveres entre guillemets (aa) non analyseacutees Enumeacuteration
bull Liste de valeurs seacutepareacutees par | bull lt ATTLIST balise Attribut (Valeur1 | Valeur2 | ) gt
ID et IDREFbull Cleacute et reacutefeacuterence agrave cleacute
Mode preacutecise le caractegravere obligatoire ou non de lattribut REQUIRED IMPLIED ou FIXED
Exemple drsquoune DTDExemple drsquoune DTD
ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gt
1048710 une balise laquo listePersonnes raquo contient au moins 1 balise personne1048710 une balise laquo personne raquo contient une balise nom une eacuteventuelle balise prenom une balise adresse le tout dans lrsquoordre indiqueacute1048710 la balise laquo personne raquo contient un attribut laquo statut raquo obligatoire1048710 + signifie laquo au moins une raquo1048710 signifie laquo au moins zeacutero raquo1048710 signifie laquo 0 ou 1 raquo1048710 xxx | yyy signifie une de ces deux balises au choix1048710 PCDATA laquo parsed character data raquo1048710 REQUIRED = obligatoire IMPLIED = facultatif
XML ScheacutemaXML Scheacutema
Limite des DTD Description limiteacutee dans des documents
structureacutesbull Problegraveme de typage (PCDATA)
Exprimeacute dans un langage autre que XMLbull Pas les mecircmes parseurs
Objectif de XML Scheacutema Ameacutelioration du typage Ameacutelioration de la structure
bull Nombre borneacute drsquoeacuteleacutements inclus hellip
Remplace de plus en plus la DTD car exprimeacute en syntaxe XML et extensible
XML ScheacutemaXML Scheacutema
Comme une DTD le Scheacutema (xsd) permet de garantir la coheacuterence des donneacutees xml mais sa syntaxe est de style xml le niveau de preacutecision est beaucoup plus eacuteleveacute Dans le document xml
ltlistePersonnes xmlnsxsi=httpwwww3org2001XMLSchema-instance xsinoNamespaceSchemaLocation=listePersonnesxsdgt
XML ScheacutemaXML Scheacutema
Deacuteclaration des eacuteleacutements et attributs Nom Typage similaire agrave lobjet
Speacutecification de types simples Grande varieacuteteacute de types
Geacuteneacuteration de types complexes Seacutequence (Sequence) Choix (Choice) Tas (All)
Les types simplesLes types simples
string Confirm this is electric
byte -1 126
hexBinary 0FB7
boolean true false 1 0
time 132000000 132000000-0500
dateTime 1999-05-31T132000000-0500
duration P1Y2M3DT10H30M123S
float -INF -1E4 -0 0 1278E-2 12 INF
NaN
integer -126789 -1 0 1 126789
positiveInteger 1 126789
negativeInteger -126789 -1
nonNegativeInteger 0 1 126789
nonPositiveInteger -126789 -1 0
int -1 126789675
unsignedInt 0 1267896754
anyURI httpwwwexamplecom
Les types complexesLes types complexes
Deacutefinition dobjets complexes ltsequencegt collection ordonneacutee deacuteleacutements typeacutes ltallgt collection non ordonneacutee deacuteleacutements typeacutes ltchoicegt choix entre eacuteleacutements typeacutes
ExempleltxsdcomplexType name=AddresseFRgt ltxsdsequencegt ltxsdelement name=nom type=xsdstringgt ltxsdelement name=rue type=xsdstringgt ltxsdelement name=ville type=xsdstringgt ltxsdelement name=codep
type=xsddecimalgt ltxsdsequencegt ltxsdattribute name=pays type=xsdNMTOKEN fixed=FRgt ltxsdcomplexTypegt
Les PatternsLes Patterns
Contraintes sur type simple preacutedeacutefini Utilisation dexpression reacuteguliegraveres Similaires agrave celles de Perl
ExempleltxsdsimpleType name=NumItemgt ltxsdrestriction base=xsdstringgt
ltxsdpattern value=d3-[A-Z]2gt ltxsdrestrictiongt ltxsdsimpleTypegt
XML SchemaXML Schemaexemple (1)exemple (1)
ltxsdschema xmlnsxsd=httpwwww3org1999XMLSchemagt
ltxsdelement name=commande type=CommandeTypegt ltxsdelement name=commentaire type=xsdstringgt ltxsdcomplexType name=CommandeTypegt
ltxsdsequencegt ltxsdelement name=livrer type=Adressegt ltxsdelement name=facturer type=Adressegt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=produits type=ProduitTypegt
ltxsdsequencegt ltxsdattribute name=date_com type=xsddategt
ltxsdcomplexTypegt
XML Schema XML Schema exemple (2)exemple (2)
ltxsdcomplexType name=ProduitTypegt ltxsdsequencegt
ltxsdelement name=produit minOccurs=0 maxOccurs=unboundedgt ltxsdcomplexTypegt
ltxsdsequencegt ltxsdelement name=nom_prod type=xsdstringgt ltxsdelement name=quantitegt ltxsdsimpleTypegt ltxsdrestriction
base=xsdpositiveIntegergt ltxsdmaxExclusive value=100gt ltxsdrestrictiongt ltxsdsimpleTypegt ltxsdelementgt ltxsdelement name=prix type=xsddecimalgt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=date_livraison type=xsddate
minOccurs=0gt ltxsdsequencegt ltxsdattribute name=num_prod type=xsdpositiveInteger
use=requiredgt ltxsdcomplexTypegt
ltxsdelementgt ltxsdsequencegt ltxsdcomplexTypegt ltxsdschemagt
Feuille de styleFeuille de style
Feuille de styleFeuille de style
La repreacutesentation de cette lettre en XML ne comporte aucune indication sur sa mise en page Les aspects graphiques ou typographiques sont
absents du source XML Ces aspects seront deacutefinis par lrsquointermeacutediaire
drsquoune feuille de styleUne feuille de style est un ensemble de regravegles pour speacutecifier la reacutealisation concregravete drsquoun document sur un meacutedia particulierOn ajoute dans le deacutebut du fichier xml un lien vers la feuille de style fichier xsl ltxml-stylesheet type=textxsllaquo
href=transformateurxslgt Ce fichier peut ecirctre local ou acceacutedeacute via une URL
Conception de Conception de DTDScheacutemaDTDScheacutema
Possible agrave partir drsquoune modeacutelisation ULM
Quelques outils de Quelques outils de travailtravail
Editeur Outil Support
Tibco Turbo XML DTD XSLScheacutema
Altova XMLSpy DTD Scheacutema XSL Xquery
SyncRO Ltd Oxygen DTD Scheacutema XSL Xquery
Data Junction XML Junction Scheacutema
Insight Soft XMLMate DTD ScheacutemaXSL XPath
XML Mind XMLMind Editor DTD ScheacutemaXSL XPath
Exemple DTDExemple DTD
Convertisseur TAC vers XML (metaf2xml)
ltENTITY cloudType AC|ACC|ACSL|AS|CB|CBMAM|CC|CCSL|CI|CS|CU|CF|CUFRA|NS|SAC|SC|SCSL|ST|SF|STFRA|TCUgt
ltENTITY colourCodes BLUplus|BLU|WHT|GRN|YLO|YLO1|YLO2|AMB|RED|FCSTCANCELgtltENTITY cloudCover FEW|SCT|BKN|OVCgtltENTITY cloudFamily 0|1|2|3|4|5|6|7|8|9gtltENTITY phenomDescr isFrequent|isOccasional|isIntermittent|isContinuous|isThick|
isPrettyThick|isVeryThick|isThin|isPrettyThin|isVeryThin|isFeeble|isPrettyFeeble|isVeryFeeble|isLight|isPrettyLight|isVeryLight|isModerate|isLow|isLower|isIsolated|isConvective|isDissipated|inPastHour|baseBelowStation|isAloft|isAround|isFreezing|isPatchygt
ltENTITY unitRadiation kJmm|JcmcmgtltENTITY unitSpeed KT|MPS|KMHgtltENTITY period 1d|24h|1h|ngtltENTITY compassDir N|NNE|NE|ENE|E|ESE|SE|SSE|S|SSW|SW|WSW|W|WNW|NW|NNWgt
Exemple DTDExemple DTD
ltELEMENT taf (ERROR WARNING obsStation issueTime fcstPeriod reportModifier fcstNotAvbl sfcWind (CAVOK | (visPrev weatherList cloudList visVert)) (turbulence | icing | windShearLvl | QNH) trendList (tempAt | tempMaxAt | tempMinAt | correctedAt |
amendedAt | limMetwatch | autoMetwatch | amendment) tafRemarkList)gtltATTLIST taf s CDATA REQUIREDgt
Exemple xmlExemple xml
ltxml version=10 encoding=UTF-8gtltdatagt ltoptionsgtltformat v=xml gt ltlang v=en gt ltmode v=latest gt
ltmsg_metaf v= gt ltmsg_synop v=AAXX 09004 08495 11459
30714 10147 20136 30151 40159 58005 60001 70511 83500 92350 gt
ltsrc_metaf v=noaa gt ltsrc_synop v=nws_land gt lttype_metaf v=metar gt lttype_synop v=synop gt ltoptionsgt ltreportsgt ltsynop s=AAXX 09004 08495
11459 30714 10147 20136 30151 40159 58005 60001 70511 83500 92350gt
ltobsStationType s=AAXXgt ltstationType v=AAXX gt ltobsStationTypegt ltobsTime s=0900gt ltday v=09 gt lthour
v=00 gt ltminute v=00 gt ltobsTimegt
ltwindIndicator s=4gtltwindUnit v=KT gt ltwindIndicatorgt
ltstationId s=08495gt ltid v=08495 gt ltregion v=VI gt
ltprecipInd s=1gt ltprecipIndVal v=1 gt ltprecipIndgt ltwxInd s=1gt ltwxIndVal v=1 gt ltwxIndgt ltbaseLowestCloud s=4gt ltfrom v=300 u=M gtltto v=600 u=M gt ltbaseLowestCloudgt ltvisPrev s=59gt ltdistance v=9 u=KM gt ltvisPrevgt lttotalCloudCover s=3gt ltoktas v=3 gt lttotalCloudCovergt ltsfcWind s=0714gt ltwindgt ltdir v=70 gt ltspeed v=14 u=KT gt ltwindgt ltsfcWindgt lttemperature s=10147 20136gt ltairgt lttemp v=147 u=C gtltairgt
Exemple Interface Exemple Interface WEBWEB
WIS XMLBUFRWIS XMLBUFR
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
-
Lien xml DTD Lien xml DTD seacutepareacuteeseacutepareacutee
ltxml version=10 encoding=iso-8859-1gtltDOCTYPE listePersonnes SYSTEM listePersonnesdtd
gtltlistePersonnesgtltpersonne statut =etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
XML DTD 1 seul XML DTD 1 seul fichierfichier
ltxml version=10 encoding=iso-8859-1 standalone=yesgtltDOCTYPE listePersonnes [ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gtltELEMENT adresse (numero rue codePostal ville)gtltATTLIST adresse pays NMTOKENS IMPLIEDgtltELEMENT numero (PCDATA) gtltELEMENT rue (PCDATA) gtltELEMENT codePostal (PCDATA) gtltELEMENT ville (PCDATA) gt]gtltlistePersonnesgtltpersonnegtltstatut libelleacute=etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Lien DTD webLien DTD web
ltxml version=10 encoding=iso-8859-1 standalone=nogtltDOChTtYtPpE
lilsotceaPlehrossotnnleisstSeYPSeTrEsMo nnesdtd gt
ltlistePersonnesgtltpersonne statut =etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Deacuteclaration Deacuteclaration deacuteleacutement simpledeacuteleacutement simple
lt ELEMENT balise (deacutefinition) gt Le paramegravetre deacutefinition repreacutesente soit un type
de donneacutee preacutedeacutefini soit un eacuteleacutement de donneacutees composeacute constitueacute lui mecircme deacuteleacutements
Types preacutedeacutefinisbull ANY Leacuteleacutement peut contenir tout type de donneacutee
bull EMPTY Leacuteleacutement ne contient pas de donneacutees speacutecifiques
bull PCDATA Leacuteleacutement doit contenir une chaicircne de caractegravere
Deacuteclaration Deacuteclaration deacuteleacutement composeacutedeacuteleacutement composeacute
Deacutefinit une seacutequence ou un choix deacuteleacutementsSyntaxe speacutecifique avec opeacuterateurs de composition deacuteleacutements lt ELEMENT balise (composition) gt
Opeacuterateur Signification Exemple + Leacuteleacutement doit ecirctre preacutesent au minimum une fois A+ Leacuteleacutement peut ecirctre preacutesent plusieurs fois (ou aucune) A Leacuteleacutement peut ecirctre optionnellement preacutesent A | Leacuteleacutement A ou B peuvent ecirctre preacutesents (pas les deux) A|B Leacuteleacutement A doit ecirctre preacutesent et suivi de leacuteleacutement B AB
() Les parenthegraveses permettent de regrouper des eacuteleacutements afin de leur appliquer les autres opeacuterateurs
(AB)+
Deacuteclaration Deacuteclaration drsquoattributsdrsquoattributs
lt ATTLIST balise Attribut Type Mode gt balise speacutecifie leacuteleacutement auquel est attacheacute lattributAttribut est le nom de lattribut deacuteclareacuteType deacutefinit le type de donneacutee de lattribut choisi parmi CDATA
bull Chaicircnes de caractegraveres entre guillemets (aa) non analyseacutees Enumeacuteration
bull Liste de valeurs seacutepareacutees par | bull lt ATTLIST balise Attribut (Valeur1 | Valeur2 | ) gt
ID et IDREFbull Cleacute et reacutefeacuterence agrave cleacute
Mode preacutecise le caractegravere obligatoire ou non de lattribut REQUIRED IMPLIED ou FIXED
Exemple drsquoune DTDExemple drsquoune DTD
ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gt
1048710 une balise laquo listePersonnes raquo contient au moins 1 balise personne1048710 une balise laquo personne raquo contient une balise nom une eacuteventuelle balise prenom une balise adresse le tout dans lrsquoordre indiqueacute1048710 la balise laquo personne raquo contient un attribut laquo statut raquo obligatoire1048710 + signifie laquo au moins une raquo1048710 signifie laquo au moins zeacutero raquo1048710 signifie laquo 0 ou 1 raquo1048710 xxx | yyy signifie une de ces deux balises au choix1048710 PCDATA laquo parsed character data raquo1048710 REQUIRED = obligatoire IMPLIED = facultatif
XML ScheacutemaXML Scheacutema
Limite des DTD Description limiteacutee dans des documents
structureacutesbull Problegraveme de typage (PCDATA)
Exprimeacute dans un langage autre que XMLbull Pas les mecircmes parseurs
Objectif de XML Scheacutema Ameacutelioration du typage Ameacutelioration de la structure
bull Nombre borneacute drsquoeacuteleacutements inclus hellip
Remplace de plus en plus la DTD car exprimeacute en syntaxe XML et extensible
XML ScheacutemaXML Scheacutema
Comme une DTD le Scheacutema (xsd) permet de garantir la coheacuterence des donneacutees xml mais sa syntaxe est de style xml le niveau de preacutecision est beaucoup plus eacuteleveacute Dans le document xml
ltlistePersonnes xmlnsxsi=httpwwww3org2001XMLSchema-instance xsinoNamespaceSchemaLocation=listePersonnesxsdgt
XML ScheacutemaXML Scheacutema
Deacuteclaration des eacuteleacutements et attributs Nom Typage similaire agrave lobjet
Speacutecification de types simples Grande varieacuteteacute de types
Geacuteneacuteration de types complexes Seacutequence (Sequence) Choix (Choice) Tas (All)
Les types simplesLes types simples
string Confirm this is electric
byte -1 126
hexBinary 0FB7
boolean true false 1 0
time 132000000 132000000-0500
dateTime 1999-05-31T132000000-0500
duration P1Y2M3DT10H30M123S
float -INF -1E4 -0 0 1278E-2 12 INF
NaN
integer -126789 -1 0 1 126789
positiveInteger 1 126789
negativeInteger -126789 -1
nonNegativeInteger 0 1 126789
nonPositiveInteger -126789 -1 0
int -1 126789675
unsignedInt 0 1267896754
anyURI httpwwwexamplecom
Les types complexesLes types complexes
Deacutefinition dobjets complexes ltsequencegt collection ordonneacutee deacuteleacutements typeacutes ltallgt collection non ordonneacutee deacuteleacutements typeacutes ltchoicegt choix entre eacuteleacutements typeacutes
ExempleltxsdcomplexType name=AddresseFRgt ltxsdsequencegt ltxsdelement name=nom type=xsdstringgt ltxsdelement name=rue type=xsdstringgt ltxsdelement name=ville type=xsdstringgt ltxsdelement name=codep
type=xsddecimalgt ltxsdsequencegt ltxsdattribute name=pays type=xsdNMTOKEN fixed=FRgt ltxsdcomplexTypegt
Les PatternsLes Patterns
Contraintes sur type simple preacutedeacutefini Utilisation dexpression reacuteguliegraveres Similaires agrave celles de Perl
ExempleltxsdsimpleType name=NumItemgt ltxsdrestriction base=xsdstringgt
ltxsdpattern value=d3-[A-Z]2gt ltxsdrestrictiongt ltxsdsimpleTypegt
XML SchemaXML Schemaexemple (1)exemple (1)
ltxsdschema xmlnsxsd=httpwwww3org1999XMLSchemagt
ltxsdelement name=commande type=CommandeTypegt ltxsdelement name=commentaire type=xsdstringgt ltxsdcomplexType name=CommandeTypegt
ltxsdsequencegt ltxsdelement name=livrer type=Adressegt ltxsdelement name=facturer type=Adressegt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=produits type=ProduitTypegt
ltxsdsequencegt ltxsdattribute name=date_com type=xsddategt
ltxsdcomplexTypegt
XML Schema XML Schema exemple (2)exemple (2)
ltxsdcomplexType name=ProduitTypegt ltxsdsequencegt
ltxsdelement name=produit minOccurs=0 maxOccurs=unboundedgt ltxsdcomplexTypegt
ltxsdsequencegt ltxsdelement name=nom_prod type=xsdstringgt ltxsdelement name=quantitegt ltxsdsimpleTypegt ltxsdrestriction
base=xsdpositiveIntegergt ltxsdmaxExclusive value=100gt ltxsdrestrictiongt ltxsdsimpleTypegt ltxsdelementgt ltxsdelement name=prix type=xsddecimalgt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=date_livraison type=xsddate
minOccurs=0gt ltxsdsequencegt ltxsdattribute name=num_prod type=xsdpositiveInteger
use=requiredgt ltxsdcomplexTypegt
ltxsdelementgt ltxsdsequencegt ltxsdcomplexTypegt ltxsdschemagt
Feuille de styleFeuille de style
Feuille de styleFeuille de style
La repreacutesentation de cette lettre en XML ne comporte aucune indication sur sa mise en page Les aspects graphiques ou typographiques sont
absents du source XML Ces aspects seront deacutefinis par lrsquointermeacutediaire
drsquoune feuille de styleUne feuille de style est un ensemble de regravegles pour speacutecifier la reacutealisation concregravete drsquoun document sur un meacutedia particulierOn ajoute dans le deacutebut du fichier xml un lien vers la feuille de style fichier xsl ltxml-stylesheet type=textxsllaquo
href=transformateurxslgt Ce fichier peut ecirctre local ou acceacutedeacute via une URL
Conception de Conception de DTDScheacutemaDTDScheacutema
Possible agrave partir drsquoune modeacutelisation ULM
Quelques outils de Quelques outils de travailtravail
Editeur Outil Support
Tibco Turbo XML DTD XSLScheacutema
Altova XMLSpy DTD Scheacutema XSL Xquery
SyncRO Ltd Oxygen DTD Scheacutema XSL Xquery
Data Junction XML Junction Scheacutema
Insight Soft XMLMate DTD ScheacutemaXSL XPath
XML Mind XMLMind Editor DTD ScheacutemaXSL XPath
Exemple DTDExemple DTD
Convertisseur TAC vers XML (metaf2xml)
ltENTITY cloudType AC|ACC|ACSL|AS|CB|CBMAM|CC|CCSL|CI|CS|CU|CF|CUFRA|NS|SAC|SC|SCSL|ST|SF|STFRA|TCUgt
ltENTITY colourCodes BLUplus|BLU|WHT|GRN|YLO|YLO1|YLO2|AMB|RED|FCSTCANCELgtltENTITY cloudCover FEW|SCT|BKN|OVCgtltENTITY cloudFamily 0|1|2|3|4|5|6|7|8|9gtltENTITY phenomDescr isFrequent|isOccasional|isIntermittent|isContinuous|isThick|
isPrettyThick|isVeryThick|isThin|isPrettyThin|isVeryThin|isFeeble|isPrettyFeeble|isVeryFeeble|isLight|isPrettyLight|isVeryLight|isModerate|isLow|isLower|isIsolated|isConvective|isDissipated|inPastHour|baseBelowStation|isAloft|isAround|isFreezing|isPatchygt
ltENTITY unitRadiation kJmm|JcmcmgtltENTITY unitSpeed KT|MPS|KMHgtltENTITY period 1d|24h|1h|ngtltENTITY compassDir N|NNE|NE|ENE|E|ESE|SE|SSE|S|SSW|SW|WSW|W|WNW|NW|NNWgt
Exemple DTDExemple DTD
ltELEMENT taf (ERROR WARNING obsStation issueTime fcstPeriod reportModifier fcstNotAvbl sfcWind (CAVOK | (visPrev weatherList cloudList visVert)) (turbulence | icing | windShearLvl | QNH) trendList (tempAt | tempMaxAt | tempMinAt | correctedAt |
amendedAt | limMetwatch | autoMetwatch | amendment) tafRemarkList)gtltATTLIST taf s CDATA REQUIREDgt
Exemple xmlExemple xml
ltxml version=10 encoding=UTF-8gtltdatagt ltoptionsgtltformat v=xml gt ltlang v=en gt ltmode v=latest gt
ltmsg_metaf v= gt ltmsg_synop v=AAXX 09004 08495 11459
30714 10147 20136 30151 40159 58005 60001 70511 83500 92350 gt
ltsrc_metaf v=noaa gt ltsrc_synop v=nws_land gt lttype_metaf v=metar gt lttype_synop v=synop gt ltoptionsgt ltreportsgt ltsynop s=AAXX 09004 08495
11459 30714 10147 20136 30151 40159 58005 60001 70511 83500 92350gt
ltobsStationType s=AAXXgt ltstationType v=AAXX gt ltobsStationTypegt ltobsTime s=0900gt ltday v=09 gt lthour
v=00 gt ltminute v=00 gt ltobsTimegt
ltwindIndicator s=4gtltwindUnit v=KT gt ltwindIndicatorgt
ltstationId s=08495gt ltid v=08495 gt ltregion v=VI gt
ltprecipInd s=1gt ltprecipIndVal v=1 gt ltprecipIndgt ltwxInd s=1gt ltwxIndVal v=1 gt ltwxIndgt ltbaseLowestCloud s=4gt ltfrom v=300 u=M gtltto v=600 u=M gt ltbaseLowestCloudgt ltvisPrev s=59gt ltdistance v=9 u=KM gt ltvisPrevgt lttotalCloudCover s=3gt ltoktas v=3 gt lttotalCloudCovergt ltsfcWind s=0714gt ltwindgt ltdir v=70 gt ltspeed v=14 u=KT gt ltwindgt ltsfcWindgt lttemperature s=10147 20136gt ltairgt lttemp v=147 u=C gtltairgt
Exemple Interface Exemple Interface WEBWEB
WIS XMLBUFRWIS XMLBUFR
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
-
XML DTD 1 seul XML DTD 1 seul fichierfichier
ltxml version=10 encoding=iso-8859-1 standalone=yesgtltDOCTYPE listePersonnes [ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gtltELEMENT adresse (numero rue codePostal ville)gtltATTLIST adresse pays NMTOKENS IMPLIEDgtltELEMENT numero (PCDATA) gtltELEMENT rue (PCDATA) gtltELEMENT codePostal (PCDATA) gtltELEMENT ville (PCDATA) gt]gtltlistePersonnesgtltpersonnegtltstatut libelleacute=etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Lien DTD webLien DTD web
ltxml version=10 encoding=iso-8859-1 standalone=nogtltDOChTtYtPpE
lilsotceaPlehrossotnnleisstSeYPSeTrEsMo nnesdtd gt
ltlistePersonnesgtltpersonne statut =etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Deacuteclaration Deacuteclaration deacuteleacutement simpledeacuteleacutement simple
lt ELEMENT balise (deacutefinition) gt Le paramegravetre deacutefinition repreacutesente soit un type
de donneacutee preacutedeacutefini soit un eacuteleacutement de donneacutees composeacute constitueacute lui mecircme deacuteleacutements
Types preacutedeacutefinisbull ANY Leacuteleacutement peut contenir tout type de donneacutee
bull EMPTY Leacuteleacutement ne contient pas de donneacutees speacutecifiques
bull PCDATA Leacuteleacutement doit contenir une chaicircne de caractegravere
Deacuteclaration Deacuteclaration deacuteleacutement composeacutedeacuteleacutement composeacute
Deacutefinit une seacutequence ou un choix deacuteleacutementsSyntaxe speacutecifique avec opeacuterateurs de composition deacuteleacutements lt ELEMENT balise (composition) gt
Opeacuterateur Signification Exemple + Leacuteleacutement doit ecirctre preacutesent au minimum une fois A+ Leacuteleacutement peut ecirctre preacutesent plusieurs fois (ou aucune) A Leacuteleacutement peut ecirctre optionnellement preacutesent A | Leacuteleacutement A ou B peuvent ecirctre preacutesents (pas les deux) A|B Leacuteleacutement A doit ecirctre preacutesent et suivi de leacuteleacutement B AB
() Les parenthegraveses permettent de regrouper des eacuteleacutements afin de leur appliquer les autres opeacuterateurs
(AB)+
Deacuteclaration Deacuteclaration drsquoattributsdrsquoattributs
lt ATTLIST balise Attribut Type Mode gt balise speacutecifie leacuteleacutement auquel est attacheacute lattributAttribut est le nom de lattribut deacuteclareacuteType deacutefinit le type de donneacutee de lattribut choisi parmi CDATA
bull Chaicircnes de caractegraveres entre guillemets (aa) non analyseacutees Enumeacuteration
bull Liste de valeurs seacutepareacutees par | bull lt ATTLIST balise Attribut (Valeur1 | Valeur2 | ) gt
ID et IDREFbull Cleacute et reacutefeacuterence agrave cleacute
Mode preacutecise le caractegravere obligatoire ou non de lattribut REQUIRED IMPLIED ou FIXED
Exemple drsquoune DTDExemple drsquoune DTD
ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gt
1048710 une balise laquo listePersonnes raquo contient au moins 1 balise personne1048710 une balise laquo personne raquo contient une balise nom une eacuteventuelle balise prenom une balise adresse le tout dans lrsquoordre indiqueacute1048710 la balise laquo personne raquo contient un attribut laquo statut raquo obligatoire1048710 + signifie laquo au moins une raquo1048710 signifie laquo au moins zeacutero raquo1048710 signifie laquo 0 ou 1 raquo1048710 xxx | yyy signifie une de ces deux balises au choix1048710 PCDATA laquo parsed character data raquo1048710 REQUIRED = obligatoire IMPLIED = facultatif
XML ScheacutemaXML Scheacutema
Limite des DTD Description limiteacutee dans des documents
structureacutesbull Problegraveme de typage (PCDATA)
Exprimeacute dans un langage autre que XMLbull Pas les mecircmes parseurs
Objectif de XML Scheacutema Ameacutelioration du typage Ameacutelioration de la structure
bull Nombre borneacute drsquoeacuteleacutements inclus hellip
Remplace de plus en plus la DTD car exprimeacute en syntaxe XML et extensible
XML ScheacutemaXML Scheacutema
Comme une DTD le Scheacutema (xsd) permet de garantir la coheacuterence des donneacutees xml mais sa syntaxe est de style xml le niveau de preacutecision est beaucoup plus eacuteleveacute Dans le document xml
ltlistePersonnes xmlnsxsi=httpwwww3org2001XMLSchema-instance xsinoNamespaceSchemaLocation=listePersonnesxsdgt
XML ScheacutemaXML Scheacutema
Deacuteclaration des eacuteleacutements et attributs Nom Typage similaire agrave lobjet
Speacutecification de types simples Grande varieacuteteacute de types
Geacuteneacuteration de types complexes Seacutequence (Sequence) Choix (Choice) Tas (All)
Les types simplesLes types simples
string Confirm this is electric
byte -1 126
hexBinary 0FB7
boolean true false 1 0
time 132000000 132000000-0500
dateTime 1999-05-31T132000000-0500
duration P1Y2M3DT10H30M123S
float -INF -1E4 -0 0 1278E-2 12 INF
NaN
integer -126789 -1 0 1 126789
positiveInteger 1 126789
negativeInteger -126789 -1
nonNegativeInteger 0 1 126789
nonPositiveInteger -126789 -1 0
int -1 126789675
unsignedInt 0 1267896754
anyURI httpwwwexamplecom
Les types complexesLes types complexes
Deacutefinition dobjets complexes ltsequencegt collection ordonneacutee deacuteleacutements typeacutes ltallgt collection non ordonneacutee deacuteleacutements typeacutes ltchoicegt choix entre eacuteleacutements typeacutes
ExempleltxsdcomplexType name=AddresseFRgt ltxsdsequencegt ltxsdelement name=nom type=xsdstringgt ltxsdelement name=rue type=xsdstringgt ltxsdelement name=ville type=xsdstringgt ltxsdelement name=codep
type=xsddecimalgt ltxsdsequencegt ltxsdattribute name=pays type=xsdNMTOKEN fixed=FRgt ltxsdcomplexTypegt
Les PatternsLes Patterns
Contraintes sur type simple preacutedeacutefini Utilisation dexpression reacuteguliegraveres Similaires agrave celles de Perl
ExempleltxsdsimpleType name=NumItemgt ltxsdrestriction base=xsdstringgt
ltxsdpattern value=d3-[A-Z]2gt ltxsdrestrictiongt ltxsdsimpleTypegt
XML SchemaXML Schemaexemple (1)exemple (1)
ltxsdschema xmlnsxsd=httpwwww3org1999XMLSchemagt
ltxsdelement name=commande type=CommandeTypegt ltxsdelement name=commentaire type=xsdstringgt ltxsdcomplexType name=CommandeTypegt
ltxsdsequencegt ltxsdelement name=livrer type=Adressegt ltxsdelement name=facturer type=Adressegt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=produits type=ProduitTypegt
ltxsdsequencegt ltxsdattribute name=date_com type=xsddategt
ltxsdcomplexTypegt
XML Schema XML Schema exemple (2)exemple (2)
ltxsdcomplexType name=ProduitTypegt ltxsdsequencegt
ltxsdelement name=produit minOccurs=0 maxOccurs=unboundedgt ltxsdcomplexTypegt
ltxsdsequencegt ltxsdelement name=nom_prod type=xsdstringgt ltxsdelement name=quantitegt ltxsdsimpleTypegt ltxsdrestriction
base=xsdpositiveIntegergt ltxsdmaxExclusive value=100gt ltxsdrestrictiongt ltxsdsimpleTypegt ltxsdelementgt ltxsdelement name=prix type=xsddecimalgt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=date_livraison type=xsddate
minOccurs=0gt ltxsdsequencegt ltxsdattribute name=num_prod type=xsdpositiveInteger
use=requiredgt ltxsdcomplexTypegt
ltxsdelementgt ltxsdsequencegt ltxsdcomplexTypegt ltxsdschemagt
Feuille de styleFeuille de style
Feuille de styleFeuille de style
La repreacutesentation de cette lettre en XML ne comporte aucune indication sur sa mise en page Les aspects graphiques ou typographiques sont
absents du source XML Ces aspects seront deacutefinis par lrsquointermeacutediaire
drsquoune feuille de styleUne feuille de style est un ensemble de regravegles pour speacutecifier la reacutealisation concregravete drsquoun document sur un meacutedia particulierOn ajoute dans le deacutebut du fichier xml un lien vers la feuille de style fichier xsl ltxml-stylesheet type=textxsllaquo
href=transformateurxslgt Ce fichier peut ecirctre local ou acceacutedeacute via une URL
Conception de Conception de DTDScheacutemaDTDScheacutema
Possible agrave partir drsquoune modeacutelisation ULM
Quelques outils de Quelques outils de travailtravail
Editeur Outil Support
Tibco Turbo XML DTD XSLScheacutema
Altova XMLSpy DTD Scheacutema XSL Xquery
SyncRO Ltd Oxygen DTD Scheacutema XSL Xquery
Data Junction XML Junction Scheacutema
Insight Soft XMLMate DTD ScheacutemaXSL XPath
XML Mind XMLMind Editor DTD ScheacutemaXSL XPath
Exemple DTDExemple DTD
Convertisseur TAC vers XML (metaf2xml)
ltENTITY cloudType AC|ACC|ACSL|AS|CB|CBMAM|CC|CCSL|CI|CS|CU|CF|CUFRA|NS|SAC|SC|SCSL|ST|SF|STFRA|TCUgt
ltENTITY colourCodes BLUplus|BLU|WHT|GRN|YLO|YLO1|YLO2|AMB|RED|FCSTCANCELgtltENTITY cloudCover FEW|SCT|BKN|OVCgtltENTITY cloudFamily 0|1|2|3|4|5|6|7|8|9gtltENTITY phenomDescr isFrequent|isOccasional|isIntermittent|isContinuous|isThick|
isPrettyThick|isVeryThick|isThin|isPrettyThin|isVeryThin|isFeeble|isPrettyFeeble|isVeryFeeble|isLight|isPrettyLight|isVeryLight|isModerate|isLow|isLower|isIsolated|isConvective|isDissipated|inPastHour|baseBelowStation|isAloft|isAround|isFreezing|isPatchygt
ltENTITY unitRadiation kJmm|JcmcmgtltENTITY unitSpeed KT|MPS|KMHgtltENTITY period 1d|24h|1h|ngtltENTITY compassDir N|NNE|NE|ENE|E|ESE|SE|SSE|S|SSW|SW|WSW|W|WNW|NW|NNWgt
Exemple DTDExemple DTD
ltELEMENT taf (ERROR WARNING obsStation issueTime fcstPeriod reportModifier fcstNotAvbl sfcWind (CAVOK | (visPrev weatherList cloudList visVert)) (turbulence | icing | windShearLvl | QNH) trendList (tempAt | tempMaxAt | tempMinAt | correctedAt |
amendedAt | limMetwatch | autoMetwatch | amendment) tafRemarkList)gtltATTLIST taf s CDATA REQUIREDgt
Exemple xmlExemple xml
ltxml version=10 encoding=UTF-8gtltdatagt ltoptionsgtltformat v=xml gt ltlang v=en gt ltmode v=latest gt
ltmsg_metaf v= gt ltmsg_synop v=AAXX 09004 08495 11459
30714 10147 20136 30151 40159 58005 60001 70511 83500 92350 gt
ltsrc_metaf v=noaa gt ltsrc_synop v=nws_land gt lttype_metaf v=metar gt lttype_synop v=synop gt ltoptionsgt ltreportsgt ltsynop s=AAXX 09004 08495
11459 30714 10147 20136 30151 40159 58005 60001 70511 83500 92350gt
ltobsStationType s=AAXXgt ltstationType v=AAXX gt ltobsStationTypegt ltobsTime s=0900gt ltday v=09 gt lthour
v=00 gt ltminute v=00 gt ltobsTimegt
ltwindIndicator s=4gtltwindUnit v=KT gt ltwindIndicatorgt
ltstationId s=08495gt ltid v=08495 gt ltregion v=VI gt
ltprecipInd s=1gt ltprecipIndVal v=1 gt ltprecipIndgt ltwxInd s=1gt ltwxIndVal v=1 gt ltwxIndgt ltbaseLowestCloud s=4gt ltfrom v=300 u=M gtltto v=600 u=M gt ltbaseLowestCloudgt ltvisPrev s=59gt ltdistance v=9 u=KM gt ltvisPrevgt lttotalCloudCover s=3gt ltoktas v=3 gt lttotalCloudCovergt ltsfcWind s=0714gt ltwindgt ltdir v=70 gt ltspeed v=14 u=KT gt ltwindgt ltsfcWindgt lttemperature s=10147 20136gt ltairgt lttemp v=147 u=C gtltairgt
Exemple Interface Exemple Interface WEBWEB
WIS XMLBUFRWIS XMLBUFR
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
-
Lien DTD webLien DTD web
ltxml version=10 encoding=iso-8859-1 standalone=nogtltDOChTtYtPpE
lilsotceaPlehrossotnnleisstSeYPSeTrEsMo nnesdtd gt
ltlistePersonnesgtltpersonne statut =etudiant gtltnomgtDupontltnomgtltprenomgt12342ltprenomgtltadresse pays=Francegtltnumerogt10ltnumerogtltruegtrue des AlouettesltruegtltcodePostalgtLe GuichetltcodePostalgtltvillegtOrsayltvillegtltadressegtltpersonnegtltlistePersonnesgt
Deacuteclaration Deacuteclaration deacuteleacutement simpledeacuteleacutement simple
lt ELEMENT balise (deacutefinition) gt Le paramegravetre deacutefinition repreacutesente soit un type
de donneacutee preacutedeacutefini soit un eacuteleacutement de donneacutees composeacute constitueacute lui mecircme deacuteleacutements
Types preacutedeacutefinisbull ANY Leacuteleacutement peut contenir tout type de donneacutee
bull EMPTY Leacuteleacutement ne contient pas de donneacutees speacutecifiques
bull PCDATA Leacuteleacutement doit contenir une chaicircne de caractegravere
Deacuteclaration Deacuteclaration deacuteleacutement composeacutedeacuteleacutement composeacute
Deacutefinit une seacutequence ou un choix deacuteleacutementsSyntaxe speacutecifique avec opeacuterateurs de composition deacuteleacutements lt ELEMENT balise (composition) gt
Opeacuterateur Signification Exemple + Leacuteleacutement doit ecirctre preacutesent au minimum une fois A+ Leacuteleacutement peut ecirctre preacutesent plusieurs fois (ou aucune) A Leacuteleacutement peut ecirctre optionnellement preacutesent A | Leacuteleacutement A ou B peuvent ecirctre preacutesents (pas les deux) A|B Leacuteleacutement A doit ecirctre preacutesent et suivi de leacuteleacutement B AB
() Les parenthegraveses permettent de regrouper des eacuteleacutements afin de leur appliquer les autres opeacuterateurs
(AB)+
Deacuteclaration Deacuteclaration drsquoattributsdrsquoattributs
lt ATTLIST balise Attribut Type Mode gt balise speacutecifie leacuteleacutement auquel est attacheacute lattributAttribut est le nom de lattribut deacuteclareacuteType deacutefinit le type de donneacutee de lattribut choisi parmi CDATA
bull Chaicircnes de caractegraveres entre guillemets (aa) non analyseacutees Enumeacuteration
bull Liste de valeurs seacutepareacutees par | bull lt ATTLIST balise Attribut (Valeur1 | Valeur2 | ) gt
ID et IDREFbull Cleacute et reacutefeacuterence agrave cleacute
Mode preacutecise le caractegravere obligatoire ou non de lattribut REQUIRED IMPLIED ou FIXED
Exemple drsquoune DTDExemple drsquoune DTD
ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gt
1048710 une balise laquo listePersonnes raquo contient au moins 1 balise personne1048710 une balise laquo personne raquo contient une balise nom une eacuteventuelle balise prenom une balise adresse le tout dans lrsquoordre indiqueacute1048710 la balise laquo personne raquo contient un attribut laquo statut raquo obligatoire1048710 + signifie laquo au moins une raquo1048710 signifie laquo au moins zeacutero raquo1048710 signifie laquo 0 ou 1 raquo1048710 xxx | yyy signifie une de ces deux balises au choix1048710 PCDATA laquo parsed character data raquo1048710 REQUIRED = obligatoire IMPLIED = facultatif
XML ScheacutemaXML Scheacutema
Limite des DTD Description limiteacutee dans des documents
structureacutesbull Problegraveme de typage (PCDATA)
Exprimeacute dans un langage autre que XMLbull Pas les mecircmes parseurs
Objectif de XML Scheacutema Ameacutelioration du typage Ameacutelioration de la structure
bull Nombre borneacute drsquoeacuteleacutements inclus hellip
Remplace de plus en plus la DTD car exprimeacute en syntaxe XML et extensible
XML ScheacutemaXML Scheacutema
Comme une DTD le Scheacutema (xsd) permet de garantir la coheacuterence des donneacutees xml mais sa syntaxe est de style xml le niveau de preacutecision est beaucoup plus eacuteleveacute Dans le document xml
ltlistePersonnes xmlnsxsi=httpwwww3org2001XMLSchema-instance xsinoNamespaceSchemaLocation=listePersonnesxsdgt
XML ScheacutemaXML Scheacutema
Deacuteclaration des eacuteleacutements et attributs Nom Typage similaire agrave lobjet
Speacutecification de types simples Grande varieacuteteacute de types
Geacuteneacuteration de types complexes Seacutequence (Sequence) Choix (Choice) Tas (All)
Les types simplesLes types simples
string Confirm this is electric
byte -1 126
hexBinary 0FB7
boolean true false 1 0
time 132000000 132000000-0500
dateTime 1999-05-31T132000000-0500
duration P1Y2M3DT10H30M123S
float -INF -1E4 -0 0 1278E-2 12 INF
NaN
integer -126789 -1 0 1 126789
positiveInteger 1 126789
negativeInteger -126789 -1
nonNegativeInteger 0 1 126789
nonPositiveInteger -126789 -1 0
int -1 126789675
unsignedInt 0 1267896754
anyURI httpwwwexamplecom
Les types complexesLes types complexes
Deacutefinition dobjets complexes ltsequencegt collection ordonneacutee deacuteleacutements typeacutes ltallgt collection non ordonneacutee deacuteleacutements typeacutes ltchoicegt choix entre eacuteleacutements typeacutes
ExempleltxsdcomplexType name=AddresseFRgt ltxsdsequencegt ltxsdelement name=nom type=xsdstringgt ltxsdelement name=rue type=xsdstringgt ltxsdelement name=ville type=xsdstringgt ltxsdelement name=codep
type=xsddecimalgt ltxsdsequencegt ltxsdattribute name=pays type=xsdNMTOKEN fixed=FRgt ltxsdcomplexTypegt
Les PatternsLes Patterns
Contraintes sur type simple preacutedeacutefini Utilisation dexpression reacuteguliegraveres Similaires agrave celles de Perl
ExempleltxsdsimpleType name=NumItemgt ltxsdrestriction base=xsdstringgt
ltxsdpattern value=d3-[A-Z]2gt ltxsdrestrictiongt ltxsdsimpleTypegt
XML SchemaXML Schemaexemple (1)exemple (1)
ltxsdschema xmlnsxsd=httpwwww3org1999XMLSchemagt
ltxsdelement name=commande type=CommandeTypegt ltxsdelement name=commentaire type=xsdstringgt ltxsdcomplexType name=CommandeTypegt
ltxsdsequencegt ltxsdelement name=livrer type=Adressegt ltxsdelement name=facturer type=Adressegt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=produits type=ProduitTypegt
ltxsdsequencegt ltxsdattribute name=date_com type=xsddategt
ltxsdcomplexTypegt
XML Schema XML Schema exemple (2)exemple (2)
ltxsdcomplexType name=ProduitTypegt ltxsdsequencegt
ltxsdelement name=produit minOccurs=0 maxOccurs=unboundedgt ltxsdcomplexTypegt
ltxsdsequencegt ltxsdelement name=nom_prod type=xsdstringgt ltxsdelement name=quantitegt ltxsdsimpleTypegt ltxsdrestriction
base=xsdpositiveIntegergt ltxsdmaxExclusive value=100gt ltxsdrestrictiongt ltxsdsimpleTypegt ltxsdelementgt ltxsdelement name=prix type=xsddecimalgt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=date_livraison type=xsddate
minOccurs=0gt ltxsdsequencegt ltxsdattribute name=num_prod type=xsdpositiveInteger
use=requiredgt ltxsdcomplexTypegt
ltxsdelementgt ltxsdsequencegt ltxsdcomplexTypegt ltxsdschemagt
Feuille de styleFeuille de style
Feuille de styleFeuille de style
La repreacutesentation de cette lettre en XML ne comporte aucune indication sur sa mise en page Les aspects graphiques ou typographiques sont
absents du source XML Ces aspects seront deacutefinis par lrsquointermeacutediaire
drsquoune feuille de styleUne feuille de style est un ensemble de regravegles pour speacutecifier la reacutealisation concregravete drsquoun document sur un meacutedia particulierOn ajoute dans le deacutebut du fichier xml un lien vers la feuille de style fichier xsl ltxml-stylesheet type=textxsllaquo
href=transformateurxslgt Ce fichier peut ecirctre local ou acceacutedeacute via une URL
Conception de Conception de DTDScheacutemaDTDScheacutema
Possible agrave partir drsquoune modeacutelisation ULM
Quelques outils de Quelques outils de travailtravail
Editeur Outil Support
Tibco Turbo XML DTD XSLScheacutema
Altova XMLSpy DTD Scheacutema XSL Xquery
SyncRO Ltd Oxygen DTD Scheacutema XSL Xquery
Data Junction XML Junction Scheacutema
Insight Soft XMLMate DTD ScheacutemaXSL XPath
XML Mind XMLMind Editor DTD ScheacutemaXSL XPath
Exemple DTDExemple DTD
Convertisseur TAC vers XML (metaf2xml)
ltENTITY cloudType AC|ACC|ACSL|AS|CB|CBMAM|CC|CCSL|CI|CS|CU|CF|CUFRA|NS|SAC|SC|SCSL|ST|SF|STFRA|TCUgt
ltENTITY colourCodes BLUplus|BLU|WHT|GRN|YLO|YLO1|YLO2|AMB|RED|FCSTCANCELgtltENTITY cloudCover FEW|SCT|BKN|OVCgtltENTITY cloudFamily 0|1|2|3|4|5|6|7|8|9gtltENTITY phenomDescr isFrequent|isOccasional|isIntermittent|isContinuous|isThick|
isPrettyThick|isVeryThick|isThin|isPrettyThin|isVeryThin|isFeeble|isPrettyFeeble|isVeryFeeble|isLight|isPrettyLight|isVeryLight|isModerate|isLow|isLower|isIsolated|isConvective|isDissipated|inPastHour|baseBelowStation|isAloft|isAround|isFreezing|isPatchygt
ltENTITY unitRadiation kJmm|JcmcmgtltENTITY unitSpeed KT|MPS|KMHgtltENTITY period 1d|24h|1h|ngtltENTITY compassDir N|NNE|NE|ENE|E|ESE|SE|SSE|S|SSW|SW|WSW|W|WNW|NW|NNWgt
Exemple DTDExemple DTD
ltELEMENT taf (ERROR WARNING obsStation issueTime fcstPeriod reportModifier fcstNotAvbl sfcWind (CAVOK | (visPrev weatherList cloudList visVert)) (turbulence | icing | windShearLvl | QNH) trendList (tempAt | tempMaxAt | tempMinAt | correctedAt |
amendedAt | limMetwatch | autoMetwatch | amendment) tafRemarkList)gtltATTLIST taf s CDATA REQUIREDgt
Exemple xmlExemple xml
ltxml version=10 encoding=UTF-8gtltdatagt ltoptionsgtltformat v=xml gt ltlang v=en gt ltmode v=latest gt
ltmsg_metaf v= gt ltmsg_synop v=AAXX 09004 08495 11459
30714 10147 20136 30151 40159 58005 60001 70511 83500 92350 gt
ltsrc_metaf v=noaa gt ltsrc_synop v=nws_land gt lttype_metaf v=metar gt lttype_synop v=synop gt ltoptionsgt ltreportsgt ltsynop s=AAXX 09004 08495
11459 30714 10147 20136 30151 40159 58005 60001 70511 83500 92350gt
ltobsStationType s=AAXXgt ltstationType v=AAXX gt ltobsStationTypegt ltobsTime s=0900gt ltday v=09 gt lthour
v=00 gt ltminute v=00 gt ltobsTimegt
ltwindIndicator s=4gtltwindUnit v=KT gt ltwindIndicatorgt
ltstationId s=08495gt ltid v=08495 gt ltregion v=VI gt
ltprecipInd s=1gt ltprecipIndVal v=1 gt ltprecipIndgt ltwxInd s=1gt ltwxIndVal v=1 gt ltwxIndgt ltbaseLowestCloud s=4gt ltfrom v=300 u=M gtltto v=600 u=M gt ltbaseLowestCloudgt ltvisPrev s=59gt ltdistance v=9 u=KM gt ltvisPrevgt lttotalCloudCover s=3gt ltoktas v=3 gt lttotalCloudCovergt ltsfcWind s=0714gt ltwindgt ltdir v=70 gt ltspeed v=14 u=KT gt ltwindgt ltsfcWindgt lttemperature s=10147 20136gt ltairgt lttemp v=147 u=C gtltairgt
Exemple Interface Exemple Interface WEBWEB
WIS XMLBUFRWIS XMLBUFR
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
-
Deacuteclaration Deacuteclaration deacuteleacutement simpledeacuteleacutement simple
lt ELEMENT balise (deacutefinition) gt Le paramegravetre deacutefinition repreacutesente soit un type
de donneacutee preacutedeacutefini soit un eacuteleacutement de donneacutees composeacute constitueacute lui mecircme deacuteleacutements
Types preacutedeacutefinisbull ANY Leacuteleacutement peut contenir tout type de donneacutee
bull EMPTY Leacuteleacutement ne contient pas de donneacutees speacutecifiques
bull PCDATA Leacuteleacutement doit contenir une chaicircne de caractegravere
Deacuteclaration Deacuteclaration deacuteleacutement composeacutedeacuteleacutement composeacute
Deacutefinit une seacutequence ou un choix deacuteleacutementsSyntaxe speacutecifique avec opeacuterateurs de composition deacuteleacutements lt ELEMENT balise (composition) gt
Opeacuterateur Signification Exemple + Leacuteleacutement doit ecirctre preacutesent au minimum une fois A+ Leacuteleacutement peut ecirctre preacutesent plusieurs fois (ou aucune) A Leacuteleacutement peut ecirctre optionnellement preacutesent A | Leacuteleacutement A ou B peuvent ecirctre preacutesents (pas les deux) A|B Leacuteleacutement A doit ecirctre preacutesent et suivi de leacuteleacutement B AB
() Les parenthegraveses permettent de regrouper des eacuteleacutements afin de leur appliquer les autres opeacuterateurs
(AB)+
Deacuteclaration Deacuteclaration drsquoattributsdrsquoattributs
lt ATTLIST balise Attribut Type Mode gt balise speacutecifie leacuteleacutement auquel est attacheacute lattributAttribut est le nom de lattribut deacuteclareacuteType deacutefinit le type de donneacutee de lattribut choisi parmi CDATA
bull Chaicircnes de caractegraveres entre guillemets (aa) non analyseacutees Enumeacuteration
bull Liste de valeurs seacutepareacutees par | bull lt ATTLIST balise Attribut (Valeur1 | Valeur2 | ) gt
ID et IDREFbull Cleacute et reacutefeacuterence agrave cleacute
Mode preacutecise le caractegravere obligatoire ou non de lattribut REQUIRED IMPLIED ou FIXED
Exemple drsquoune DTDExemple drsquoune DTD
ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gt
1048710 une balise laquo listePersonnes raquo contient au moins 1 balise personne1048710 une balise laquo personne raquo contient une balise nom une eacuteventuelle balise prenom une balise adresse le tout dans lrsquoordre indiqueacute1048710 la balise laquo personne raquo contient un attribut laquo statut raquo obligatoire1048710 + signifie laquo au moins une raquo1048710 signifie laquo au moins zeacutero raquo1048710 signifie laquo 0 ou 1 raquo1048710 xxx | yyy signifie une de ces deux balises au choix1048710 PCDATA laquo parsed character data raquo1048710 REQUIRED = obligatoire IMPLIED = facultatif
XML ScheacutemaXML Scheacutema
Limite des DTD Description limiteacutee dans des documents
structureacutesbull Problegraveme de typage (PCDATA)
Exprimeacute dans un langage autre que XMLbull Pas les mecircmes parseurs
Objectif de XML Scheacutema Ameacutelioration du typage Ameacutelioration de la structure
bull Nombre borneacute drsquoeacuteleacutements inclus hellip
Remplace de plus en plus la DTD car exprimeacute en syntaxe XML et extensible
XML ScheacutemaXML Scheacutema
Comme une DTD le Scheacutema (xsd) permet de garantir la coheacuterence des donneacutees xml mais sa syntaxe est de style xml le niveau de preacutecision est beaucoup plus eacuteleveacute Dans le document xml
ltlistePersonnes xmlnsxsi=httpwwww3org2001XMLSchema-instance xsinoNamespaceSchemaLocation=listePersonnesxsdgt
XML ScheacutemaXML Scheacutema
Deacuteclaration des eacuteleacutements et attributs Nom Typage similaire agrave lobjet
Speacutecification de types simples Grande varieacuteteacute de types
Geacuteneacuteration de types complexes Seacutequence (Sequence) Choix (Choice) Tas (All)
Les types simplesLes types simples
string Confirm this is electric
byte -1 126
hexBinary 0FB7
boolean true false 1 0
time 132000000 132000000-0500
dateTime 1999-05-31T132000000-0500
duration P1Y2M3DT10H30M123S
float -INF -1E4 -0 0 1278E-2 12 INF
NaN
integer -126789 -1 0 1 126789
positiveInteger 1 126789
negativeInteger -126789 -1
nonNegativeInteger 0 1 126789
nonPositiveInteger -126789 -1 0
int -1 126789675
unsignedInt 0 1267896754
anyURI httpwwwexamplecom
Les types complexesLes types complexes
Deacutefinition dobjets complexes ltsequencegt collection ordonneacutee deacuteleacutements typeacutes ltallgt collection non ordonneacutee deacuteleacutements typeacutes ltchoicegt choix entre eacuteleacutements typeacutes
ExempleltxsdcomplexType name=AddresseFRgt ltxsdsequencegt ltxsdelement name=nom type=xsdstringgt ltxsdelement name=rue type=xsdstringgt ltxsdelement name=ville type=xsdstringgt ltxsdelement name=codep
type=xsddecimalgt ltxsdsequencegt ltxsdattribute name=pays type=xsdNMTOKEN fixed=FRgt ltxsdcomplexTypegt
Les PatternsLes Patterns
Contraintes sur type simple preacutedeacutefini Utilisation dexpression reacuteguliegraveres Similaires agrave celles de Perl
ExempleltxsdsimpleType name=NumItemgt ltxsdrestriction base=xsdstringgt
ltxsdpattern value=d3-[A-Z]2gt ltxsdrestrictiongt ltxsdsimpleTypegt
XML SchemaXML Schemaexemple (1)exemple (1)
ltxsdschema xmlnsxsd=httpwwww3org1999XMLSchemagt
ltxsdelement name=commande type=CommandeTypegt ltxsdelement name=commentaire type=xsdstringgt ltxsdcomplexType name=CommandeTypegt
ltxsdsequencegt ltxsdelement name=livrer type=Adressegt ltxsdelement name=facturer type=Adressegt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=produits type=ProduitTypegt
ltxsdsequencegt ltxsdattribute name=date_com type=xsddategt
ltxsdcomplexTypegt
XML Schema XML Schema exemple (2)exemple (2)
ltxsdcomplexType name=ProduitTypegt ltxsdsequencegt
ltxsdelement name=produit minOccurs=0 maxOccurs=unboundedgt ltxsdcomplexTypegt
ltxsdsequencegt ltxsdelement name=nom_prod type=xsdstringgt ltxsdelement name=quantitegt ltxsdsimpleTypegt ltxsdrestriction
base=xsdpositiveIntegergt ltxsdmaxExclusive value=100gt ltxsdrestrictiongt ltxsdsimpleTypegt ltxsdelementgt ltxsdelement name=prix type=xsddecimalgt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=date_livraison type=xsddate
minOccurs=0gt ltxsdsequencegt ltxsdattribute name=num_prod type=xsdpositiveInteger
use=requiredgt ltxsdcomplexTypegt
ltxsdelementgt ltxsdsequencegt ltxsdcomplexTypegt ltxsdschemagt
Feuille de styleFeuille de style
Feuille de styleFeuille de style
La repreacutesentation de cette lettre en XML ne comporte aucune indication sur sa mise en page Les aspects graphiques ou typographiques sont
absents du source XML Ces aspects seront deacutefinis par lrsquointermeacutediaire
drsquoune feuille de styleUne feuille de style est un ensemble de regravegles pour speacutecifier la reacutealisation concregravete drsquoun document sur un meacutedia particulierOn ajoute dans le deacutebut du fichier xml un lien vers la feuille de style fichier xsl ltxml-stylesheet type=textxsllaquo
href=transformateurxslgt Ce fichier peut ecirctre local ou acceacutedeacute via une URL
Conception de Conception de DTDScheacutemaDTDScheacutema
Possible agrave partir drsquoune modeacutelisation ULM
Quelques outils de Quelques outils de travailtravail
Editeur Outil Support
Tibco Turbo XML DTD XSLScheacutema
Altova XMLSpy DTD Scheacutema XSL Xquery
SyncRO Ltd Oxygen DTD Scheacutema XSL Xquery
Data Junction XML Junction Scheacutema
Insight Soft XMLMate DTD ScheacutemaXSL XPath
XML Mind XMLMind Editor DTD ScheacutemaXSL XPath
Exemple DTDExemple DTD
Convertisseur TAC vers XML (metaf2xml)
ltENTITY cloudType AC|ACC|ACSL|AS|CB|CBMAM|CC|CCSL|CI|CS|CU|CF|CUFRA|NS|SAC|SC|SCSL|ST|SF|STFRA|TCUgt
ltENTITY colourCodes BLUplus|BLU|WHT|GRN|YLO|YLO1|YLO2|AMB|RED|FCSTCANCELgtltENTITY cloudCover FEW|SCT|BKN|OVCgtltENTITY cloudFamily 0|1|2|3|4|5|6|7|8|9gtltENTITY phenomDescr isFrequent|isOccasional|isIntermittent|isContinuous|isThick|
isPrettyThick|isVeryThick|isThin|isPrettyThin|isVeryThin|isFeeble|isPrettyFeeble|isVeryFeeble|isLight|isPrettyLight|isVeryLight|isModerate|isLow|isLower|isIsolated|isConvective|isDissipated|inPastHour|baseBelowStation|isAloft|isAround|isFreezing|isPatchygt
ltENTITY unitRadiation kJmm|JcmcmgtltENTITY unitSpeed KT|MPS|KMHgtltENTITY period 1d|24h|1h|ngtltENTITY compassDir N|NNE|NE|ENE|E|ESE|SE|SSE|S|SSW|SW|WSW|W|WNW|NW|NNWgt
Exemple DTDExemple DTD
ltELEMENT taf (ERROR WARNING obsStation issueTime fcstPeriod reportModifier fcstNotAvbl sfcWind (CAVOK | (visPrev weatherList cloudList visVert)) (turbulence | icing | windShearLvl | QNH) trendList (tempAt | tempMaxAt | tempMinAt | correctedAt |
amendedAt | limMetwatch | autoMetwatch | amendment) tafRemarkList)gtltATTLIST taf s CDATA REQUIREDgt
Exemple xmlExemple xml
ltxml version=10 encoding=UTF-8gtltdatagt ltoptionsgtltformat v=xml gt ltlang v=en gt ltmode v=latest gt
ltmsg_metaf v= gt ltmsg_synop v=AAXX 09004 08495 11459
30714 10147 20136 30151 40159 58005 60001 70511 83500 92350 gt
ltsrc_metaf v=noaa gt ltsrc_synop v=nws_land gt lttype_metaf v=metar gt lttype_synop v=synop gt ltoptionsgt ltreportsgt ltsynop s=AAXX 09004 08495
11459 30714 10147 20136 30151 40159 58005 60001 70511 83500 92350gt
ltobsStationType s=AAXXgt ltstationType v=AAXX gt ltobsStationTypegt ltobsTime s=0900gt ltday v=09 gt lthour
v=00 gt ltminute v=00 gt ltobsTimegt
ltwindIndicator s=4gtltwindUnit v=KT gt ltwindIndicatorgt
ltstationId s=08495gt ltid v=08495 gt ltregion v=VI gt
ltprecipInd s=1gt ltprecipIndVal v=1 gt ltprecipIndgt ltwxInd s=1gt ltwxIndVal v=1 gt ltwxIndgt ltbaseLowestCloud s=4gt ltfrom v=300 u=M gtltto v=600 u=M gt ltbaseLowestCloudgt ltvisPrev s=59gt ltdistance v=9 u=KM gt ltvisPrevgt lttotalCloudCover s=3gt ltoktas v=3 gt lttotalCloudCovergt ltsfcWind s=0714gt ltwindgt ltdir v=70 gt ltspeed v=14 u=KT gt ltwindgt ltsfcWindgt lttemperature s=10147 20136gt ltairgt lttemp v=147 u=C gtltairgt
Exemple Interface Exemple Interface WEBWEB
WIS XMLBUFRWIS XMLBUFR
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
-
Deacuteclaration Deacuteclaration deacuteleacutement composeacutedeacuteleacutement composeacute
Deacutefinit une seacutequence ou un choix deacuteleacutementsSyntaxe speacutecifique avec opeacuterateurs de composition deacuteleacutements lt ELEMENT balise (composition) gt
Opeacuterateur Signification Exemple + Leacuteleacutement doit ecirctre preacutesent au minimum une fois A+ Leacuteleacutement peut ecirctre preacutesent plusieurs fois (ou aucune) A Leacuteleacutement peut ecirctre optionnellement preacutesent A | Leacuteleacutement A ou B peuvent ecirctre preacutesents (pas les deux) A|B Leacuteleacutement A doit ecirctre preacutesent et suivi de leacuteleacutement B AB
() Les parenthegraveses permettent de regrouper des eacuteleacutements afin de leur appliquer les autres opeacuterateurs
(AB)+
Deacuteclaration Deacuteclaration drsquoattributsdrsquoattributs
lt ATTLIST balise Attribut Type Mode gt balise speacutecifie leacuteleacutement auquel est attacheacute lattributAttribut est le nom de lattribut deacuteclareacuteType deacutefinit le type de donneacutee de lattribut choisi parmi CDATA
bull Chaicircnes de caractegraveres entre guillemets (aa) non analyseacutees Enumeacuteration
bull Liste de valeurs seacutepareacutees par | bull lt ATTLIST balise Attribut (Valeur1 | Valeur2 | ) gt
ID et IDREFbull Cleacute et reacutefeacuterence agrave cleacute
Mode preacutecise le caractegravere obligatoire ou non de lattribut REQUIRED IMPLIED ou FIXED
Exemple drsquoune DTDExemple drsquoune DTD
ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gt
1048710 une balise laquo listePersonnes raquo contient au moins 1 balise personne1048710 une balise laquo personne raquo contient une balise nom une eacuteventuelle balise prenom une balise adresse le tout dans lrsquoordre indiqueacute1048710 la balise laquo personne raquo contient un attribut laquo statut raquo obligatoire1048710 + signifie laquo au moins une raquo1048710 signifie laquo au moins zeacutero raquo1048710 signifie laquo 0 ou 1 raquo1048710 xxx | yyy signifie une de ces deux balises au choix1048710 PCDATA laquo parsed character data raquo1048710 REQUIRED = obligatoire IMPLIED = facultatif
XML ScheacutemaXML Scheacutema
Limite des DTD Description limiteacutee dans des documents
structureacutesbull Problegraveme de typage (PCDATA)
Exprimeacute dans un langage autre que XMLbull Pas les mecircmes parseurs
Objectif de XML Scheacutema Ameacutelioration du typage Ameacutelioration de la structure
bull Nombre borneacute drsquoeacuteleacutements inclus hellip
Remplace de plus en plus la DTD car exprimeacute en syntaxe XML et extensible
XML ScheacutemaXML Scheacutema
Comme une DTD le Scheacutema (xsd) permet de garantir la coheacuterence des donneacutees xml mais sa syntaxe est de style xml le niveau de preacutecision est beaucoup plus eacuteleveacute Dans le document xml
ltlistePersonnes xmlnsxsi=httpwwww3org2001XMLSchema-instance xsinoNamespaceSchemaLocation=listePersonnesxsdgt
XML ScheacutemaXML Scheacutema
Deacuteclaration des eacuteleacutements et attributs Nom Typage similaire agrave lobjet
Speacutecification de types simples Grande varieacuteteacute de types
Geacuteneacuteration de types complexes Seacutequence (Sequence) Choix (Choice) Tas (All)
Les types simplesLes types simples
string Confirm this is electric
byte -1 126
hexBinary 0FB7
boolean true false 1 0
time 132000000 132000000-0500
dateTime 1999-05-31T132000000-0500
duration P1Y2M3DT10H30M123S
float -INF -1E4 -0 0 1278E-2 12 INF
NaN
integer -126789 -1 0 1 126789
positiveInteger 1 126789
negativeInteger -126789 -1
nonNegativeInteger 0 1 126789
nonPositiveInteger -126789 -1 0
int -1 126789675
unsignedInt 0 1267896754
anyURI httpwwwexamplecom
Les types complexesLes types complexes
Deacutefinition dobjets complexes ltsequencegt collection ordonneacutee deacuteleacutements typeacutes ltallgt collection non ordonneacutee deacuteleacutements typeacutes ltchoicegt choix entre eacuteleacutements typeacutes
ExempleltxsdcomplexType name=AddresseFRgt ltxsdsequencegt ltxsdelement name=nom type=xsdstringgt ltxsdelement name=rue type=xsdstringgt ltxsdelement name=ville type=xsdstringgt ltxsdelement name=codep
type=xsddecimalgt ltxsdsequencegt ltxsdattribute name=pays type=xsdNMTOKEN fixed=FRgt ltxsdcomplexTypegt
Les PatternsLes Patterns
Contraintes sur type simple preacutedeacutefini Utilisation dexpression reacuteguliegraveres Similaires agrave celles de Perl
ExempleltxsdsimpleType name=NumItemgt ltxsdrestriction base=xsdstringgt
ltxsdpattern value=d3-[A-Z]2gt ltxsdrestrictiongt ltxsdsimpleTypegt
XML SchemaXML Schemaexemple (1)exemple (1)
ltxsdschema xmlnsxsd=httpwwww3org1999XMLSchemagt
ltxsdelement name=commande type=CommandeTypegt ltxsdelement name=commentaire type=xsdstringgt ltxsdcomplexType name=CommandeTypegt
ltxsdsequencegt ltxsdelement name=livrer type=Adressegt ltxsdelement name=facturer type=Adressegt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=produits type=ProduitTypegt
ltxsdsequencegt ltxsdattribute name=date_com type=xsddategt
ltxsdcomplexTypegt
XML Schema XML Schema exemple (2)exemple (2)
ltxsdcomplexType name=ProduitTypegt ltxsdsequencegt
ltxsdelement name=produit minOccurs=0 maxOccurs=unboundedgt ltxsdcomplexTypegt
ltxsdsequencegt ltxsdelement name=nom_prod type=xsdstringgt ltxsdelement name=quantitegt ltxsdsimpleTypegt ltxsdrestriction
base=xsdpositiveIntegergt ltxsdmaxExclusive value=100gt ltxsdrestrictiongt ltxsdsimpleTypegt ltxsdelementgt ltxsdelement name=prix type=xsddecimalgt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=date_livraison type=xsddate
minOccurs=0gt ltxsdsequencegt ltxsdattribute name=num_prod type=xsdpositiveInteger
use=requiredgt ltxsdcomplexTypegt
ltxsdelementgt ltxsdsequencegt ltxsdcomplexTypegt ltxsdschemagt
Feuille de styleFeuille de style
Feuille de styleFeuille de style
La repreacutesentation de cette lettre en XML ne comporte aucune indication sur sa mise en page Les aspects graphiques ou typographiques sont
absents du source XML Ces aspects seront deacutefinis par lrsquointermeacutediaire
drsquoune feuille de styleUne feuille de style est un ensemble de regravegles pour speacutecifier la reacutealisation concregravete drsquoun document sur un meacutedia particulierOn ajoute dans le deacutebut du fichier xml un lien vers la feuille de style fichier xsl ltxml-stylesheet type=textxsllaquo
href=transformateurxslgt Ce fichier peut ecirctre local ou acceacutedeacute via une URL
Conception de Conception de DTDScheacutemaDTDScheacutema
Possible agrave partir drsquoune modeacutelisation ULM
Quelques outils de Quelques outils de travailtravail
Editeur Outil Support
Tibco Turbo XML DTD XSLScheacutema
Altova XMLSpy DTD Scheacutema XSL Xquery
SyncRO Ltd Oxygen DTD Scheacutema XSL Xquery
Data Junction XML Junction Scheacutema
Insight Soft XMLMate DTD ScheacutemaXSL XPath
XML Mind XMLMind Editor DTD ScheacutemaXSL XPath
Exemple DTDExemple DTD
Convertisseur TAC vers XML (metaf2xml)
ltENTITY cloudType AC|ACC|ACSL|AS|CB|CBMAM|CC|CCSL|CI|CS|CU|CF|CUFRA|NS|SAC|SC|SCSL|ST|SF|STFRA|TCUgt
ltENTITY colourCodes BLUplus|BLU|WHT|GRN|YLO|YLO1|YLO2|AMB|RED|FCSTCANCELgtltENTITY cloudCover FEW|SCT|BKN|OVCgtltENTITY cloudFamily 0|1|2|3|4|5|6|7|8|9gtltENTITY phenomDescr isFrequent|isOccasional|isIntermittent|isContinuous|isThick|
isPrettyThick|isVeryThick|isThin|isPrettyThin|isVeryThin|isFeeble|isPrettyFeeble|isVeryFeeble|isLight|isPrettyLight|isVeryLight|isModerate|isLow|isLower|isIsolated|isConvective|isDissipated|inPastHour|baseBelowStation|isAloft|isAround|isFreezing|isPatchygt
ltENTITY unitRadiation kJmm|JcmcmgtltENTITY unitSpeed KT|MPS|KMHgtltENTITY period 1d|24h|1h|ngtltENTITY compassDir N|NNE|NE|ENE|E|ESE|SE|SSE|S|SSW|SW|WSW|W|WNW|NW|NNWgt
Exemple DTDExemple DTD
ltELEMENT taf (ERROR WARNING obsStation issueTime fcstPeriod reportModifier fcstNotAvbl sfcWind (CAVOK | (visPrev weatherList cloudList visVert)) (turbulence | icing | windShearLvl | QNH) trendList (tempAt | tempMaxAt | tempMinAt | correctedAt |
amendedAt | limMetwatch | autoMetwatch | amendment) tafRemarkList)gtltATTLIST taf s CDATA REQUIREDgt
Exemple xmlExemple xml
ltxml version=10 encoding=UTF-8gtltdatagt ltoptionsgtltformat v=xml gt ltlang v=en gt ltmode v=latest gt
ltmsg_metaf v= gt ltmsg_synop v=AAXX 09004 08495 11459
30714 10147 20136 30151 40159 58005 60001 70511 83500 92350 gt
ltsrc_metaf v=noaa gt ltsrc_synop v=nws_land gt lttype_metaf v=metar gt lttype_synop v=synop gt ltoptionsgt ltreportsgt ltsynop s=AAXX 09004 08495
11459 30714 10147 20136 30151 40159 58005 60001 70511 83500 92350gt
ltobsStationType s=AAXXgt ltstationType v=AAXX gt ltobsStationTypegt ltobsTime s=0900gt ltday v=09 gt lthour
v=00 gt ltminute v=00 gt ltobsTimegt
ltwindIndicator s=4gtltwindUnit v=KT gt ltwindIndicatorgt
ltstationId s=08495gt ltid v=08495 gt ltregion v=VI gt
ltprecipInd s=1gt ltprecipIndVal v=1 gt ltprecipIndgt ltwxInd s=1gt ltwxIndVal v=1 gt ltwxIndgt ltbaseLowestCloud s=4gt ltfrom v=300 u=M gtltto v=600 u=M gt ltbaseLowestCloudgt ltvisPrev s=59gt ltdistance v=9 u=KM gt ltvisPrevgt lttotalCloudCover s=3gt ltoktas v=3 gt lttotalCloudCovergt ltsfcWind s=0714gt ltwindgt ltdir v=70 gt ltspeed v=14 u=KT gt ltwindgt ltsfcWindgt lttemperature s=10147 20136gt ltairgt lttemp v=147 u=C gtltairgt
Exemple Interface Exemple Interface WEBWEB
WIS XMLBUFRWIS XMLBUFR
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
-
Deacuteclaration Deacuteclaration drsquoattributsdrsquoattributs
lt ATTLIST balise Attribut Type Mode gt balise speacutecifie leacuteleacutement auquel est attacheacute lattributAttribut est le nom de lattribut deacuteclareacuteType deacutefinit le type de donneacutee de lattribut choisi parmi CDATA
bull Chaicircnes de caractegraveres entre guillemets (aa) non analyseacutees Enumeacuteration
bull Liste de valeurs seacutepareacutees par | bull lt ATTLIST balise Attribut (Valeur1 | Valeur2 | ) gt
ID et IDREFbull Cleacute et reacutefeacuterence agrave cleacute
Mode preacutecise le caractegravere obligatoire ou non de lattribut REQUIRED IMPLIED ou FIXED
Exemple drsquoune DTDExemple drsquoune DTD
ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gt
1048710 une balise laquo listePersonnes raquo contient au moins 1 balise personne1048710 une balise laquo personne raquo contient une balise nom une eacuteventuelle balise prenom une balise adresse le tout dans lrsquoordre indiqueacute1048710 la balise laquo personne raquo contient un attribut laquo statut raquo obligatoire1048710 + signifie laquo au moins une raquo1048710 signifie laquo au moins zeacutero raquo1048710 signifie laquo 0 ou 1 raquo1048710 xxx | yyy signifie une de ces deux balises au choix1048710 PCDATA laquo parsed character data raquo1048710 REQUIRED = obligatoire IMPLIED = facultatif
XML ScheacutemaXML Scheacutema
Limite des DTD Description limiteacutee dans des documents
structureacutesbull Problegraveme de typage (PCDATA)
Exprimeacute dans un langage autre que XMLbull Pas les mecircmes parseurs
Objectif de XML Scheacutema Ameacutelioration du typage Ameacutelioration de la structure
bull Nombre borneacute drsquoeacuteleacutements inclus hellip
Remplace de plus en plus la DTD car exprimeacute en syntaxe XML et extensible
XML ScheacutemaXML Scheacutema
Comme une DTD le Scheacutema (xsd) permet de garantir la coheacuterence des donneacutees xml mais sa syntaxe est de style xml le niveau de preacutecision est beaucoup plus eacuteleveacute Dans le document xml
ltlistePersonnes xmlnsxsi=httpwwww3org2001XMLSchema-instance xsinoNamespaceSchemaLocation=listePersonnesxsdgt
XML ScheacutemaXML Scheacutema
Deacuteclaration des eacuteleacutements et attributs Nom Typage similaire agrave lobjet
Speacutecification de types simples Grande varieacuteteacute de types
Geacuteneacuteration de types complexes Seacutequence (Sequence) Choix (Choice) Tas (All)
Les types simplesLes types simples
string Confirm this is electric
byte -1 126
hexBinary 0FB7
boolean true false 1 0
time 132000000 132000000-0500
dateTime 1999-05-31T132000000-0500
duration P1Y2M3DT10H30M123S
float -INF -1E4 -0 0 1278E-2 12 INF
NaN
integer -126789 -1 0 1 126789
positiveInteger 1 126789
negativeInteger -126789 -1
nonNegativeInteger 0 1 126789
nonPositiveInteger -126789 -1 0
int -1 126789675
unsignedInt 0 1267896754
anyURI httpwwwexamplecom
Les types complexesLes types complexes
Deacutefinition dobjets complexes ltsequencegt collection ordonneacutee deacuteleacutements typeacutes ltallgt collection non ordonneacutee deacuteleacutements typeacutes ltchoicegt choix entre eacuteleacutements typeacutes
ExempleltxsdcomplexType name=AddresseFRgt ltxsdsequencegt ltxsdelement name=nom type=xsdstringgt ltxsdelement name=rue type=xsdstringgt ltxsdelement name=ville type=xsdstringgt ltxsdelement name=codep
type=xsddecimalgt ltxsdsequencegt ltxsdattribute name=pays type=xsdNMTOKEN fixed=FRgt ltxsdcomplexTypegt
Les PatternsLes Patterns
Contraintes sur type simple preacutedeacutefini Utilisation dexpression reacuteguliegraveres Similaires agrave celles de Perl
ExempleltxsdsimpleType name=NumItemgt ltxsdrestriction base=xsdstringgt
ltxsdpattern value=d3-[A-Z]2gt ltxsdrestrictiongt ltxsdsimpleTypegt
XML SchemaXML Schemaexemple (1)exemple (1)
ltxsdschema xmlnsxsd=httpwwww3org1999XMLSchemagt
ltxsdelement name=commande type=CommandeTypegt ltxsdelement name=commentaire type=xsdstringgt ltxsdcomplexType name=CommandeTypegt
ltxsdsequencegt ltxsdelement name=livrer type=Adressegt ltxsdelement name=facturer type=Adressegt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=produits type=ProduitTypegt
ltxsdsequencegt ltxsdattribute name=date_com type=xsddategt
ltxsdcomplexTypegt
XML Schema XML Schema exemple (2)exemple (2)
ltxsdcomplexType name=ProduitTypegt ltxsdsequencegt
ltxsdelement name=produit minOccurs=0 maxOccurs=unboundedgt ltxsdcomplexTypegt
ltxsdsequencegt ltxsdelement name=nom_prod type=xsdstringgt ltxsdelement name=quantitegt ltxsdsimpleTypegt ltxsdrestriction
base=xsdpositiveIntegergt ltxsdmaxExclusive value=100gt ltxsdrestrictiongt ltxsdsimpleTypegt ltxsdelementgt ltxsdelement name=prix type=xsddecimalgt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=date_livraison type=xsddate
minOccurs=0gt ltxsdsequencegt ltxsdattribute name=num_prod type=xsdpositiveInteger
use=requiredgt ltxsdcomplexTypegt
ltxsdelementgt ltxsdsequencegt ltxsdcomplexTypegt ltxsdschemagt
Feuille de styleFeuille de style
Feuille de styleFeuille de style
La repreacutesentation de cette lettre en XML ne comporte aucune indication sur sa mise en page Les aspects graphiques ou typographiques sont
absents du source XML Ces aspects seront deacutefinis par lrsquointermeacutediaire
drsquoune feuille de styleUne feuille de style est un ensemble de regravegles pour speacutecifier la reacutealisation concregravete drsquoun document sur un meacutedia particulierOn ajoute dans le deacutebut du fichier xml un lien vers la feuille de style fichier xsl ltxml-stylesheet type=textxsllaquo
href=transformateurxslgt Ce fichier peut ecirctre local ou acceacutedeacute via une URL
Conception de Conception de DTDScheacutemaDTDScheacutema
Possible agrave partir drsquoune modeacutelisation ULM
Quelques outils de Quelques outils de travailtravail
Editeur Outil Support
Tibco Turbo XML DTD XSLScheacutema
Altova XMLSpy DTD Scheacutema XSL Xquery
SyncRO Ltd Oxygen DTD Scheacutema XSL Xquery
Data Junction XML Junction Scheacutema
Insight Soft XMLMate DTD ScheacutemaXSL XPath
XML Mind XMLMind Editor DTD ScheacutemaXSL XPath
Exemple DTDExemple DTD
Convertisseur TAC vers XML (metaf2xml)
ltENTITY cloudType AC|ACC|ACSL|AS|CB|CBMAM|CC|CCSL|CI|CS|CU|CF|CUFRA|NS|SAC|SC|SCSL|ST|SF|STFRA|TCUgt
ltENTITY colourCodes BLUplus|BLU|WHT|GRN|YLO|YLO1|YLO2|AMB|RED|FCSTCANCELgtltENTITY cloudCover FEW|SCT|BKN|OVCgtltENTITY cloudFamily 0|1|2|3|4|5|6|7|8|9gtltENTITY phenomDescr isFrequent|isOccasional|isIntermittent|isContinuous|isThick|
isPrettyThick|isVeryThick|isThin|isPrettyThin|isVeryThin|isFeeble|isPrettyFeeble|isVeryFeeble|isLight|isPrettyLight|isVeryLight|isModerate|isLow|isLower|isIsolated|isConvective|isDissipated|inPastHour|baseBelowStation|isAloft|isAround|isFreezing|isPatchygt
ltENTITY unitRadiation kJmm|JcmcmgtltENTITY unitSpeed KT|MPS|KMHgtltENTITY period 1d|24h|1h|ngtltENTITY compassDir N|NNE|NE|ENE|E|ESE|SE|SSE|S|SSW|SW|WSW|W|WNW|NW|NNWgt
Exemple DTDExemple DTD
ltELEMENT taf (ERROR WARNING obsStation issueTime fcstPeriod reportModifier fcstNotAvbl sfcWind (CAVOK | (visPrev weatherList cloudList visVert)) (turbulence | icing | windShearLvl | QNH) trendList (tempAt | tempMaxAt | tempMinAt | correctedAt |
amendedAt | limMetwatch | autoMetwatch | amendment) tafRemarkList)gtltATTLIST taf s CDATA REQUIREDgt
Exemple xmlExemple xml
ltxml version=10 encoding=UTF-8gtltdatagt ltoptionsgtltformat v=xml gt ltlang v=en gt ltmode v=latest gt
ltmsg_metaf v= gt ltmsg_synop v=AAXX 09004 08495 11459
30714 10147 20136 30151 40159 58005 60001 70511 83500 92350 gt
ltsrc_metaf v=noaa gt ltsrc_synop v=nws_land gt lttype_metaf v=metar gt lttype_synop v=synop gt ltoptionsgt ltreportsgt ltsynop s=AAXX 09004 08495
11459 30714 10147 20136 30151 40159 58005 60001 70511 83500 92350gt
ltobsStationType s=AAXXgt ltstationType v=AAXX gt ltobsStationTypegt ltobsTime s=0900gt ltday v=09 gt lthour
v=00 gt ltminute v=00 gt ltobsTimegt
ltwindIndicator s=4gtltwindUnit v=KT gt ltwindIndicatorgt
ltstationId s=08495gt ltid v=08495 gt ltregion v=VI gt
ltprecipInd s=1gt ltprecipIndVal v=1 gt ltprecipIndgt ltwxInd s=1gt ltwxIndVal v=1 gt ltwxIndgt ltbaseLowestCloud s=4gt ltfrom v=300 u=M gtltto v=600 u=M gt ltbaseLowestCloudgt ltvisPrev s=59gt ltdistance v=9 u=KM gt ltvisPrevgt lttotalCloudCover s=3gt ltoktas v=3 gt lttotalCloudCovergt ltsfcWind s=0714gt ltwindgt ltdir v=70 gt ltspeed v=14 u=KT gt ltwindgt ltsfcWindgt lttemperature s=10147 20136gt ltairgt lttemp v=147 u=C gtltairgt
Exemple Interface Exemple Interface WEBWEB
WIS XMLBUFRWIS XMLBUFR
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
-
Exemple drsquoune DTDExemple drsquoune DTD
ltELEMENT listePersonnes (personne+) gtltELEMENT personne (nom prenom adresse)gtltATTLIST personne statut CDATA REQUIRED gtltELEMENT nom (PCDATA) gtltELEMENT prenom (PCDATA) gt
1048710 une balise laquo listePersonnes raquo contient au moins 1 balise personne1048710 une balise laquo personne raquo contient une balise nom une eacuteventuelle balise prenom une balise adresse le tout dans lrsquoordre indiqueacute1048710 la balise laquo personne raquo contient un attribut laquo statut raquo obligatoire1048710 + signifie laquo au moins une raquo1048710 signifie laquo au moins zeacutero raquo1048710 signifie laquo 0 ou 1 raquo1048710 xxx | yyy signifie une de ces deux balises au choix1048710 PCDATA laquo parsed character data raquo1048710 REQUIRED = obligatoire IMPLIED = facultatif
XML ScheacutemaXML Scheacutema
Limite des DTD Description limiteacutee dans des documents
structureacutesbull Problegraveme de typage (PCDATA)
Exprimeacute dans un langage autre que XMLbull Pas les mecircmes parseurs
Objectif de XML Scheacutema Ameacutelioration du typage Ameacutelioration de la structure
bull Nombre borneacute drsquoeacuteleacutements inclus hellip
Remplace de plus en plus la DTD car exprimeacute en syntaxe XML et extensible
XML ScheacutemaXML Scheacutema
Comme une DTD le Scheacutema (xsd) permet de garantir la coheacuterence des donneacutees xml mais sa syntaxe est de style xml le niveau de preacutecision est beaucoup plus eacuteleveacute Dans le document xml
ltlistePersonnes xmlnsxsi=httpwwww3org2001XMLSchema-instance xsinoNamespaceSchemaLocation=listePersonnesxsdgt
XML ScheacutemaXML Scheacutema
Deacuteclaration des eacuteleacutements et attributs Nom Typage similaire agrave lobjet
Speacutecification de types simples Grande varieacuteteacute de types
Geacuteneacuteration de types complexes Seacutequence (Sequence) Choix (Choice) Tas (All)
Les types simplesLes types simples
string Confirm this is electric
byte -1 126
hexBinary 0FB7
boolean true false 1 0
time 132000000 132000000-0500
dateTime 1999-05-31T132000000-0500
duration P1Y2M3DT10H30M123S
float -INF -1E4 -0 0 1278E-2 12 INF
NaN
integer -126789 -1 0 1 126789
positiveInteger 1 126789
negativeInteger -126789 -1
nonNegativeInteger 0 1 126789
nonPositiveInteger -126789 -1 0
int -1 126789675
unsignedInt 0 1267896754
anyURI httpwwwexamplecom
Les types complexesLes types complexes
Deacutefinition dobjets complexes ltsequencegt collection ordonneacutee deacuteleacutements typeacutes ltallgt collection non ordonneacutee deacuteleacutements typeacutes ltchoicegt choix entre eacuteleacutements typeacutes
ExempleltxsdcomplexType name=AddresseFRgt ltxsdsequencegt ltxsdelement name=nom type=xsdstringgt ltxsdelement name=rue type=xsdstringgt ltxsdelement name=ville type=xsdstringgt ltxsdelement name=codep
type=xsddecimalgt ltxsdsequencegt ltxsdattribute name=pays type=xsdNMTOKEN fixed=FRgt ltxsdcomplexTypegt
Les PatternsLes Patterns
Contraintes sur type simple preacutedeacutefini Utilisation dexpression reacuteguliegraveres Similaires agrave celles de Perl
ExempleltxsdsimpleType name=NumItemgt ltxsdrestriction base=xsdstringgt
ltxsdpattern value=d3-[A-Z]2gt ltxsdrestrictiongt ltxsdsimpleTypegt
XML SchemaXML Schemaexemple (1)exemple (1)
ltxsdschema xmlnsxsd=httpwwww3org1999XMLSchemagt
ltxsdelement name=commande type=CommandeTypegt ltxsdelement name=commentaire type=xsdstringgt ltxsdcomplexType name=CommandeTypegt
ltxsdsequencegt ltxsdelement name=livrer type=Adressegt ltxsdelement name=facturer type=Adressegt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=produits type=ProduitTypegt
ltxsdsequencegt ltxsdattribute name=date_com type=xsddategt
ltxsdcomplexTypegt
XML Schema XML Schema exemple (2)exemple (2)
ltxsdcomplexType name=ProduitTypegt ltxsdsequencegt
ltxsdelement name=produit minOccurs=0 maxOccurs=unboundedgt ltxsdcomplexTypegt
ltxsdsequencegt ltxsdelement name=nom_prod type=xsdstringgt ltxsdelement name=quantitegt ltxsdsimpleTypegt ltxsdrestriction
base=xsdpositiveIntegergt ltxsdmaxExclusive value=100gt ltxsdrestrictiongt ltxsdsimpleTypegt ltxsdelementgt ltxsdelement name=prix type=xsddecimalgt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=date_livraison type=xsddate
minOccurs=0gt ltxsdsequencegt ltxsdattribute name=num_prod type=xsdpositiveInteger
use=requiredgt ltxsdcomplexTypegt
ltxsdelementgt ltxsdsequencegt ltxsdcomplexTypegt ltxsdschemagt
Feuille de styleFeuille de style
Feuille de styleFeuille de style
La repreacutesentation de cette lettre en XML ne comporte aucune indication sur sa mise en page Les aspects graphiques ou typographiques sont
absents du source XML Ces aspects seront deacutefinis par lrsquointermeacutediaire
drsquoune feuille de styleUne feuille de style est un ensemble de regravegles pour speacutecifier la reacutealisation concregravete drsquoun document sur un meacutedia particulierOn ajoute dans le deacutebut du fichier xml un lien vers la feuille de style fichier xsl ltxml-stylesheet type=textxsllaquo
href=transformateurxslgt Ce fichier peut ecirctre local ou acceacutedeacute via une URL
Conception de Conception de DTDScheacutemaDTDScheacutema
Possible agrave partir drsquoune modeacutelisation ULM
Quelques outils de Quelques outils de travailtravail
Editeur Outil Support
Tibco Turbo XML DTD XSLScheacutema
Altova XMLSpy DTD Scheacutema XSL Xquery
SyncRO Ltd Oxygen DTD Scheacutema XSL Xquery
Data Junction XML Junction Scheacutema
Insight Soft XMLMate DTD ScheacutemaXSL XPath
XML Mind XMLMind Editor DTD ScheacutemaXSL XPath
Exemple DTDExemple DTD
Convertisseur TAC vers XML (metaf2xml)
ltENTITY cloudType AC|ACC|ACSL|AS|CB|CBMAM|CC|CCSL|CI|CS|CU|CF|CUFRA|NS|SAC|SC|SCSL|ST|SF|STFRA|TCUgt
ltENTITY colourCodes BLUplus|BLU|WHT|GRN|YLO|YLO1|YLO2|AMB|RED|FCSTCANCELgtltENTITY cloudCover FEW|SCT|BKN|OVCgtltENTITY cloudFamily 0|1|2|3|4|5|6|7|8|9gtltENTITY phenomDescr isFrequent|isOccasional|isIntermittent|isContinuous|isThick|
isPrettyThick|isVeryThick|isThin|isPrettyThin|isVeryThin|isFeeble|isPrettyFeeble|isVeryFeeble|isLight|isPrettyLight|isVeryLight|isModerate|isLow|isLower|isIsolated|isConvective|isDissipated|inPastHour|baseBelowStation|isAloft|isAround|isFreezing|isPatchygt
ltENTITY unitRadiation kJmm|JcmcmgtltENTITY unitSpeed KT|MPS|KMHgtltENTITY period 1d|24h|1h|ngtltENTITY compassDir N|NNE|NE|ENE|E|ESE|SE|SSE|S|SSW|SW|WSW|W|WNW|NW|NNWgt
Exemple DTDExemple DTD
ltELEMENT taf (ERROR WARNING obsStation issueTime fcstPeriod reportModifier fcstNotAvbl sfcWind (CAVOK | (visPrev weatherList cloudList visVert)) (turbulence | icing | windShearLvl | QNH) trendList (tempAt | tempMaxAt | tempMinAt | correctedAt |
amendedAt | limMetwatch | autoMetwatch | amendment) tafRemarkList)gtltATTLIST taf s CDATA REQUIREDgt
Exemple xmlExemple xml
ltxml version=10 encoding=UTF-8gtltdatagt ltoptionsgtltformat v=xml gt ltlang v=en gt ltmode v=latest gt
ltmsg_metaf v= gt ltmsg_synop v=AAXX 09004 08495 11459
30714 10147 20136 30151 40159 58005 60001 70511 83500 92350 gt
ltsrc_metaf v=noaa gt ltsrc_synop v=nws_land gt lttype_metaf v=metar gt lttype_synop v=synop gt ltoptionsgt ltreportsgt ltsynop s=AAXX 09004 08495
11459 30714 10147 20136 30151 40159 58005 60001 70511 83500 92350gt
ltobsStationType s=AAXXgt ltstationType v=AAXX gt ltobsStationTypegt ltobsTime s=0900gt ltday v=09 gt lthour
v=00 gt ltminute v=00 gt ltobsTimegt
ltwindIndicator s=4gtltwindUnit v=KT gt ltwindIndicatorgt
ltstationId s=08495gt ltid v=08495 gt ltregion v=VI gt
ltprecipInd s=1gt ltprecipIndVal v=1 gt ltprecipIndgt ltwxInd s=1gt ltwxIndVal v=1 gt ltwxIndgt ltbaseLowestCloud s=4gt ltfrom v=300 u=M gtltto v=600 u=M gt ltbaseLowestCloudgt ltvisPrev s=59gt ltdistance v=9 u=KM gt ltvisPrevgt lttotalCloudCover s=3gt ltoktas v=3 gt lttotalCloudCovergt ltsfcWind s=0714gt ltwindgt ltdir v=70 gt ltspeed v=14 u=KT gt ltwindgt ltsfcWindgt lttemperature s=10147 20136gt ltairgt lttemp v=147 u=C gtltairgt
Exemple Interface Exemple Interface WEBWEB
WIS XMLBUFRWIS XMLBUFR
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
-
XML ScheacutemaXML Scheacutema
Limite des DTD Description limiteacutee dans des documents
structureacutesbull Problegraveme de typage (PCDATA)
Exprimeacute dans un langage autre que XMLbull Pas les mecircmes parseurs
Objectif de XML Scheacutema Ameacutelioration du typage Ameacutelioration de la structure
bull Nombre borneacute drsquoeacuteleacutements inclus hellip
Remplace de plus en plus la DTD car exprimeacute en syntaxe XML et extensible
XML ScheacutemaXML Scheacutema
Comme une DTD le Scheacutema (xsd) permet de garantir la coheacuterence des donneacutees xml mais sa syntaxe est de style xml le niveau de preacutecision est beaucoup plus eacuteleveacute Dans le document xml
ltlistePersonnes xmlnsxsi=httpwwww3org2001XMLSchema-instance xsinoNamespaceSchemaLocation=listePersonnesxsdgt
XML ScheacutemaXML Scheacutema
Deacuteclaration des eacuteleacutements et attributs Nom Typage similaire agrave lobjet
Speacutecification de types simples Grande varieacuteteacute de types
Geacuteneacuteration de types complexes Seacutequence (Sequence) Choix (Choice) Tas (All)
Les types simplesLes types simples
string Confirm this is electric
byte -1 126
hexBinary 0FB7
boolean true false 1 0
time 132000000 132000000-0500
dateTime 1999-05-31T132000000-0500
duration P1Y2M3DT10H30M123S
float -INF -1E4 -0 0 1278E-2 12 INF
NaN
integer -126789 -1 0 1 126789
positiveInteger 1 126789
negativeInteger -126789 -1
nonNegativeInteger 0 1 126789
nonPositiveInteger -126789 -1 0
int -1 126789675
unsignedInt 0 1267896754
anyURI httpwwwexamplecom
Les types complexesLes types complexes
Deacutefinition dobjets complexes ltsequencegt collection ordonneacutee deacuteleacutements typeacutes ltallgt collection non ordonneacutee deacuteleacutements typeacutes ltchoicegt choix entre eacuteleacutements typeacutes
ExempleltxsdcomplexType name=AddresseFRgt ltxsdsequencegt ltxsdelement name=nom type=xsdstringgt ltxsdelement name=rue type=xsdstringgt ltxsdelement name=ville type=xsdstringgt ltxsdelement name=codep
type=xsddecimalgt ltxsdsequencegt ltxsdattribute name=pays type=xsdNMTOKEN fixed=FRgt ltxsdcomplexTypegt
Les PatternsLes Patterns
Contraintes sur type simple preacutedeacutefini Utilisation dexpression reacuteguliegraveres Similaires agrave celles de Perl
ExempleltxsdsimpleType name=NumItemgt ltxsdrestriction base=xsdstringgt
ltxsdpattern value=d3-[A-Z]2gt ltxsdrestrictiongt ltxsdsimpleTypegt
XML SchemaXML Schemaexemple (1)exemple (1)
ltxsdschema xmlnsxsd=httpwwww3org1999XMLSchemagt
ltxsdelement name=commande type=CommandeTypegt ltxsdelement name=commentaire type=xsdstringgt ltxsdcomplexType name=CommandeTypegt
ltxsdsequencegt ltxsdelement name=livrer type=Adressegt ltxsdelement name=facturer type=Adressegt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=produits type=ProduitTypegt
ltxsdsequencegt ltxsdattribute name=date_com type=xsddategt
ltxsdcomplexTypegt
XML Schema XML Schema exemple (2)exemple (2)
ltxsdcomplexType name=ProduitTypegt ltxsdsequencegt
ltxsdelement name=produit minOccurs=0 maxOccurs=unboundedgt ltxsdcomplexTypegt
ltxsdsequencegt ltxsdelement name=nom_prod type=xsdstringgt ltxsdelement name=quantitegt ltxsdsimpleTypegt ltxsdrestriction
base=xsdpositiveIntegergt ltxsdmaxExclusive value=100gt ltxsdrestrictiongt ltxsdsimpleTypegt ltxsdelementgt ltxsdelement name=prix type=xsddecimalgt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=date_livraison type=xsddate
minOccurs=0gt ltxsdsequencegt ltxsdattribute name=num_prod type=xsdpositiveInteger
use=requiredgt ltxsdcomplexTypegt
ltxsdelementgt ltxsdsequencegt ltxsdcomplexTypegt ltxsdschemagt
Feuille de styleFeuille de style
Feuille de styleFeuille de style
La repreacutesentation de cette lettre en XML ne comporte aucune indication sur sa mise en page Les aspects graphiques ou typographiques sont
absents du source XML Ces aspects seront deacutefinis par lrsquointermeacutediaire
drsquoune feuille de styleUne feuille de style est un ensemble de regravegles pour speacutecifier la reacutealisation concregravete drsquoun document sur un meacutedia particulierOn ajoute dans le deacutebut du fichier xml un lien vers la feuille de style fichier xsl ltxml-stylesheet type=textxsllaquo
href=transformateurxslgt Ce fichier peut ecirctre local ou acceacutedeacute via une URL
Conception de Conception de DTDScheacutemaDTDScheacutema
Possible agrave partir drsquoune modeacutelisation ULM
Quelques outils de Quelques outils de travailtravail
Editeur Outil Support
Tibco Turbo XML DTD XSLScheacutema
Altova XMLSpy DTD Scheacutema XSL Xquery
SyncRO Ltd Oxygen DTD Scheacutema XSL Xquery
Data Junction XML Junction Scheacutema
Insight Soft XMLMate DTD ScheacutemaXSL XPath
XML Mind XMLMind Editor DTD ScheacutemaXSL XPath
Exemple DTDExemple DTD
Convertisseur TAC vers XML (metaf2xml)
ltENTITY cloudType AC|ACC|ACSL|AS|CB|CBMAM|CC|CCSL|CI|CS|CU|CF|CUFRA|NS|SAC|SC|SCSL|ST|SF|STFRA|TCUgt
ltENTITY colourCodes BLUplus|BLU|WHT|GRN|YLO|YLO1|YLO2|AMB|RED|FCSTCANCELgtltENTITY cloudCover FEW|SCT|BKN|OVCgtltENTITY cloudFamily 0|1|2|3|4|5|6|7|8|9gtltENTITY phenomDescr isFrequent|isOccasional|isIntermittent|isContinuous|isThick|
isPrettyThick|isVeryThick|isThin|isPrettyThin|isVeryThin|isFeeble|isPrettyFeeble|isVeryFeeble|isLight|isPrettyLight|isVeryLight|isModerate|isLow|isLower|isIsolated|isConvective|isDissipated|inPastHour|baseBelowStation|isAloft|isAround|isFreezing|isPatchygt
ltENTITY unitRadiation kJmm|JcmcmgtltENTITY unitSpeed KT|MPS|KMHgtltENTITY period 1d|24h|1h|ngtltENTITY compassDir N|NNE|NE|ENE|E|ESE|SE|SSE|S|SSW|SW|WSW|W|WNW|NW|NNWgt
Exemple DTDExemple DTD
ltELEMENT taf (ERROR WARNING obsStation issueTime fcstPeriod reportModifier fcstNotAvbl sfcWind (CAVOK | (visPrev weatherList cloudList visVert)) (turbulence | icing | windShearLvl | QNH) trendList (tempAt | tempMaxAt | tempMinAt | correctedAt |
amendedAt | limMetwatch | autoMetwatch | amendment) tafRemarkList)gtltATTLIST taf s CDATA REQUIREDgt
Exemple xmlExemple xml
ltxml version=10 encoding=UTF-8gtltdatagt ltoptionsgtltformat v=xml gt ltlang v=en gt ltmode v=latest gt
ltmsg_metaf v= gt ltmsg_synop v=AAXX 09004 08495 11459
30714 10147 20136 30151 40159 58005 60001 70511 83500 92350 gt
ltsrc_metaf v=noaa gt ltsrc_synop v=nws_land gt lttype_metaf v=metar gt lttype_synop v=synop gt ltoptionsgt ltreportsgt ltsynop s=AAXX 09004 08495
11459 30714 10147 20136 30151 40159 58005 60001 70511 83500 92350gt
ltobsStationType s=AAXXgt ltstationType v=AAXX gt ltobsStationTypegt ltobsTime s=0900gt ltday v=09 gt lthour
v=00 gt ltminute v=00 gt ltobsTimegt
ltwindIndicator s=4gtltwindUnit v=KT gt ltwindIndicatorgt
ltstationId s=08495gt ltid v=08495 gt ltregion v=VI gt
ltprecipInd s=1gt ltprecipIndVal v=1 gt ltprecipIndgt ltwxInd s=1gt ltwxIndVal v=1 gt ltwxIndgt ltbaseLowestCloud s=4gt ltfrom v=300 u=M gtltto v=600 u=M gt ltbaseLowestCloudgt ltvisPrev s=59gt ltdistance v=9 u=KM gt ltvisPrevgt lttotalCloudCover s=3gt ltoktas v=3 gt lttotalCloudCovergt ltsfcWind s=0714gt ltwindgt ltdir v=70 gt ltspeed v=14 u=KT gt ltwindgt ltsfcWindgt lttemperature s=10147 20136gt ltairgt lttemp v=147 u=C gtltairgt
Exemple Interface Exemple Interface WEBWEB
WIS XMLBUFRWIS XMLBUFR
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
-
XML ScheacutemaXML Scheacutema
Comme une DTD le Scheacutema (xsd) permet de garantir la coheacuterence des donneacutees xml mais sa syntaxe est de style xml le niveau de preacutecision est beaucoup plus eacuteleveacute Dans le document xml
ltlistePersonnes xmlnsxsi=httpwwww3org2001XMLSchema-instance xsinoNamespaceSchemaLocation=listePersonnesxsdgt
XML ScheacutemaXML Scheacutema
Deacuteclaration des eacuteleacutements et attributs Nom Typage similaire agrave lobjet
Speacutecification de types simples Grande varieacuteteacute de types
Geacuteneacuteration de types complexes Seacutequence (Sequence) Choix (Choice) Tas (All)
Les types simplesLes types simples
string Confirm this is electric
byte -1 126
hexBinary 0FB7
boolean true false 1 0
time 132000000 132000000-0500
dateTime 1999-05-31T132000000-0500
duration P1Y2M3DT10H30M123S
float -INF -1E4 -0 0 1278E-2 12 INF
NaN
integer -126789 -1 0 1 126789
positiveInteger 1 126789
negativeInteger -126789 -1
nonNegativeInteger 0 1 126789
nonPositiveInteger -126789 -1 0
int -1 126789675
unsignedInt 0 1267896754
anyURI httpwwwexamplecom
Les types complexesLes types complexes
Deacutefinition dobjets complexes ltsequencegt collection ordonneacutee deacuteleacutements typeacutes ltallgt collection non ordonneacutee deacuteleacutements typeacutes ltchoicegt choix entre eacuteleacutements typeacutes
ExempleltxsdcomplexType name=AddresseFRgt ltxsdsequencegt ltxsdelement name=nom type=xsdstringgt ltxsdelement name=rue type=xsdstringgt ltxsdelement name=ville type=xsdstringgt ltxsdelement name=codep
type=xsddecimalgt ltxsdsequencegt ltxsdattribute name=pays type=xsdNMTOKEN fixed=FRgt ltxsdcomplexTypegt
Les PatternsLes Patterns
Contraintes sur type simple preacutedeacutefini Utilisation dexpression reacuteguliegraveres Similaires agrave celles de Perl
ExempleltxsdsimpleType name=NumItemgt ltxsdrestriction base=xsdstringgt
ltxsdpattern value=d3-[A-Z]2gt ltxsdrestrictiongt ltxsdsimpleTypegt
XML SchemaXML Schemaexemple (1)exemple (1)
ltxsdschema xmlnsxsd=httpwwww3org1999XMLSchemagt
ltxsdelement name=commande type=CommandeTypegt ltxsdelement name=commentaire type=xsdstringgt ltxsdcomplexType name=CommandeTypegt
ltxsdsequencegt ltxsdelement name=livrer type=Adressegt ltxsdelement name=facturer type=Adressegt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=produits type=ProduitTypegt
ltxsdsequencegt ltxsdattribute name=date_com type=xsddategt
ltxsdcomplexTypegt
XML Schema XML Schema exemple (2)exemple (2)
ltxsdcomplexType name=ProduitTypegt ltxsdsequencegt
ltxsdelement name=produit minOccurs=0 maxOccurs=unboundedgt ltxsdcomplexTypegt
ltxsdsequencegt ltxsdelement name=nom_prod type=xsdstringgt ltxsdelement name=quantitegt ltxsdsimpleTypegt ltxsdrestriction
base=xsdpositiveIntegergt ltxsdmaxExclusive value=100gt ltxsdrestrictiongt ltxsdsimpleTypegt ltxsdelementgt ltxsdelement name=prix type=xsddecimalgt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=date_livraison type=xsddate
minOccurs=0gt ltxsdsequencegt ltxsdattribute name=num_prod type=xsdpositiveInteger
use=requiredgt ltxsdcomplexTypegt
ltxsdelementgt ltxsdsequencegt ltxsdcomplexTypegt ltxsdschemagt
Feuille de styleFeuille de style
Feuille de styleFeuille de style
La repreacutesentation de cette lettre en XML ne comporte aucune indication sur sa mise en page Les aspects graphiques ou typographiques sont
absents du source XML Ces aspects seront deacutefinis par lrsquointermeacutediaire
drsquoune feuille de styleUne feuille de style est un ensemble de regravegles pour speacutecifier la reacutealisation concregravete drsquoun document sur un meacutedia particulierOn ajoute dans le deacutebut du fichier xml un lien vers la feuille de style fichier xsl ltxml-stylesheet type=textxsllaquo
href=transformateurxslgt Ce fichier peut ecirctre local ou acceacutedeacute via une URL
Conception de Conception de DTDScheacutemaDTDScheacutema
Possible agrave partir drsquoune modeacutelisation ULM
Quelques outils de Quelques outils de travailtravail
Editeur Outil Support
Tibco Turbo XML DTD XSLScheacutema
Altova XMLSpy DTD Scheacutema XSL Xquery
SyncRO Ltd Oxygen DTD Scheacutema XSL Xquery
Data Junction XML Junction Scheacutema
Insight Soft XMLMate DTD ScheacutemaXSL XPath
XML Mind XMLMind Editor DTD ScheacutemaXSL XPath
Exemple DTDExemple DTD
Convertisseur TAC vers XML (metaf2xml)
ltENTITY cloudType AC|ACC|ACSL|AS|CB|CBMAM|CC|CCSL|CI|CS|CU|CF|CUFRA|NS|SAC|SC|SCSL|ST|SF|STFRA|TCUgt
ltENTITY colourCodes BLUplus|BLU|WHT|GRN|YLO|YLO1|YLO2|AMB|RED|FCSTCANCELgtltENTITY cloudCover FEW|SCT|BKN|OVCgtltENTITY cloudFamily 0|1|2|3|4|5|6|7|8|9gtltENTITY phenomDescr isFrequent|isOccasional|isIntermittent|isContinuous|isThick|
isPrettyThick|isVeryThick|isThin|isPrettyThin|isVeryThin|isFeeble|isPrettyFeeble|isVeryFeeble|isLight|isPrettyLight|isVeryLight|isModerate|isLow|isLower|isIsolated|isConvective|isDissipated|inPastHour|baseBelowStation|isAloft|isAround|isFreezing|isPatchygt
ltENTITY unitRadiation kJmm|JcmcmgtltENTITY unitSpeed KT|MPS|KMHgtltENTITY period 1d|24h|1h|ngtltENTITY compassDir N|NNE|NE|ENE|E|ESE|SE|SSE|S|SSW|SW|WSW|W|WNW|NW|NNWgt
Exemple DTDExemple DTD
ltELEMENT taf (ERROR WARNING obsStation issueTime fcstPeriod reportModifier fcstNotAvbl sfcWind (CAVOK | (visPrev weatherList cloudList visVert)) (turbulence | icing | windShearLvl | QNH) trendList (tempAt | tempMaxAt | tempMinAt | correctedAt |
amendedAt | limMetwatch | autoMetwatch | amendment) tafRemarkList)gtltATTLIST taf s CDATA REQUIREDgt
Exemple xmlExemple xml
ltxml version=10 encoding=UTF-8gtltdatagt ltoptionsgtltformat v=xml gt ltlang v=en gt ltmode v=latest gt
ltmsg_metaf v= gt ltmsg_synop v=AAXX 09004 08495 11459
30714 10147 20136 30151 40159 58005 60001 70511 83500 92350 gt
ltsrc_metaf v=noaa gt ltsrc_synop v=nws_land gt lttype_metaf v=metar gt lttype_synop v=synop gt ltoptionsgt ltreportsgt ltsynop s=AAXX 09004 08495
11459 30714 10147 20136 30151 40159 58005 60001 70511 83500 92350gt
ltobsStationType s=AAXXgt ltstationType v=AAXX gt ltobsStationTypegt ltobsTime s=0900gt ltday v=09 gt lthour
v=00 gt ltminute v=00 gt ltobsTimegt
ltwindIndicator s=4gtltwindUnit v=KT gt ltwindIndicatorgt
ltstationId s=08495gt ltid v=08495 gt ltregion v=VI gt
ltprecipInd s=1gt ltprecipIndVal v=1 gt ltprecipIndgt ltwxInd s=1gt ltwxIndVal v=1 gt ltwxIndgt ltbaseLowestCloud s=4gt ltfrom v=300 u=M gtltto v=600 u=M gt ltbaseLowestCloudgt ltvisPrev s=59gt ltdistance v=9 u=KM gt ltvisPrevgt lttotalCloudCover s=3gt ltoktas v=3 gt lttotalCloudCovergt ltsfcWind s=0714gt ltwindgt ltdir v=70 gt ltspeed v=14 u=KT gt ltwindgt ltsfcWindgt lttemperature s=10147 20136gt ltairgt lttemp v=147 u=C gtltairgt
Exemple Interface Exemple Interface WEBWEB
WIS XMLBUFRWIS XMLBUFR
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
-
XML ScheacutemaXML Scheacutema
Deacuteclaration des eacuteleacutements et attributs Nom Typage similaire agrave lobjet
Speacutecification de types simples Grande varieacuteteacute de types
Geacuteneacuteration de types complexes Seacutequence (Sequence) Choix (Choice) Tas (All)
Les types simplesLes types simples
string Confirm this is electric
byte -1 126
hexBinary 0FB7
boolean true false 1 0
time 132000000 132000000-0500
dateTime 1999-05-31T132000000-0500
duration P1Y2M3DT10H30M123S
float -INF -1E4 -0 0 1278E-2 12 INF
NaN
integer -126789 -1 0 1 126789
positiveInteger 1 126789
negativeInteger -126789 -1
nonNegativeInteger 0 1 126789
nonPositiveInteger -126789 -1 0
int -1 126789675
unsignedInt 0 1267896754
anyURI httpwwwexamplecom
Les types complexesLes types complexes
Deacutefinition dobjets complexes ltsequencegt collection ordonneacutee deacuteleacutements typeacutes ltallgt collection non ordonneacutee deacuteleacutements typeacutes ltchoicegt choix entre eacuteleacutements typeacutes
ExempleltxsdcomplexType name=AddresseFRgt ltxsdsequencegt ltxsdelement name=nom type=xsdstringgt ltxsdelement name=rue type=xsdstringgt ltxsdelement name=ville type=xsdstringgt ltxsdelement name=codep
type=xsddecimalgt ltxsdsequencegt ltxsdattribute name=pays type=xsdNMTOKEN fixed=FRgt ltxsdcomplexTypegt
Les PatternsLes Patterns
Contraintes sur type simple preacutedeacutefini Utilisation dexpression reacuteguliegraveres Similaires agrave celles de Perl
ExempleltxsdsimpleType name=NumItemgt ltxsdrestriction base=xsdstringgt
ltxsdpattern value=d3-[A-Z]2gt ltxsdrestrictiongt ltxsdsimpleTypegt
XML SchemaXML Schemaexemple (1)exemple (1)
ltxsdschema xmlnsxsd=httpwwww3org1999XMLSchemagt
ltxsdelement name=commande type=CommandeTypegt ltxsdelement name=commentaire type=xsdstringgt ltxsdcomplexType name=CommandeTypegt
ltxsdsequencegt ltxsdelement name=livrer type=Adressegt ltxsdelement name=facturer type=Adressegt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=produits type=ProduitTypegt
ltxsdsequencegt ltxsdattribute name=date_com type=xsddategt
ltxsdcomplexTypegt
XML Schema XML Schema exemple (2)exemple (2)
ltxsdcomplexType name=ProduitTypegt ltxsdsequencegt
ltxsdelement name=produit minOccurs=0 maxOccurs=unboundedgt ltxsdcomplexTypegt
ltxsdsequencegt ltxsdelement name=nom_prod type=xsdstringgt ltxsdelement name=quantitegt ltxsdsimpleTypegt ltxsdrestriction
base=xsdpositiveIntegergt ltxsdmaxExclusive value=100gt ltxsdrestrictiongt ltxsdsimpleTypegt ltxsdelementgt ltxsdelement name=prix type=xsddecimalgt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=date_livraison type=xsddate
minOccurs=0gt ltxsdsequencegt ltxsdattribute name=num_prod type=xsdpositiveInteger
use=requiredgt ltxsdcomplexTypegt
ltxsdelementgt ltxsdsequencegt ltxsdcomplexTypegt ltxsdschemagt
Feuille de styleFeuille de style
Feuille de styleFeuille de style
La repreacutesentation de cette lettre en XML ne comporte aucune indication sur sa mise en page Les aspects graphiques ou typographiques sont
absents du source XML Ces aspects seront deacutefinis par lrsquointermeacutediaire
drsquoune feuille de styleUne feuille de style est un ensemble de regravegles pour speacutecifier la reacutealisation concregravete drsquoun document sur un meacutedia particulierOn ajoute dans le deacutebut du fichier xml un lien vers la feuille de style fichier xsl ltxml-stylesheet type=textxsllaquo
href=transformateurxslgt Ce fichier peut ecirctre local ou acceacutedeacute via une URL
Conception de Conception de DTDScheacutemaDTDScheacutema
Possible agrave partir drsquoune modeacutelisation ULM
Quelques outils de Quelques outils de travailtravail
Editeur Outil Support
Tibco Turbo XML DTD XSLScheacutema
Altova XMLSpy DTD Scheacutema XSL Xquery
SyncRO Ltd Oxygen DTD Scheacutema XSL Xquery
Data Junction XML Junction Scheacutema
Insight Soft XMLMate DTD ScheacutemaXSL XPath
XML Mind XMLMind Editor DTD ScheacutemaXSL XPath
Exemple DTDExemple DTD
Convertisseur TAC vers XML (metaf2xml)
ltENTITY cloudType AC|ACC|ACSL|AS|CB|CBMAM|CC|CCSL|CI|CS|CU|CF|CUFRA|NS|SAC|SC|SCSL|ST|SF|STFRA|TCUgt
ltENTITY colourCodes BLUplus|BLU|WHT|GRN|YLO|YLO1|YLO2|AMB|RED|FCSTCANCELgtltENTITY cloudCover FEW|SCT|BKN|OVCgtltENTITY cloudFamily 0|1|2|3|4|5|6|7|8|9gtltENTITY phenomDescr isFrequent|isOccasional|isIntermittent|isContinuous|isThick|
isPrettyThick|isVeryThick|isThin|isPrettyThin|isVeryThin|isFeeble|isPrettyFeeble|isVeryFeeble|isLight|isPrettyLight|isVeryLight|isModerate|isLow|isLower|isIsolated|isConvective|isDissipated|inPastHour|baseBelowStation|isAloft|isAround|isFreezing|isPatchygt
ltENTITY unitRadiation kJmm|JcmcmgtltENTITY unitSpeed KT|MPS|KMHgtltENTITY period 1d|24h|1h|ngtltENTITY compassDir N|NNE|NE|ENE|E|ESE|SE|SSE|S|SSW|SW|WSW|W|WNW|NW|NNWgt
Exemple DTDExemple DTD
ltELEMENT taf (ERROR WARNING obsStation issueTime fcstPeriod reportModifier fcstNotAvbl sfcWind (CAVOK | (visPrev weatherList cloudList visVert)) (turbulence | icing | windShearLvl | QNH) trendList (tempAt | tempMaxAt | tempMinAt | correctedAt |
amendedAt | limMetwatch | autoMetwatch | amendment) tafRemarkList)gtltATTLIST taf s CDATA REQUIREDgt
Exemple xmlExemple xml
ltxml version=10 encoding=UTF-8gtltdatagt ltoptionsgtltformat v=xml gt ltlang v=en gt ltmode v=latest gt
ltmsg_metaf v= gt ltmsg_synop v=AAXX 09004 08495 11459
30714 10147 20136 30151 40159 58005 60001 70511 83500 92350 gt
ltsrc_metaf v=noaa gt ltsrc_synop v=nws_land gt lttype_metaf v=metar gt lttype_synop v=synop gt ltoptionsgt ltreportsgt ltsynop s=AAXX 09004 08495
11459 30714 10147 20136 30151 40159 58005 60001 70511 83500 92350gt
ltobsStationType s=AAXXgt ltstationType v=AAXX gt ltobsStationTypegt ltobsTime s=0900gt ltday v=09 gt lthour
v=00 gt ltminute v=00 gt ltobsTimegt
ltwindIndicator s=4gtltwindUnit v=KT gt ltwindIndicatorgt
ltstationId s=08495gt ltid v=08495 gt ltregion v=VI gt
ltprecipInd s=1gt ltprecipIndVal v=1 gt ltprecipIndgt ltwxInd s=1gt ltwxIndVal v=1 gt ltwxIndgt ltbaseLowestCloud s=4gt ltfrom v=300 u=M gtltto v=600 u=M gt ltbaseLowestCloudgt ltvisPrev s=59gt ltdistance v=9 u=KM gt ltvisPrevgt lttotalCloudCover s=3gt ltoktas v=3 gt lttotalCloudCovergt ltsfcWind s=0714gt ltwindgt ltdir v=70 gt ltspeed v=14 u=KT gt ltwindgt ltsfcWindgt lttemperature s=10147 20136gt ltairgt lttemp v=147 u=C gtltairgt
Exemple Interface Exemple Interface WEBWEB
WIS XMLBUFRWIS XMLBUFR
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
-
Les types simplesLes types simples
string Confirm this is electric
byte -1 126
hexBinary 0FB7
boolean true false 1 0
time 132000000 132000000-0500
dateTime 1999-05-31T132000000-0500
duration P1Y2M3DT10H30M123S
float -INF -1E4 -0 0 1278E-2 12 INF
NaN
integer -126789 -1 0 1 126789
positiveInteger 1 126789
negativeInteger -126789 -1
nonNegativeInteger 0 1 126789
nonPositiveInteger -126789 -1 0
int -1 126789675
unsignedInt 0 1267896754
anyURI httpwwwexamplecom
Les types complexesLes types complexes
Deacutefinition dobjets complexes ltsequencegt collection ordonneacutee deacuteleacutements typeacutes ltallgt collection non ordonneacutee deacuteleacutements typeacutes ltchoicegt choix entre eacuteleacutements typeacutes
ExempleltxsdcomplexType name=AddresseFRgt ltxsdsequencegt ltxsdelement name=nom type=xsdstringgt ltxsdelement name=rue type=xsdstringgt ltxsdelement name=ville type=xsdstringgt ltxsdelement name=codep
type=xsddecimalgt ltxsdsequencegt ltxsdattribute name=pays type=xsdNMTOKEN fixed=FRgt ltxsdcomplexTypegt
Les PatternsLes Patterns
Contraintes sur type simple preacutedeacutefini Utilisation dexpression reacuteguliegraveres Similaires agrave celles de Perl
ExempleltxsdsimpleType name=NumItemgt ltxsdrestriction base=xsdstringgt
ltxsdpattern value=d3-[A-Z]2gt ltxsdrestrictiongt ltxsdsimpleTypegt
XML SchemaXML Schemaexemple (1)exemple (1)
ltxsdschema xmlnsxsd=httpwwww3org1999XMLSchemagt
ltxsdelement name=commande type=CommandeTypegt ltxsdelement name=commentaire type=xsdstringgt ltxsdcomplexType name=CommandeTypegt
ltxsdsequencegt ltxsdelement name=livrer type=Adressegt ltxsdelement name=facturer type=Adressegt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=produits type=ProduitTypegt
ltxsdsequencegt ltxsdattribute name=date_com type=xsddategt
ltxsdcomplexTypegt
XML Schema XML Schema exemple (2)exemple (2)
ltxsdcomplexType name=ProduitTypegt ltxsdsequencegt
ltxsdelement name=produit minOccurs=0 maxOccurs=unboundedgt ltxsdcomplexTypegt
ltxsdsequencegt ltxsdelement name=nom_prod type=xsdstringgt ltxsdelement name=quantitegt ltxsdsimpleTypegt ltxsdrestriction
base=xsdpositiveIntegergt ltxsdmaxExclusive value=100gt ltxsdrestrictiongt ltxsdsimpleTypegt ltxsdelementgt ltxsdelement name=prix type=xsddecimalgt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=date_livraison type=xsddate
minOccurs=0gt ltxsdsequencegt ltxsdattribute name=num_prod type=xsdpositiveInteger
use=requiredgt ltxsdcomplexTypegt
ltxsdelementgt ltxsdsequencegt ltxsdcomplexTypegt ltxsdschemagt
Feuille de styleFeuille de style
Feuille de styleFeuille de style
La repreacutesentation de cette lettre en XML ne comporte aucune indication sur sa mise en page Les aspects graphiques ou typographiques sont
absents du source XML Ces aspects seront deacutefinis par lrsquointermeacutediaire
drsquoune feuille de styleUne feuille de style est un ensemble de regravegles pour speacutecifier la reacutealisation concregravete drsquoun document sur un meacutedia particulierOn ajoute dans le deacutebut du fichier xml un lien vers la feuille de style fichier xsl ltxml-stylesheet type=textxsllaquo
href=transformateurxslgt Ce fichier peut ecirctre local ou acceacutedeacute via une URL
Conception de Conception de DTDScheacutemaDTDScheacutema
Possible agrave partir drsquoune modeacutelisation ULM
Quelques outils de Quelques outils de travailtravail
Editeur Outil Support
Tibco Turbo XML DTD XSLScheacutema
Altova XMLSpy DTD Scheacutema XSL Xquery
SyncRO Ltd Oxygen DTD Scheacutema XSL Xquery
Data Junction XML Junction Scheacutema
Insight Soft XMLMate DTD ScheacutemaXSL XPath
XML Mind XMLMind Editor DTD ScheacutemaXSL XPath
Exemple DTDExemple DTD
Convertisseur TAC vers XML (metaf2xml)
ltENTITY cloudType AC|ACC|ACSL|AS|CB|CBMAM|CC|CCSL|CI|CS|CU|CF|CUFRA|NS|SAC|SC|SCSL|ST|SF|STFRA|TCUgt
ltENTITY colourCodes BLUplus|BLU|WHT|GRN|YLO|YLO1|YLO2|AMB|RED|FCSTCANCELgtltENTITY cloudCover FEW|SCT|BKN|OVCgtltENTITY cloudFamily 0|1|2|3|4|5|6|7|8|9gtltENTITY phenomDescr isFrequent|isOccasional|isIntermittent|isContinuous|isThick|
isPrettyThick|isVeryThick|isThin|isPrettyThin|isVeryThin|isFeeble|isPrettyFeeble|isVeryFeeble|isLight|isPrettyLight|isVeryLight|isModerate|isLow|isLower|isIsolated|isConvective|isDissipated|inPastHour|baseBelowStation|isAloft|isAround|isFreezing|isPatchygt
ltENTITY unitRadiation kJmm|JcmcmgtltENTITY unitSpeed KT|MPS|KMHgtltENTITY period 1d|24h|1h|ngtltENTITY compassDir N|NNE|NE|ENE|E|ESE|SE|SSE|S|SSW|SW|WSW|W|WNW|NW|NNWgt
Exemple DTDExemple DTD
ltELEMENT taf (ERROR WARNING obsStation issueTime fcstPeriod reportModifier fcstNotAvbl sfcWind (CAVOK | (visPrev weatherList cloudList visVert)) (turbulence | icing | windShearLvl | QNH) trendList (tempAt | tempMaxAt | tempMinAt | correctedAt |
amendedAt | limMetwatch | autoMetwatch | amendment) tafRemarkList)gtltATTLIST taf s CDATA REQUIREDgt
Exemple xmlExemple xml
ltxml version=10 encoding=UTF-8gtltdatagt ltoptionsgtltformat v=xml gt ltlang v=en gt ltmode v=latest gt
ltmsg_metaf v= gt ltmsg_synop v=AAXX 09004 08495 11459
30714 10147 20136 30151 40159 58005 60001 70511 83500 92350 gt
ltsrc_metaf v=noaa gt ltsrc_synop v=nws_land gt lttype_metaf v=metar gt lttype_synop v=synop gt ltoptionsgt ltreportsgt ltsynop s=AAXX 09004 08495
11459 30714 10147 20136 30151 40159 58005 60001 70511 83500 92350gt
ltobsStationType s=AAXXgt ltstationType v=AAXX gt ltobsStationTypegt ltobsTime s=0900gt ltday v=09 gt lthour
v=00 gt ltminute v=00 gt ltobsTimegt
ltwindIndicator s=4gtltwindUnit v=KT gt ltwindIndicatorgt
ltstationId s=08495gt ltid v=08495 gt ltregion v=VI gt
ltprecipInd s=1gt ltprecipIndVal v=1 gt ltprecipIndgt ltwxInd s=1gt ltwxIndVal v=1 gt ltwxIndgt ltbaseLowestCloud s=4gt ltfrom v=300 u=M gtltto v=600 u=M gt ltbaseLowestCloudgt ltvisPrev s=59gt ltdistance v=9 u=KM gt ltvisPrevgt lttotalCloudCover s=3gt ltoktas v=3 gt lttotalCloudCovergt ltsfcWind s=0714gt ltwindgt ltdir v=70 gt ltspeed v=14 u=KT gt ltwindgt ltsfcWindgt lttemperature s=10147 20136gt ltairgt lttemp v=147 u=C gtltairgt
Exemple Interface Exemple Interface WEBWEB
WIS XMLBUFRWIS XMLBUFR
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
-
Les types complexesLes types complexes
Deacutefinition dobjets complexes ltsequencegt collection ordonneacutee deacuteleacutements typeacutes ltallgt collection non ordonneacutee deacuteleacutements typeacutes ltchoicegt choix entre eacuteleacutements typeacutes
ExempleltxsdcomplexType name=AddresseFRgt ltxsdsequencegt ltxsdelement name=nom type=xsdstringgt ltxsdelement name=rue type=xsdstringgt ltxsdelement name=ville type=xsdstringgt ltxsdelement name=codep
type=xsddecimalgt ltxsdsequencegt ltxsdattribute name=pays type=xsdNMTOKEN fixed=FRgt ltxsdcomplexTypegt
Les PatternsLes Patterns
Contraintes sur type simple preacutedeacutefini Utilisation dexpression reacuteguliegraveres Similaires agrave celles de Perl
ExempleltxsdsimpleType name=NumItemgt ltxsdrestriction base=xsdstringgt
ltxsdpattern value=d3-[A-Z]2gt ltxsdrestrictiongt ltxsdsimpleTypegt
XML SchemaXML Schemaexemple (1)exemple (1)
ltxsdschema xmlnsxsd=httpwwww3org1999XMLSchemagt
ltxsdelement name=commande type=CommandeTypegt ltxsdelement name=commentaire type=xsdstringgt ltxsdcomplexType name=CommandeTypegt
ltxsdsequencegt ltxsdelement name=livrer type=Adressegt ltxsdelement name=facturer type=Adressegt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=produits type=ProduitTypegt
ltxsdsequencegt ltxsdattribute name=date_com type=xsddategt
ltxsdcomplexTypegt
XML Schema XML Schema exemple (2)exemple (2)
ltxsdcomplexType name=ProduitTypegt ltxsdsequencegt
ltxsdelement name=produit minOccurs=0 maxOccurs=unboundedgt ltxsdcomplexTypegt
ltxsdsequencegt ltxsdelement name=nom_prod type=xsdstringgt ltxsdelement name=quantitegt ltxsdsimpleTypegt ltxsdrestriction
base=xsdpositiveIntegergt ltxsdmaxExclusive value=100gt ltxsdrestrictiongt ltxsdsimpleTypegt ltxsdelementgt ltxsdelement name=prix type=xsddecimalgt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=date_livraison type=xsddate
minOccurs=0gt ltxsdsequencegt ltxsdattribute name=num_prod type=xsdpositiveInteger
use=requiredgt ltxsdcomplexTypegt
ltxsdelementgt ltxsdsequencegt ltxsdcomplexTypegt ltxsdschemagt
Feuille de styleFeuille de style
Feuille de styleFeuille de style
La repreacutesentation de cette lettre en XML ne comporte aucune indication sur sa mise en page Les aspects graphiques ou typographiques sont
absents du source XML Ces aspects seront deacutefinis par lrsquointermeacutediaire
drsquoune feuille de styleUne feuille de style est un ensemble de regravegles pour speacutecifier la reacutealisation concregravete drsquoun document sur un meacutedia particulierOn ajoute dans le deacutebut du fichier xml un lien vers la feuille de style fichier xsl ltxml-stylesheet type=textxsllaquo
href=transformateurxslgt Ce fichier peut ecirctre local ou acceacutedeacute via une URL
Conception de Conception de DTDScheacutemaDTDScheacutema
Possible agrave partir drsquoune modeacutelisation ULM
Quelques outils de Quelques outils de travailtravail
Editeur Outil Support
Tibco Turbo XML DTD XSLScheacutema
Altova XMLSpy DTD Scheacutema XSL Xquery
SyncRO Ltd Oxygen DTD Scheacutema XSL Xquery
Data Junction XML Junction Scheacutema
Insight Soft XMLMate DTD ScheacutemaXSL XPath
XML Mind XMLMind Editor DTD ScheacutemaXSL XPath
Exemple DTDExemple DTD
Convertisseur TAC vers XML (metaf2xml)
ltENTITY cloudType AC|ACC|ACSL|AS|CB|CBMAM|CC|CCSL|CI|CS|CU|CF|CUFRA|NS|SAC|SC|SCSL|ST|SF|STFRA|TCUgt
ltENTITY colourCodes BLUplus|BLU|WHT|GRN|YLO|YLO1|YLO2|AMB|RED|FCSTCANCELgtltENTITY cloudCover FEW|SCT|BKN|OVCgtltENTITY cloudFamily 0|1|2|3|4|5|6|7|8|9gtltENTITY phenomDescr isFrequent|isOccasional|isIntermittent|isContinuous|isThick|
isPrettyThick|isVeryThick|isThin|isPrettyThin|isVeryThin|isFeeble|isPrettyFeeble|isVeryFeeble|isLight|isPrettyLight|isVeryLight|isModerate|isLow|isLower|isIsolated|isConvective|isDissipated|inPastHour|baseBelowStation|isAloft|isAround|isFreezing|isPatchygt
ltENTITY unitRadiation kJmm|JcmcmgtltENTITY unitSpeed KT|MPS|KMHgtltENTITY period 1d|24h|1h|ngtltENTITY compassDir N|NNE|NE|ENE|E|ESE|SE|SSE|S|SSW|SW|WSW|W|WNW|NW|NNWgt
Exemple DTDExemple DTD
ltELEMENT taf (ERROR WARNING obsStation issueTime fcstPeriod reportModifier fcstNotAvbl sfcWind (CAVOK | (visPrev weatherList cloudList visVert)) (turbulence | icing | windShearLvl | QNH) trendList (tempAt | tempMaxAt | tempMinAt | correctedAt |
amendedAt | limMetwatch | autoMetwatch | amendment) tafRemarkList)gtltATTLIST taf s CDATA REQUIREDgt
Exemple xmlExemple xml
ltxml version=10 encoding=UTF-8gtltdatagt ltoptionsgtltformat v=xml gt ltlang v=en gt ltmode v=latest gt
ltmsg_metaf v= gt ltmsg_synop v=AAXX 09004 08495 11459
30714 10147 20136 30151 40159 58005 60001 70511 83500 92350 gt
ltsrc_metaf v=noaa gt ltsrc_synop v=nws_land gt lttype_metaf v=metar gt lttype_synop v=synop gt ltoptionsgt ltreportsgt ltsynop s=AAXX 09004 08495
11459 30714 10147 20136 30151 40159 58005 60001 70511 83500 92350gt
ltobsStationType s=AAXXgt ltstationType v=AAXX gt ltobsStationTypegt ltobsTime s=0900gt ltday v=09 gt lthour
v=00 gt ltminute v=00 gt ltobsTimegt
ltwindIndicator s=4gtltwindUnit v=KT gt ltwindIndicatorgt
ltstationId s=08495gt ltid v=08495 gt ltregion v=VI gt
ltprecipInd s=1gt ltprecipIndVal v=1 gt ltprecipIndgt ltwxInd s=1gt ltwxIndVal v=1 gt ltwxIndgt ltbaseLowestCloud s=4gt ltfrom v=300 u=M gtltto v=600 u=M gt ltbaseLowestCloudgt ltvisPrev s=59gt ltdistance v=9 u=KM gt ltvisPrevgt lttotalCloudCover s=3gt ltoktas v=3 gt lttotalCloudCovergt ltsfcWind s=0714gt ltwindgt ltdir v=70 gt ltspeed v=14 u=KT gt ltwindgt ltsfcWindgt lttemperature s=10147 20136gt ltairgt lttemp v=147 u=C gtltairgt
Exemple Interface Exemple Interface WEBWEB
WIS XMLBUFRWIS XMLBUFR
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
-
Les PatternsLes Patterns
Contraintes sur type simple preacutedeacutefini Utilisation dexpression reacuteguliegraveres Similaires agrave celles de Perl
ExempleltxsdsimpleType name=NumItemgt ltxsdrestriction base=xsdstringgt
ltxsdpattern value=d3-[A-Z]2gt ltxsdrestrictiongt ltxsdsimpleTypegt
XML SchemaXML Schemaexemple (1)exemple (1)
ltxsdschema xmlnsxsd=httpwwww3org1999XMLSchemagt
ltxsdelement name=commande type=CommandeTypegt ltxsdelement name=commentaire type=xsdstringgt ltxsdcomplexType name=CommandeTypegt
ltxsdsequencegt ltxsdelement name=livrer type=Adressegt ltxsdelement name=facturer type=Adressegt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=produits type=ProduitTypegt
ltxsdsequencegt ltxsdattribute name=date_com type=xsddategt
ltxsdcomplexTypegt
XML Schema XML Schema exemple (2)exemple (2)
ltxsdcomplexType name=ProduitTypegt ltxsdsequencegt
ltxsdelement name=produit minOccurs=0 maxOccurs=unboundedgt ltxsdcomplexTypegt
ltxsdsequencegt ltxsdelement name=nom_prod type=xsdstringgt ltxsdelement name=quantitegt ltxsdsimpleTypegt ltxsdrestriction
base=xsdpositiveIntegergt ltxsdmaxExclusive value=100gt ltxsdrestrictiongt ltxsdsimpleTypegt ltxsdelementgt ltxsdelement name=prix type=xsddecimalgt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=date_livraison type=xsddate
minOccurs=0gt ltxsdsequencegt ltxsdattribute name=num_prod type=xsdpositiveInteger
use=requiredgt ltxsdcomplexTypegt
ltxsdelementgt ltxsdsequencegt ltxsdcomplexTypegt ltxsdschemagt
Feuille de styleFeuille de style
Feuille de styleFeuille de style
La repreacutesentation de cette lettre en XML ne comporte aucune indication sur sa mise en page Les aspects graphiques ou typographiques sont
absents du source XML Ces aspects seront deacutefinis par lrsquointermeacutediaire
drsquoune feuille de styleUne feuille de style est un ensemble de regravegles pour speacutecifier la reacutealisation concregravete drsquoun document sur un meacutedia particulierOn ajoute dans le deacutebut du fichier xml un lien vers la feuille de style fichier xsl ltxml-stylesheet type=textxsllaquo
href=transformateurxslgt Ce fichier peut ecirctre local ou acceacutedeacute via une URL
Conception de Conception de DTDScheacutemaDTDScheacutema
Possible agrave partir drsquoune modeacutelisation ULM
Quelques outils de Quelques outils de travailtravail
Editeur Outil Support
Tibco Turbo XML DTD XSLScheacutema
Altova XMLSpy DTD Scheacutema XSL Xquery
SyncRO Ltd Oxygen DTD Scheacutema XSL Xquery
Data Junction XML Junction Scheacutema
Insight Soft XMLMate DTD ScheacutemaXSL XPath
XML Mind XMLMind Editor DTD ScheacutemaXSL XPath
Exemple DTDExemple DTD
Convertisseur TAC vers XML (metaf2xml)
ltENTITY cloudType AC|ACC|ACSL|AS|CB|CBMAM|CC|CCSL|CI|CS|CU|CF|CUFRA|NS|SAC|SC|SCSL|ST|SF|STFRA|TCUgt
ltENTITY colourCodes BLUplus|BLU|WHT|GRN|YLO|YLO1|YLO2|AMB|RED|FCSTCANCELgtltENTITY cloudCover FEW|SCT|BKN|OVCgtltENTITY cloudFamily 0|1|2|3|4|5|6|7|8|9gtltENTITY phenomDescr isFrequent|isOccasional|isIntermittent|isContinuous|isThick|
isPrettyThick|isVeryThick|isThin|isPrettyThin|isVeryThin|isFeeble|isPrettyFeeble|isVeryFeeble|isLight|isPrettyLight|isVeryLight|isModerate|isLow|isLower|isIsolated|isConvective|isDissipated|inPastHour|baseBelowStation|isAloft|isAround|isFreezing|isPatchygt
ltENTITY unitRadiation kJmm|JcmcmgtltENTITY unitSpeed KT|MPS|KMHgtltENTITY period 1d|24h|1h|ngtltENTITY compassDir N|NNE|NE|ENE|E|ESE|SE|SSE|S|SSW|SW|WSW|W|WNW|NW|NNWgt
Exemple DTDExemple DTD
ltELEMENT taf (ERROR WARNING obsStation issueTime fcstPeriod reportModifier fcstNotAvbl sfcWind (CAVOK | (visPrev weatherList cloudList visVert)) (turbulence | icing | windShearLvl | QNH) trendList (tempAt | tempMaxAt | tempMinAt | correctedAt |
amendedAt | limMetwatch | autoMetwatch | amendment) tafRemarkList)gtltATTLIST taf s CDATA REQUIREDgt
Exemple xmlExemple xml
ltxml version=10 encoding=UTF-8gtltdatagt ltoptionsgtltformat v=xml gt ltlang v=en gt ltmode v=latest gt
ltmsg_metaf v= gt ltmsg_synop v=AAXX 09004 08495 11459
30714 10147 20136 30151 40159 58005 60001 70511 83500 92350 gt
ltsrc_metaf v=noaa gt ltsrc_synop v=nws_land gt lttype_metaf v=metar gt lttype_synop v=synop gt ltoptionsgt ltreportsgt ltsynop s=AAXX 09004 08495
11459 30714 10147 20136 30151 40159 58005 60001 70511 83500 92350gt
ltobsStationType s=AAXXgt ltstationType v=AAXX gt ltobsStationTypegt ltobsTime s=0900gt ltday v=09 gt lthour
v=00 gt ltminute v=00 gt ltobsTimegt
ltwindIndicator s=4gtltwindUnit v=KT gt ltwindIndicatorgt
ltstationId s=08495gt ltid v=08495 gt ltregion v=VI gt
ltprecipInd s=1gt ltprecipIndVal v=1 gt ltprecipIndgt ltwxInd s=1gt ltwxIndVal v=1 gt ltwxIndgt ltbaseLowestCloud s=4gt ltfrom v=300 u=M gtltto v=600 u=M gt ltbaseLowestCloudgt ltvisPrev s=59gt ltdistance v=9 u=KM gt ltvisPrevgt lttotalCloudCover s=3gt ltoktas v=3 gt lttotalCloudCovergt ltsfcWind s=0714gt ltwindgt ltdir v=70 gt ltspeed v=14 u=KT gt ltwindgt ltsfcWindgt lttemperature s=10147 20136gt ltairgt lttemp v=147 u=C gtltairgt
Exemple Interface Exemple Interface WEBWEB
WIS XMLBUFRWIS XMLBUFR
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
-
XML SchemaXML Schemaexemple (1)exemple (1)
ltxsdschema xmlnsxsd=httpwwww3org1999XMLSchemagt
ltxsdelement name=commande type=CommandeTypegt ltxsdelement name=commentaire type=xsdstringgt ltxsdcomplexType name=CommandeTypegt
ltxsdsequencegt ltxsdelement name=livrer type=Adressegt ltxsdelement name=facturer type=Adressegt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=produits type=ProduitTypegt
ltxsdsequencegt ltxsdattribute name=date_com type=xsddategt
ltxsdcomplexTypegt
XML Schema XML Schema exemple (2)exemple (2)
ltxsdcomplexType name=ProduitTypegt ltxsdsequencegt
ltxsdelement name=produit minOccurs=0 maxOccurs=unboundedgt ltxsdcomplexTypegt
ltxsdsequencegt ltxsdelement name=nom_prod type=xsdstringgt ltxsdelement name=quantitegt ltxsdsimpleTypegt ltxsdrestriction
base=xsdpositiveIntegergt ltxsdmaxExclusive value=100gt ltxsdrestrictiongt ltxsdsimpleTypegt ltxsdelementgt ltxsdelement name=prix type=xsddecimalgt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=date_livraison type=xsddate
minOccurs=0gt ltxsdsequencegt ltxsdattribute name=num_prod type=xsdpositiveInteger
use=requiredgt ltxsdcomplexTypegt
ltxsdelementgt ltxsdsequencegt ltxsdcomplexTypegt ltxsdschemagt
Feuille de styleFeuille de style
Feuille de styleFeuille de style
La repreacutesentation de cette lettre en XML ne comporte aucune indication sur sa mise en page Les aspects graphiques ou typographiques sont
absents du source XML Ces aspects seront deacutefinis par lrsquointermeacutediaire
drsquoune feuille de styleUne feuille de style est un ensemble de regravegles pour speacutecifier la reacutealisation concregravete drsquoun document sur un meacutedia particulierOn ajoute dans le deacutebut du fichier xml un lien vers la feuille de style fichier xsl ltxml-stylesheet type=textxsllaquo
href=transformateurxslgt Ce fichier peut ecirctre local ou acceacutedeacute via une URL
Conception de Conception de DTDScheacutemaDTDScheacutema
Possible agrave partir drsquoune modeacutelisation ULM
Quelques outils de Quelques outils de travailtravail
Editeur Outil Support
Tibco Turbo XML DTD XSLScheacutema
Altova XMLSpy DTD Scheacutema XSL Xquery
SyncRO Ltd Oxygen DTD Scheacutema XSL Xquery
Data Junction XML Junction Scheacutema
Insight Soft XMLMate DTD ScheacutemaXSL XPath
XML Mind XMLMind Editor DTD ScheacutemaXSL XPath
Exemple DTDExemple DTD
Convertisseur TAC vers XML (metaf2xml)
ltENTITY cloudType AC|ACC|ACSL|AS|CB|CBMAM|CC|CCSL|CI|CS|CU|CF|CUFRA|NS|SAC|SC|SCSL|ST|SF|STFRA|TCUgt
ltENTITY colourCodes BLUplus|BLU|WHT|GRN|YLO|YLO1|YLO2|AMB|RED|FCSTCANCELgtltENTITY cloudCover FEW|SCT|BKN|OVCgtltENTITY cloudFamily 0|1|2|3|4|5|6|7|8|9gtltENTITY phenomDescr isFrequent|isOccasional|isIntermittent|isContinuous|isThick|
isPrettyThick|isVeryThick|isThin|isPrettyThin|isVeryThin|isFeeble|isPrettyFeeble|isVeryFeeble|isLight|isPrettyLight|isVeryLight|isModerate|isLow|isLower|isIsolated|isConvective|isDissipated|inPastHour|baseBelowStation|isAloft|isAround|isFreezing|isPatchygt
ltENTITY unitRadiation kJmm|JcmcmgtltENTITY unitSpeed KT|MPS|KMHgtltENTITY period 1d|24h|1h|ngtltENTITY compassDir N|NNE|NE|ENE|E|ESE|SE|SSE|S|SSW|SW|WSW|W|WNW|NW|NNWgt
Exemple DTDExemple DTD
ltELEMENT taf (ERROR WARNING obsStation issueTime fcstPeriod reportModifier fcstNotAvbl sfcWind (CAVOK | (visPrev weatherList cloudList visVert)) (turbulence | icing | windShearLvl | QNH) trendList (tempAt | tempMaxAt | tempMinAt | correctedAt |
amendedAt | limMetwatch | autoMetwatch | amendment) tafRemarkList)gtltATTLIST taf s CDATA REQUIREDgt
Exemple xmlExemple xml
ltxml version=10 encoding=UTF-8gtltdatagt ltoptionsgtltformat v=xml gt ltlang v=en gt ltmode v=latest gt
ltmsg_metaf v= gt ltmsg_synop v=AAXX 09004 08495 11459
30714 10147 20136 30151 40159 58005 60001 70511 83500 92350 gt
ltsrc_metaf v=noaa gt ltsrc_synop v=nws_land gt lttype_metaf v=metar gt lttype_synop v=synop gt ltoptionsgt ltreportsgt ltsynop s=AAXX 09004 08495
11459 30714 10147 20136 30151 40159 58005 60001 70511 83500 92350gt
ltobsStationType s=AAXXgt ltstationType v=AAXX gt ltobsStationTypegt ltobsTime s=0900gt ltday v=09 gt lthour
v=00 gt ltminute v=00 gt ltobsTimegt
ltwindIndicator s=4gtltwindUnit v=KT gt ltwindIndicatorgt
ltstationId s=08495gt ltid v=08495 gt ltregion v=VI gt
ltprecipInd s=1gt ltprecipIndVal v=1 gt ltprecipIndgt ltwxInd s=1gt ltwxIndVal v=1 gt ltwxIndgt ltbaseLowestCloud s=4gt ltfrom v=300 u=M gtltto v=600 u=M gt ltbaseLowestCloudgt ltvisPrev s=59gt ltdistance v=9 u=KM gt ltvisPrevgt lttotalCloudCover s=3gt ltoktas v=3 gt lttotalCloudCovergt ltsfcWind s=0714gt ltwindgt ltdir v=70 gt ltspeed v=14 u=KT gt ltwindgt ltsfcWindgt lttemperature s=10147 20136gt ltairgt lttemp v=147 u=C gtltairgt
Exemple Interface Exemple Interface WEBWEB
WIS XMLBUFRWIS XMLBUFR
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
-
XML Schema XML Schema exemple (2)exemple (2)
ltxsdcomplexType name=ProduitTypegt ltxsdsequencegt
ltxsdelement name=produit minOccurs=0 maxOccurs=unboundedgt ltxsdcomplexTypegt
ltxsdsequencegt ltxsdelement name=nom_prod type=xsdstringgt ltxsdelement name=quantitegt ltxsdsimpleTypegt ltxsdrestriction
base=xsdpositiveIntegergt ltxsdmaxExclusive value=100gt ltxsdrestrictiongt ltxsdsimpleTypegt ltxsdelementgt ltxsdelement name=prix type=xsddecimalgt ltxsdelement ref=commentaire minOccurs=0gt ltxsdelement name=date_livraison type=xsddate
minOccurs=0gt ltxsdsequencegt ltxsdattribute name=num_prod type=xsdpositiveInteger
use=requiredgt ltxsdcomplexTypegt
ltxsdelementgt ltxsdsequencegt ltxsdcomplexTypegt ltxsdschemagt
Feuille de styleFeuille de style
Feuille de styleFeuille de style
La repreacutesentation de cette lettre en XML ne comporte aucune indication sur sa mise en page Les aspects graphiques ou typographiques sont
absents du source XML Ces aspects seront deacutefinis par lrsquointermeacutediaire
drsquoune feuille de styleUne feuille de style est un ensemble de regravegles pour speacutecifier la reacutealisation concregravete drsquoun document sur un meacutedia particulierOn ajoute dans le deacutebut du fichier xml un lien vers la feuille de style fichier xsl ltxml-stylesheet type=textxsllaquo
href=transformateurxslgt Ce fichier peut ecirctre local ou acceacutedeacute via une URL
Conception de Conception de DTDScheacutemaDTDScheacutema
Possible agrave partir drsquoune modeacutelisation ULM
Quelques outils de Quelques outils de travailtravail
Editeur Outil Support
Tibco Turbo XML DTD XSLScheacutema
Altova XMLSpy DTD Scheacutema XSL Xquery
SyncRO Ltd Oxygen DTD Scheacutema XSL Xquery
Data Junction XML Junction Scheacutema
Insight Soft XMLMate DTD ScheacutemaXSL XPath
XML Mind XMLMind Editor DTD ScheacutemaXSL XPath
Exemple DTDExemple DTD
Convertisseur TAC vers XML (metaf2xml)
ltENTITY cloudType AC|ACC|ACSL|AS|CB|CBMAM|CC|CCSL|CI|CS|CU|CF|CUFRA|NS|SAC|SC|SCSL|ST|SF|STFRA|TCUgt
ltENTITY colourCodes BLUplus|BLU|WHT|GRN|YLO|YLO1|YLO2|AMB|RED|FCSTCANCELgtltENTITY cloudCover FEW|SCT|BKN|OVCgtltENTITY cloudFamily 0|1|2|3|4|5|6|7|8|9gtltENTITY phenomDescr isFrequent|isOccasional|isIntermittent|isContinuous|isThick|
isPrettyThick|isVeryThick|isThin|isPrettyThin|isVeryThin|isFeeble|isPrettyFeeble|isVeryFeeble|isLight|isPrettyLight|isVeryLight|isModerate|isLow|isLower|isIsolated|isConvective|isDissipated|inPastHour|baseBelowStation|isAloft|isAround|isFreezing|isPatchygt
ltENTITY unitRadiation kJmm|JcmcmgtltENTITY unitSpeed KT|MPS|KMHgtltENTITY period 1d|24h|1h|ngtltENTITY compassDir N|NNE|NE|ENE|E|ESE|SE|SSE|S|SSW|SW|WSW|W|WNW|NW|NNWgt
Exemple DTDExemple DTD
ltELEMENT taf (ERROR WARNING obsStation issueTime fcstPeriod reportModifier fcstNotAvbl sfcWind (CAVOK | (visPrev weatherList cloudList visVert)) (turbulence | icing | windShearLvl | QNH) trendList (tempAt | tempMaxAt | tempMinAt | correctedAt |
amendedAt | limMetwatch | autoMetwatch | amendment) tafRemarkList)gtltATTLIST taf s CDATA REQUIREDgt
Exemple xmlExemple xml
ltxml version=10 encoding=UTF-8gtltdatagt ltoptionsgtltformat v=xml gt ltlang v=en gt ltmode v=latest gt
ltmsg_metaf v= gt ltmsg_synop v=AAXX 09004 08495 11459
30714 10147 20136 30151 40159 58005 60001 70511 83500 92350 gt
ltsrc_metaf v=noaa gt ltsrc_synop v=nws_land gt lttype_metaf v=metar gt lttype_synop v=synop gt ltoptionsgt ltreportsgt ltsynop s=AAXX 09004 08495
11459 30714 10147 20136 30151 40159 58005 60001 70511 83500 92350gt
ltobsStationType s=AAXXgt ltstationType v=AAXX gt ltobsStationTypegt ltobsTime s=0900gt ltday v=09 gt lthour
v=00 gt ltminute v=00 gt ltobsTimegt
ltwindIndicator s=4gtltwindUnit v=KT gt ltwindIndicatorgt
ltstationId s=08495gt ltid v=08495 gt ltregion v=VI gt
ltprecipInd s=1gt ltprecipIndVal v=1 gt ltprecipIndgt ltwxInd s=1gt ltwxIndVal v=1 gt ltwxIndgt ltbaseLowestCloud s=4gt ltfrom v=300 u=M gtltto v=600 u=M gt ltbaseLowestCloudgt ltvisPrev s=59gt ltdistance v=9 u=KM gt ltvisPrevgt lttotalCloudCover s=3gt ltoktas v=3 gt lttotalCloudCovergt ltsfcWind s=0714gt ltwindgt ltdir v=70 gt ltspeed v=14 u=KT gt ltwindgt ltsfcWindgt lttemperature s=10147 20136gt ltairgt lttemp v=147 u=C gtltairgt
Exemple Interface Exemple Interface WEBWEB
WIS XMLBUFRWIS XMLBUFR
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
-
Feuille de styleFeuille de style
Feuille de styleFeuille de style
La repreacutesentation de cette lettre en XML ne comporte aucune indication sur sa mise en page Les aspects graphiques ou typographiques sont
absents du source XML Ces aspects seront deacutefinis par lrsquointermeacutediaire
drsquoune feuille de styleUne feuille de style est un ensemble de regravegles pour speacutecifier la reacutealisation concregravete drsquoun document sur un meacutedia particulierOn ajoute dans le deacutebut du fichier xml un lien vers la feuille de style fichier xsl ltxml-stylesheet type=textxsllaquo
href=transformateurxslgt Ce fichier peut ecirctre local ou acceacutedeacute via une URL
Conception de Conception de DTDScheacutemaDTDScheacutema
Possible agrave partir drsquoune modeacutelisation ULM
Quelques outils de Quelques outils de travailtravail
Editeur Outil Support
Tibco Turbo XML DTD XSLScheacutema
Altova XMLSpy DTD Scheacutema XSL Xquery
SyncRO Ltd Oxygen DTD Scheacutema XSL Xquery
Data Junction XML Junction Scheacutema
Insight Soft XMLMate DTD ScheacutemaXSL XPath
XML Mind XMLMind Editor DTD ScheacutemaXSL XPath
Exemple DTDExemple DTD
Convertisseur TAC vers XML (metaf2xml)
ltENTITY cloudType AC|ACC|ACSL|AS|CB|CBMAM|CC|CCSL|CI|CS|CU|CF|CUFRA|NS|SAC|SC|SCSL|ST|SF|STFRA|TCUgt
ltENTITY colourCodes BLUplus|BLU|WHT|GRN|YLO|YLO1|YLO2|AMB|RED|FCSTCANCELgtltENTITY cloudCover FEW|SCT|BKN|OVCgtltENTITY cloudFamily 0|1|2|3|4|5|6|7|8|9gtltENTITY phenomDescr isFrequent|isOccasional|isIntermittent|isContinuous|isThick|
isPrettyThick|isVeryThick|isThin|isPrettyThin|isVeryThin|isFeeble|isPrettyFeeble|isVeryFeeble|isLight|isPrettyLight|isVeryLight|isModerate|isLow|isLower|isIsolated|isConvective|isDissipated|inPastHour|baseBelowStation|isAloft|isAround|isFreezing|isPatchygt
ltENTITY unitRadiation kJmm|JcmcmgtltENTITY unitSpeed KT|MPS|KMHgtltENTITY period 1d|24h|1h|ngtltENTITY compassDir N|NNE|NE|ENE|E|ESE|SE|SSE|S|SSW|SW|WSW|W|WNW|NW|NNWgt
Exemple DTDExemple DTD
ltELEMENT taf (ERROR WARNING obsStation issueTime fcstPeriod reportModifier fcstNotAvbl sfcWind (CAVOK | (visPrev weatherList cloudList visVert)) (turbulence | icing | windShearLvl | QNH) trendList (tempAt | tempMaxAt | tempMinAt | correctedAt |
amendedAt | limMetwatch | autoMetwatch | amendment) tafRemarkList)gtltATTLIST taf s CDATA REQUIREDgt
Exemple xmlExemple xml
ltxml version=10 encoding=UTF-8gtltdatagt ltoptionsgtltformat v=xml gt ltlang v=en gt ltmode v=latest gt
ltmsg_metaf v= gt ltmsg_synop v=AAXX 09004 08495 11459
30714 10147 20136 30151 40159 58005 60001 70511 83500 92350 gt
ltsrc_metaf v=noaa gt ltsrc_synop v=nws_land gt lttype_metaf v=metar gt lttype_synop v=synop gt ltoptionsgt ltreportsgt ltsynop s=AAXX 09004 08495
11459 30714 10147 20136 30151 40159 58005 60001 70511 83500 92350gt
ltobsStationType s=AAXXgt ltstationType v=AAXX gt ltobsStationTypegt ltobsTime s=0900gt ltday v=09 gt lthour
v=00 gt ltminute v=00 gt ltobsTimegt
ltwindIndicator s=4gtltwindUnit v=KT gt ltwindIndicatorgt
ltstationId s=08495gt ltid v=08495 gt ltregion v=VI gt
ltprecipInd s=1gt ltprecipIndVal v=1 gt ltprecipIndgt ltwxInd s=1gt ltwxIndVal v=1 gt ltwxIndgt ltbaseLowestCloud s=4gt ltfrom v=300 u=M gtltto v=600 u=M gt ltbaseLowestCloudgt ltvisPrev s=59gt ltdistance v=9 u=KM gt ltvisPrevgt lttotalCloudCover s=3gt ltoktas v=3 gt lttotalCloudCovergt ltsfcWind s=0714gt ltwindgt ltdir v=70 gt ltspeed v=14 u=KT gt ltwindgt ltsfcWindgt lttemperature s=10147 20136gt ltairgt lttemp v=147 u=C gtltairgt
Exemple Interface Exemple Interface WEBWEB
WIS XMLBUFRWIS XMLBUFR
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
-
Feuille de styleFeuille de style
La repreacutesentation de cette lettre en XML ne comporte aucune indication sur sa mise en page Les aspects graphiques ou typographiques sont
absents du source XML Ces aspects seront deacutefinis par lrsquointermeacutediaire
drsquoune feuille de styleUne feuille de style est un ensemble de regravegles pour speacutecifier la reacutealisation concregravete drsquoun document sur un meacutedia particulierOn ajoute dans le deacutebut du fichier xml un lien vers la feuille de style fichier xsl ltxml-stylesheet type=textxsllaquo
href=transformateurxslgt Ce fichier peut ecirctre local ou acceacutedeacute via une URL
Conception de Conception de DTDScheacutemaDTDScheacutema
Possible agrave partir drsquoune modeacutelisation ULM
Quelques outils de Quelques outils de travailtravail
Editeur Outil Support
Tibco Turbo XML DTD XSLScheacutema
Altova XMLSpy DTD Scheacutema XSL Xquery
SyncRO Ltd Oxygen DTD Scheacutema XSL Xquery
Data Junction XML Junction Scheacutema
Insight Soft XMLMate DTD ScheacutemaXSL XPath
XML Mind XMLMind Editor DTD ScheacutemaXSL XPath
Exemple DTDExemple DTD
Convertisseur TAC vers XML (metaf2xml)
ltENTITY cloudType AC|ACC|ACSL|AS|CB|CBMAM|CC|CCSL|CI|CS|CU|CF|CUFRA|NS|SAC|SC|SCSL|ST|SF|STFRA|TCUgt
ltENTITY colourCodes BLUplus|BLU|WHT|GRN|YLO|YLO1|YLO2|AMB|RED|FCSTCANCELgtltENTITY cloudCover FEW|SCT|BKN|OVCgtltENTITY cloudFamily 0|1|2|3|4|5|6|7|8|9gtltENTITY phenomDescr isFrequent|isOccasional|isIntermittent|isContinuous|isThick|
isPrettyThick|isVeryThick|isThin|isPrettyThin|isVeryThin|isFeeble|isPrettyFeeble|isVeryFeeble|isLight|isPrettyLight|isVeryLight|isModerate|isLow|isLower|isIsolated|isConvective|isDissipated|inPastHour|baseBelowStation|isAloft|isAround|isFreezing|isPatchygt
ltENTITY unitRadiation kJmm|JcmcmgtltENTITY unitSpeed KT|MPS|KMHgtltENTITY period 1d|24h|1h|ngtltENTITY compassDir N|NNE|NE|ENE|E|ESE|SE|SSE|S|SSW|SW|WSW|W|WNW|NW|NNWgt
Exemple DTDExemple DTD
ltELEMENT taf (ERROR WARNING obsStation issueTime fcstPeriod reportModifier fcstNotAvbl sfcWind (CAVOK | (visPrev weatherList cloudList visVert)) (turbulence | icing | windShearLvl | QNH) trendList (tempAt | tempMaxAt | tempMinAt | correctedAt |
amendedAt | limMetwatch | autoMetwatch | amendment) tafRemarkList)gtltATTLIST taf s CDATA REQUIREDgt
Exemple xmlExemple xml
ltxml version=10 encoding=UTF-8gtltdatagt ltoptionsgtltformat v=xml gt ltlang v=en gt ltmode v=latest gt
ltmsg_metaf v= gt ltmsg_synop v=AAXX 09004 08495 11459
30714 10147 20136 30151 40159 58005 60001 70511 83500 92350 gt
ltsrc_metaf v=noaa gt ltsrc_synop v=nws_land gt lttype_metaf v=metar gt lttype_synop v=synop gt ltoptionsgt ltreportsgt ltsynop s=AAXX 09004 08495
11459 30714 10147 20136 30151 40159 58005 60001 70511 83500 92350gt
ltobsStationType s=AAXXgt ltstationType v=AAXX gt ltobsStationTypegt ltobsTime s=0900gt ltday v=09 gt lthour
v=00 gt ltminute v=00 gt ltobsTimegt
ltwindIndicator s=4gtltwindUnit v=KT gt ltwindIndicatorgt
ltstationId s=08495gt ltid v=08495 gt ltregion v=VI gt
ltprecipInd s=1gt ltprecipIndVal v=1 gt ltprecipIndgt ltwxInd s=1gt ltwxIndVal v=1 gt ltwxIndgt ltbaseLowestCloud s=4gt ltfrom v=300 u=M gtltto v=600 u=M gt ltbaseLowestCloudgt ltvisPrev s=59gt ltdistance v=9 u=KM gt ltvisPrevgt lttotalCloudCover s=3gt ltoktas v=3 gt lttotalCloudCovergt ltsfcWind s=0714gt ltwindgt ltdir v=70 gt ltspeed v=14 u=KT gt ltwindgt ltsfcWindgt lttemperature s=10147 20136gt ltairgt lttemp v=147 u=C gtltairgt
Exemple Interface Exemple Interface WEBWEB
WIS XMLBUFRWIS XMLBUFR
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
-
Conception de Conception de DTDScheacutemaDTDScheacutema
Possible agrave partir drsquoune modeacutelisation ULM
Quelques outils de Quelques outils de travailtravail
Editeur Outil Support
Tibco Turbo XML DTD XSLScheacutema
Altova XMLSpy DTD Scheacutema XSL Xquery
SyncRO Ltd Oxygen DTD Scheacutema XSL Xquery
Data Junction XML Junction Scheacutema
Insight Soft XMLMate DTD ScheacutemaXSL XPath
XML Mind XMLMind Editor DTD ScheacutemaXSL XPath
Exemple DTDExemple DTD
Convertisseur TAC vers XML (metaf2xml)
ltENTITY cloudType AC|ACC|ACSL|AS|CB|CBMAM|CC|CCSL|CI|CS|CU|CF|CUFRA|NS|SAC|SC|SCSL|ST|SF|STFRA|TCUgt
ltENTITY colourCodes BLUplus|BLU|WHT|GRN|YLO|YLO1|YLO2|AMB|RED|FCSTCANCELgtltENTITY cloudCover FEW|SCT|BKN|OVCgtltENTITY cloudFamily 0|1|2|3|4|5|6|7|8|9gtltENTITY phenomDescr isFrequent|isOccasional|isIntermittent|isContinuous|isThick|
isPrettyThick|isVeryThick|isThin|isPrettyThin|isVeryThin|isFeeble|isPrettyFeeble|isVeryFeeble|isLight|isPrettyLight|isVeryLight|isModerate|isLow|isLower|isIsolated|isConvective|isDissipated|inPastHour|baseBelowStation|isAloft|isAround|isFreezing|isPatchygt
ltENTITY unitRadiation kJmm|JcmcmgtltENTITY unitSpeed KT|MPS|KMHgtltENTITY period 1d|24h|1h|ngtltENTITY compassDir N|NNE|NE|ENE|E|ESE|SE|SSE|S|SSW|SW|WSW|W|WNW|NW|NNWgt
Exemple DTDExemple DTD
ltELEMENT taf (ERROR WARNING obsStation issueTime fcstPeriod reportModifier fcstNotAvbl sfcWind (CAVOK | (visPrev weatherList cloudList visVert)) (turbulence | icing | windShearLvl | QNH) trendList (tempAt | tempMaxAt | tempMinAt | correctedAt |
amendedAt | limMetwatch | autoMetwatch | amendment) tafRemarkList)gtltATTLIST taf s CDATA REQUIREDgt
Exemple xmlExemple xml
ltxml version=10 encoding=UTF-8gtltdatagt ltoptionsgtltformat v=xml gt ltlang v=en gt ltmode v=latest gt
ltmsg_metaf v= gt ltmsg_synop v=AAXX 09004 08495 11459
30714 10147 20136 30151 40159 58005 60001 70511 83500 92350 gt
ltsrc_metaf v=noaa gt ltsrc_synop v=nws_land gt lttype_metaf v=metar gt lttype_synop v=synop gt ltoptionsgt ltreportsgt ltsynop s=AAXX 09004 08495
11459 30714 10147 20136 30151 40159 58005 60001 70511 83500 92350gt
ltobsStationType s=AAXXgt ltstationType v=AAXX gt ltobsStationTypegt ltobsTime s=0900gt ltday v=09 gt lthour
v=00 gt ltminute v=00 gt ltobsTimegt
ltwindIndicator s=4gtltwindUnit v=KT gt ltwindIndicatorgt
ltstationId s=08495gt ltid v=08495 gt ltregion v=VI gt
ltprecipInd s=1gt ltprecipIndVal v=1 gt ltprecipIndgt ltwxInd s=1gt ltwxIndVal v=1 gt ltwxIndgt ltbaseLowestCloud s=4gt ltfrom v=300 u=M gtltto v=600 u=M gt ltbaseLowestCloudgt ltvisPrev s=59gt ltdistance v=9 u=KM gt ltvisPrevgt lttotalCloudCover s=3gt ltoktas v=3 gt lttotalCloudCovergt ltsfcWind s=0714gt ltwindgt ltdir v=70 gt ltspeed v=14 u=KT gt ltwindgt ltsfcWindgt lttemperature s=10147 20136gt ltairgt lttemp v=147 u=C gtltairgt
Exemple Interface Exemple Interface WEBWEB
WIS XMLBUFRWIS XMLBUFR
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
-
Quelques outils de Quelques outils de travailtravail
Editeur Outil Support
Tibco Turbo XML DTD XSLScheacutema
Altova XMLSpy DTD Scheacutema XSL Xquery
SyncRO Ltd Oxygen DTD Scheacutema XSL Xquery
Data Junction XML Junction Scheacutema
Insight Soft XMLMate DTD ScheacutemaXSL XPath
XML Mind XMLMind Editor DTD ScheacutemaXSL XPath
Exemple DTDExemple DTD
Convertisseur TAC vers XML (metaf2xml)
ltENTITY cloudType AC|ACC|ACSL|AS|CB|CBMAM|CC|CCSL|CI|CS|CU|CF|CUFRA|NS|SAC|SC|SCSL|ST|SF|STFRA|TCUgt
ltENTITY colourCodes BLUplus|BLU|WHT|GRN|YLO|YLO1|YLO2|AMB|RED|FCSTCANCELgtltENTITY cloudCover FEW|SCT|BKN|OVCgtltENTITY cloudFamily 0|1|2|3|4|5|6|7|8|9gtltENTITY phenomDescr isFrequent|isOccasional|isIntermittent|isContinuous|isThick|
isPrettyThick|isVeryThick|isThin|isPrettyThin|isVeryThin|isFeeble|isPrettyFeeble|isVeryFeeble|isLight|isPrettyLight|isVeryLight|isModerate|isLow|isLower|isIsolated|isConvective|isDissipated|inPastHour|baseBelowStation|isAloft|isAround|isFreezing|isPatchygt
ltENTITY unitRadiation kJmm|JcmcmgtltENTITY unitSpeed KT|MPS|KMHgtltENTITY period 1d|24h|1h|ngtltENTITY compassDir N|NNE|NE|ENE|E|ESE|SE|SSE|S|SSW|SW|WSW|W|WNW|NW|NNWgt
Exemple DTDExemple DTD
ltELEMENT taf (ERROR WARNING obsStation issueTime fcstPeriod reportModifier fcstNotAvbl sfcWind (CAVOK | (visPrev weatherList cloudList visVert)) (turbulence | icing | windShearLvl | QNH) trendList (tempAt | tempMaxAt | tempMinAt | correctedAt |
amendedAt | limMetwatch | autoMetwatch | amendment) tafRemarkList)gtltATTLIST taf s CDATA REQUIREDgt
Exemple xmlExemple xml
ltxml version=10 encoding=UTF-8gtltdatagt ltoptionsgtltformat v=xml gt ltlang v=en gt ltmode v=latest gt
ltmsg_metaf v= gt ltmsg_synop v=AAXX 09004 08495 11459
30714 10147 20136 30151 40159 58005 60001 70511 83500 92350 gt
ltsrc_metaf v=noaa gt ltsrc_synop v=nws_land gt lttype_metaf v=metar gt lttype_synop v=synop gt ltoptionsgt ltreportsgt ltsynop s=AAXX 09004 08495
11459 30714 10147 20136 30151 40159 58005 60001 70511 83500 92350gt
ltobsStationType s=AAXXgt ltstationType v=AAXX gt ltobsStationTypegt ltobsTime s=0900gt ltday v=09 gt lthour
v=00 gt ltminute v=00 gt ltobsTimegt
ltwindIndicator s=4gtltwindUnit v=KT gt ltwindIndicatorgt
ltstationId s=08495gt ltid v=08495 gt ltregion v=VI gt
ltprecipInd s=1gt ltprecipIndVal v=1 gt ltprecipIndgt ltwxInd s=1gt ltwxIndVal v=1 gt ltwxIndgt ltbaseLowestCloud s=4gt ltfrom v=300 u=M gtltto v=600 u=M gt ltbaseLowestCloudgt ltvisPrev s=59gt ltdistance v=9 u=KM gt ltvisPrevgt lttotalCloudCover s=3gt ltoktas v=3 gt lttotalCloudCovergt ltsfcWind s=0714gt ltwindgt ltdir v=70 gt ltspeed v=14 u=KT gt ltwindgt ltsfcWindgt lttemperature s=10147 20136gt ltairgt lttemp v=147 u=C gtltairgt
Exemple Interface Exemple Interface WEBWEB
WIS XMLBUFRWIS XMLBUFR
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
-
Exemple DTDExemple DTD
Convertisseur TAC vers XML (metaf2xml)
ltENTITY cloudType AC|ACC|ACSL|AS|CB|CBMAM|CC|CCSL|CI|CS|CU|CF|CUFRA|NS|SAC|SC|SCSL|ST|SF|STFRA|TCUgt
ltENTITY colourCodes BLUplus|BLU|WHT|GRN|YLO|YLO1|YLO2|AMB|RED|FCSTCANCELgtltENTITY cloudCover FEW|SCT|BKN|OVCgtltENTITY cloudFamily 0|1|2|3|4|5|6|7|8|9gtltENTITY phenomDescr isFrequent|isOccasional|isIntermittent|isContinuous|isThick|
isPrettyThick|isVeryThick|isThin|isPrettyThin|isVeryThin|isFeeble|isPrettyFeeble|isVeryFeeble|isLight|isPrettyLight|isVeryLight|isModerate|isLow|isLower|isIsolated|isConvective|isDissipated|inPastHour|baseBelowStation|isAloft|isAround|isFreezing|isPatchygt
ltENTITY unitRadiation kJmm|JcmcmgtltENTITY unitSpeed KT|MPS|KMHgtltENTITY period 1d|24h|1h|ngtltENTITY compassDir N|NNE|NE|ENE|E|ESE|SE|SSE|S|SSW|SW|WSW|W|WNW|NW|NNWgt
Exemple DTDExemple DTD
ltELEMENT taf (ERROR WARNING obsStation issueTime fcstPeriod reportModifier fcstNotAvbl sfcWind (CAVOK | (visPrev weatherList cloudList visVert)) (turbulence | icing | windShearLvl | QNH) trendList (tempAt | tempMaxAt | tempMinAt | correctedAt |
amendedAt | limMetwatch | autoMetwatch | amendment) tafRemarkList)gtltATTLIST taf s CDATA REQUIREDgt
Exemple xmlExemple xml
ltxml version=10 encoding=UTF-8gtltdatagt ltoptionsgtltformat v=xml gt ltlang v=en gt ltmode v=latest gt
ltmsg_metaf v= gt ltmsg_synop v=AAXX 09004 08495 11459
30714 10147 20136 30151 40159 58005 60001 70511 83500 92350 gt
ltsrc_metaf v=noaa gt ltsrc_synop v=nws_land gt lttype_metaf v=metar gt lttype_synop v=synop gt ltoptionsgt ltreportsgt ltsynop s=AAXX 09004 08495
11459 30714 10147 20136 30151 40159 58005 60001 70511 83500 92350gt
ltobsStationType s=AAXXgt ltstationType v=AAXX gt ltobsStationTypegt ltobsTime s=0900gt ltday v=09 gt lthour
v=00 gt ltminute v=00 gt ltobsTimegt
ltwindIndicator s=4gtltwindUnit v=KT gt ltwindIndicatorgt
ltstationId s=08495gt ltid v=08495 gt ltregion v=VI gt
ltprecipInd s=1gt ltprecipIndVal v=1 gt ltprecipIndgt ltwxInd s=1gt ltwxIndVal v=1 gt ltwxIndgt ltbaseLowestCloud s=4gt ltfrom v=300 u=M gtltto v=600 u=M gt ltbaseLowestCloudgt ltvisPrev s=59gt ltdistance v=9 u=KM gt ltvisPrevgt lttotalCloudCover s=3gt ltoktas v=3 gt lttotalCloudCovergt ltsfcWind s=0714gt ltwindgt ltdir v=70 gt ltspeed v=14 u=KT gt ltwindgt ltsfcWindgt lttemperature s=10147 20136gt ltairgt lttemp v=147 u=C gtltairgt
Exemple Interface Exemple Interface WEBWEB
WIS XMLBUFRWIS XMLBUFR
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
-
Exemple DTDExemple DTD
ltELEMENT taf (ERROR WARNING obsStation issueTime fcstPeriod reportModifier fcstNotAvbl sfcWind (CAVOK | (visPrev weatherList cloudList visVert)) (turbulence | icing | windShearLvl | QNH) trendList (tempAt | tempMaxAt | tempMinAt | correctedAt |
amendedAt | limMetwatch | autoMetwatch | amendment) tafRemarkList)gtltATTLIST taf s CDATA REQUIREDgt
Exemple xmlExemple xml
ltxml version=10 encoding=UTF-8gtltdatagt ltoptionsgtltformat v=xml gt ltlang v=en gt ltmode v=latest gt
ltmsg_metaf v= gt ltmsg_synop v=AAXX 09004 08495 11459
30714 10147 20136 30151 40159 58005 60001 70511 83500 92350 gt
ltsrc_metaf v=noaa gt ltsrc_synop v=nws_land gt lttype_metaf v=metar gt lttype_synop v=synop gt ltoptionsgt ltreportsgt ltsynop s=AAXX 09004 08495
11459 30714 10147 20136 30151 40159 58005 60001 70511 83500 92350gt
ltobsStationType s=AAXXgt ltstationType v=AAXX gt ltobsStationTypegt ltobsTime s=0900gt ltday v=09 gt lthour
v=00 gt ltminute v=00 gt ltobsTimegt
ltwindIndicator s=4gtltwindUnit v=KT gt ltwindIndicatorgt
ltstationId s=08495gt ltid v=08495 gt ltregion v=VI gt
ltprecipInd s=1gt ltprecipIndVal v=1 gt ltprecipIndgt ltwxInd s=1gt ltwxIndVal v=1 gt ltwxIndgt ltbaseLowestCloud s=4gt ltfrom v=300 u=M gtltto v=600 u=M gt ltbaseLowestCloudgt ltvisPrev s=59gt ltdistance v=9 u=KM gt ltvisPrevgt lttotalCloudCover s=3gt ltoktas v=3 gt lttotalCloudCovergt ltsfcWind s=0714gt ltwindgt ltdir v=70 gt ltspeed v=14 u=KT gt ltwindgt ltsfcWindgt lttemperature s=10147 20136gt ltairgt lttemp v=147 u=C gtltairgt
Exemple Interface Exemple Interface WEBWEB
WIS XMLBUFRWIS XMLBUFR
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
-
Exemple xmlExemple xml
ltxml version=10 encoding=UTF-8gtltdatagt ltoptionsgtltformat v=xml gt ltlang v=en gt ltmode v=latest gt
ltmsg_metaf v= gt ltmsg_synop v=AAXX 09004 08495 11459
30714 10147 20136 30151 40159 58005 60001 70511 83500 92350 gt
ltsrc_metaf v=noaa gt ltsrc_synop v=nws_land gt lttype_metaf v=metar gt lttype_synop v=synop gt ltoptionsgt ltreportsgt ltsynop s=AAXX 09004 08495
11459 30714 10147 20136 30151 40159 58005 60001 70511 83500 92350gt
ltobsStationType s=AAXXgt ltstationType v=AAXX gt ltobsStationTypegt ltobsTime s=0900gt ltday v=09 gt lthour
v=00 gt ltminute v=00 gt ltobsTimegt
ltwindIndicator s=4gtltwindUnit v=KT gt ltwindIndicatorgt
ltstationId s=08495gt ltid v=08495 gt ltregion v=VI gt
ltprecipInd s=1gt ltprecipIndVal v=1 gt ltprecipIndgt ltwxInd s=1gt ltwxIndVal v=1 gt ltwxIndgt ltbaseLowestCloud s=4gt ltfrom v=300 u=M gtltto v=600 u=M gt ltbaseLowestCloudgt ltvisPrev s=59gt ltdistance v=9 u=KM gt ltvisPrevgt lttotalCloudCover s=3gt ltoktas v=3 gt lttotalCloudCovergt ltsfcWind s=0714gt ltwindgt ltdir v=70 gt ltspeed v=14 u=KT gt ltwindgt ltsfcWindgt lttemperature s=10147 20136gt ltairgt lttemp v=147 u=C gtltairgt
Exemple Interface Exemple Interface WEBWEB
WIS XMLBUFRWIS XMLBUFR
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
-
Exemple Interface Exemple Interface WEBWEB
WIS XMLBUFRWIS XMLBUFR
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
-
WIS XMLBUFRWIS XMLBUFR
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
-
top related