XML (extensible Markup

Dimension: px
Commencer à balayer dès la page:

Download "XML (extensible Markup"

Transcription

1 XML (extensible Markup Language) Abderrazak MKADMI Département Hypermédia Université Paris 8 PLAN Introduction Document XML DTD XML Schema Navigation XML : XPath Lien XML : XLL Feuilles de style XSLT Formulaires : XFORMS Modèle de document : DOM & SAX XML et les SGBDs XQuery Conclusion 2 XML : Objectif et définition Exemple de document XML XML=eXtensible Markup Language Objectif : étendre les fonctionnalités du HTML pour faciliter les échanges de documents sur le web - Définition libre de nouvelles balises et de nouveaux attributs - Support de structure complexe de documents - Vérification de la structure d un document par rapport à une DTD (Document Type Definition) ou un schéma XML - Séparation entre contenu et mise en page (feuille de style) XML peut donc être défini comme étant un langage de description et d échange de données structurées. 3 Description XML des informations carte de visite <cartes> <personne> <nom>mkadmi</nom> <prenom>abderrazak</prenom> <bureau> <laboratoire>paragraphe</laboratoire> <adresse> <rue>2, rue de la Liberté</rue> <code postal>93526</code postal> <ville>saint-denis</ville> </adresse> <Téléphone>(33) </téléphone> </bureau> </personne> </cartes> 4 XML : Origine (1) Les objectifs étaient donc : D étendre les fonctionnalités du langage HTML qui est limité D offrir un standard équivalent à SGML auxquels les acteurs du W3C reprochaient les éléments suivants : - trop complexe pour être implémenté dans des navigateurs - impose que tout document soit conforme à une structure type et validé - ne possède pas de mécanisme de liens évolué 5 XML : Origine (2) Les objectifs qui ont guidé le groupe de travail XML : Utilisable sur l infrastructure Internet Supporter une grande variété d applications Être compatible avec SGML Facile à traiter un document XML par programme Éviter les fonctionnalités optionnelles Fournir un balisage compréhensible par l homme Rendre l écriture d un document facile Livrer une spécification formelle et concise (42 pages) Rédiger la spécification rapidement (18 mois) 6 1

2 Historique 1996 : groupe de travail au sein du W3C 1998 : publication de recommandations pour la version 1.0 de XML XML est une recommandation du W3C en date du 10 février 1998, référencée à : Standards gérés par le W3C : XSL (extensible Steelsheet Language), XLL (extensible Linking Language),, Xpath (utilisé pour XSLT et XPointer), DOM (Document Object Model), XML Schema, XQL (extensible Query Language), Limites de HTML Un balisage prédéfini dans la norme Beaucoup de balises de description de formes (br, b, center, etc.) et peu de balises à caractères sémantiques (title, adresse, dl, etc.), Une dépendance très forte du contenu et de la forme Une interopérabilité limitée Une gestion de liens très simple Des recherches lourdes et des réponses très nombreuses 7 8 Limites de SGML Trop complexe pour être implémenté dans des navigateurs, Impose que tout document soit conforme à une structure type spécifiée et validée, Ne possède pas de mécanismes de liens évolués. Objectifs du groupe de travail XML Les objectifs qui ont guidé le groupe de travail XML : Utilisable sur l'infrastructure Internet Supporter une grande variété d'applications Être compatible avec SGML Facile à traiter un document XML par programme Fournir un balisage compréhensible par l'homme La concision dans le balisage n'est pas importante Rendre l'écriture d'un document facile Livrer une spécification formelle et concise (42 pages) Rédiger la spécification rapidement (18 mois) 9 10 Apports XML La lisibilité : aucune connaissance ne doit théoriquement être nécessaire pour comprendre un contenu d'un document XML Autodescriptif et extensible ; Une structure arborescente : permettant de modéliser la majorité des problèmes informatiques ; Universalité et portabilité : les différents jeux de caractères sont pris en compte ; Déployable : il peut être facilement distribué par n'importe quel protocole à même de transporter du texte, comme HTTP ; Intégrabilité : un document XML est utilisable par toute application pourvue d'un parser (c'est-à-dire un logiciel permettant d'analyser un code XML) ; Extensibilité : un document XML doit pouvoir être utilisable dans tous les domaines d'applications 11 Champs d application Commerce électronique et EDI Avec des formats de documents standards, les entreprises pourront échanger tous types d informations et les intégrer dans leurs propres SI. Gestion électronique de documents (GED) XML apporte des solutions de recherche d Informations grâce aux structures de documents et aux nombreux langages de description du contenu qui lui sont associés Interopérabilité de systèmes d information hétérogènes XML va permettre, via différents standards (DOM, WIDL, ), d étendre les possibilités des applications Internet actuelles. 12 2

3 XML : STANDARDS MathML (Mathematical Markup Language) Pour la description et la communication des informations mathématiques et scientifiques sur le web, CML Chemical Markup Language pour la publication Internet des formules chimiques, de molécules, des équations, utilise une visionneuse Java nommée Jumbo pour visualiser les molécules. SVG (Scalable Vector Graphics) pour la description en XML des graphiques en 2D SMIL (Synchronized Multimedia Integration Language) pour la gestion fine des ressources multimédia sur le web, RDF (Resource Description Framework) pour associer des descripteurs à toutes ressources XML afin d en faciliter la recherche VML(Vector Markup Language), WML (Wireless Markup Language). Structure d un document XML (1) Deux types de documents XML : - Document bien formé : respecte la syntaxe XML - Document valide : bien formé qui respecte une structure type définie dans une DTD Un document XML se compose de : - un prologue (facultatif mais conseillé) - des commentaires et des instructions de traitement. - un arbre d éléments qui constitue le contenu du document, Structure d un document XML (2) Structure d un document XML : prologue P R O L O G U E C O R P S D U D O C U M E N T <?xml version= " 1.0 " encoding= " ISO " standalone = " yes "?> <?xml-stylesheet type = " text/xsl " href= " test.xsl "?> <!DOCTYPE formation [ <!ENTITY organisme " EDIFRANCE "> <!ELEMENT formation (date, titre, societe, programme) > <!ELEMENT date ( #PCDATA) > <!ELEMENT titre ( #PCDATA) > <!ELEMENT societe ( #PCDATA) > <!ELEMENT programme ( chapitre+) > <!ELEMENT chapitre ( #PCDATA) > <!ATTLIST chapitre numero NMTOKEN #REQUIRED > ] > <formation> <date/> <titre> <![CDATA[<XML> - Développement ]]> </titre> <societe>organisée par &organisme ;</societe> <! Programme du séminaire <programme> <chapitre numero= " 1 ">Introduction au langage XML</chapitre> <chapitre numero= " 2 ">Les documents XML</chapitre> <chapitre numero= " 3 "> XML Schema</chapitre> <chapitre numero= " 4 ">XPath et la navigation</chapitre> <chapitre numero= " 5 ">Les liens XML (XLL)</chapitre> <chapitre numero= " 6 ">Les feuilles de style </chapitre> <chapitre numero= " 7 ">Les applications XML</chapitre> </programme> </formation> Déclaration XML Instruction de traitement Partie déclarative (DTD) 15 Le Prologue contient : Une déclaration XML : <?xml version= 1.0 encoding= ISO standalone= yes?> Des instructions de traitement : <!xml-stylesheet type= text/xsl href= test.xsl?> Une déclaration de DTD : <!DOCTYPE exemple SYSTEM exemple.dtd > ou <!DOCTYPE exemple [déclarations]> 16 Structure d un document XML : arbre d éléments <nom>contenu de l élément</nom> Le nom indiqué par les balises d'ouverture et de clôture - doit commencer par une lettre, - peut comporter des chiffres, des lettres, les caractères moins (-), tiret souligné ( _ ), point (.') - la casse est discriminante - le nom ne peut commencer par XML que ce soit en minuscule, majuscule ou en combinaison des deux. L'arbre d'éléments décrit la structure hiérarchique d'un élément. Les éléments les plus fins sont dits éléments terminaux. La racine de l arbre est appelée élément père. Dans un document, il n existe qu un et un seul élément père. 17 Exemple : Syntaxe incorrecte <?xml version = 1.0?> <TOPIC> <TITLE>Répertoire de schémas XML</TITLE> <AUTHOR>Abderrazak MKADMI</AUTHOR> <PUBLISHER>EDIFRANCE</PUBLISHER> </TOPIC> <TOPIC> <TITLE>Les SGBDRs</TITLE> <AUTHOR>Imad Saleh</AUTHOR> <PUBLISHER>Eyrolles</PUBLISHER> </TOPIC> Plusieurs éléments père Syntaxe Incorrecte 18 3

4 Attributs, entités, sections littérales L arbre d éléments XML peut contenir différents objets : Attributs : éléments pouvant contenir des informations complémentaires stockées sous forme d association nom=valeur Entités : objet disposant d un nom et d un contenu qui peut être interne, externe en format XML ou autre, Sections littérales : chaîne de caractères non interprétée par le parseur XML Ceci permet d inclure des caractères spéciaux (exemple syntaxe XML dans un document XML) 19 Attributs : exemple <?xml version ="1.0"?> <article> <editeur nom ="EYROLLES"> <ed-adresse> <rue>1, rue Thénard</rue> <cp>75005</cp> <ville>paris</ville> </ed-adresse> </editeur> <topic> <title>xml : le guide de l utilisateur</title> <author>elliotte Rusty Harold</author> <editeur nom="eyrolles"></editeur> </topic> </article> Cet exemple permet de simplifier l écriture, surtout si plusieurs ouvrages font référence à ce même éditeur. On a à écrire que le nom de l éditeur et pas à réécrire à chaque fois toutes les Informations liées à l éditeur 20 Attributs prédéfinis xml:lang="fr" définir la langue du document. xml:space="preserve" les caractères d espacement (espace, tabulation, ligne blanche sont préservés) xml:space="default" le traitement des caractères d espacement est appliqué par défaut élément versus attribut Pas de règle pour choisir entre élément et attribut Les critères disponibles sont liés à : La structuration de l information : Structurée ou non : éléments Non structurée : attributs L ordre de l information est-il important? Ordre important : éléments Ordre non important : attributs Entités internes et entités externes (1) Exemple d une entité interne <?xml version ="1.0"?> <?xml:stylesheet href=" 3b-EntiteInterne.xsl" type="text/xsl"?> <!DOCTYPE catalogue [ <!ENTITY INTER "Internet " > ] > <catalogue> <stage> <intitule>xml et les bases de données</intitule> <grp-produit>&inter; </grp-produit> </stage> </catalogue> Entités internes et entités externes (2) Exemple d une entité externe <?xml version ="1.0"?> <?xml:stylesheet href=" 3b-EntiteExterne.xsl" type="text/xsl"?> <!DOCTYPE catalogue [ <!ENTITY INTER " Internet "> <!ENTITY Obj_Xmlp SYSTEM "3b_OBJ_XMLP.xml"> ] > <catalogue> <stage> <intitule>xml et les bases de données</intitule> <grp-produit> &INTER; </grp-produit> &Obj_Xmlp; </stage> </catalogue> C est le mot clé SYSTEM qui indique qu il s agit d une référence de type URL

5 Entités prédéfinies Entités* Il existe 5 entités prédéfinies en XML - < < - > > - & & - &apos; - " " Seuls les caractères < et & sont strictement illégaux en XML <instruction>if note < 10</instruction>: illégal <instruction>if note < 10</instruction>: légal Document Type Definition : DTD Un document bien formé est un document qui respecte la syntaxe XML Un document valide est un document bien formé qui respecte la grammaire d une DTD. Une DTD permet donc de spécifier la structure logique d un document L écriture d une DTD est la transposition d un modèle de données (type MCD Merise ou modèle d objets UML) au format XML. La DTD n est pas écrite en XML, elle utilise sa propre syntaxe Référence à une DTD dans un document XML (1) <!DOCTYPE nom SYSTEM nomfichier.dtd > Exemple : fichier XML: <?xml version= "1.0"?> <?xml:stylesheet href= "DTDExterne.xsl" type="text/xsl "?> <!DOCTYPE stage SYSTEM DTDExterne.dtd > <stage> <intiule>apports de XML dans la recherche d information</intitule> <prerequis>connaissance du méta-langage XML</prerequis> </stage> Exemple : DTDExterne.dtd <!ELEMENT stage (intitule, prerequis)> <!ELEMENT intitule (#PCDATA)> <!ELEMENT prerequis (#PCDATA)> Cependant, la définition de la DTD peut se faire dans le document XML Référence à une DTD dans un document XML (2) <?xml version= 1.0?> <?xml:stylesheet href= DTDExterne.xsl type= text/xsl?> <!DOCTYPE stage [ <!ELEMENT stage (intitule, prerequis)> <!ELEMENT intitule (#PCDATA)> <!ELEMENT prerequis (#PCDATA)> ]> <stage> <intitule>apports de XML dans la recherche d information</intitule> <prerequis>connaissance du méta-langage XML</prerequis> </stage> Un document xml peut contenir à la fois une référence à une DTD et une déclaration interne d élément. la déclaration interne est prioritaire pour le parseur Déclaration d une DTD Une déclaration d une DTD peut être interne ou externe Il existe 4 types de déclaration : - des éléments - des listes d attributs - des entités - des notations DTD : Éléments (1) <! ELEMENT livre (titre, editeur?, auteur, chapitre+, prix, critique*) > Cet exemple définit l élément livre suivi de son modèle de contenu : - titre : information obligatoire présente une seule fois - editeur? : cette information est facultative (0,1) - chapitre+ : l élément peut être répété (1,N) - critique* : élément facultatif qui peut être répété (0,N) Déclaration d un élément de données <!ELEMENT nom (#PCDATA) > - l élément nom peut contenir toute donnée XML (y compris des sections littérales)

6 DTD : Éléments (2) DTD : Éléments (3) : exemple récapitulatif Déclaration d un élément à modèle mixte (mixité entre données et éléments) <!ELEMENT chapitre (#PCDATA p exemple )* > - un chapitre peut contenir des données (#PCDATA) et/ou un élément nommé p et/ou un élément nommé exemple. Ces éléments étant facultatifs et pourront apparaître plusieurs fois. Déclaration d un élément libre : ANY <! ELEMENT chapitre ANY> Cette déclaration est pratique en phase de conception car elle permet de définir des structures et de les affiner au fur et au mesure de l avancement du projet. Déclaration d un élément vide : EMPTY <! ELEMENT chapitre EMPTY> 31 Exemple 1 : DTD d un ouvrage <! DOCTYPE article [ <! ELEMENT article (topic)* > <! ELEMENT titre (#PCDATA) > <! ELEMENT editeur (#PCDATA) > <! ELEMENT auteur (#PCDATA) > <! ELEMENT prix (#PCDATA) > <! ELEMENT pages (#PCDATA) > ] > Exemple 2 : DTD d un catalogue de formation <! DOCTYPE catalogue [ <! ELEMENT catalogue (stage) * > <! ELEMENT stage (intitule, duree, population, objectif, desc_jour+) > <! ELEMENT desc_jour (num?, desc, tp*) > <! ELEMENT intitule (#PCDATA p)* > <! ELEMENT duree (#PCDATA) > <! ELEMENT population (#PCDATA) > <! ELEMENT objectif (#PCDATA p)* > <! ELEMENT num (#PCDATA) > <! ELEMENT desc (#PCDATA p)* > <! ELEMENT tp (#PCDATA p)* > <!-- déclaration de l élément paragraphe --> <! ELEMENT p (#PCDATA)> ] > 32 DTD : Liste d attributs DTD : déclaration des attributs La déclaration des attributs se fait par : <! ATTLIST nom_élément déclaration_attribut> Six types d attributs sont reconnus : CDATA ID IDREF ou IDREFS ENTITY ou ENTITIES NMTOKEN ou NMTOKENS NOTATION TOKEN (liste de choix) Quatre types de valeurs par défaut : #REQUIRED : obligatoire #IMPLIED : facultatif # FIXED "Valeur" : valeur fixe "Valeur " : valeur par défaut Fichier XML <?xml version="1.0" encoding="utf-8"?> <?xml-stylesheet type="text/xsl" href="c:\program Files\Altova\XML Spy Suite\Examples\cartes.xslt"?> <!DOCTYPE cartes SYSTEM "carte1.dtd"> <cartes> <personne nom="mkadmi" prenom="abderrazak"> <bureau telephone="(33) " fax="(33) " laboratoire="paragraphe"> <adresse pays="france" rue="2, rue de la Liberté" code_postal="93526" ville="saint-denis"/> </bureau> </personne> </cartes> DTD <?xml version="1.0" encoding="utf-8"?> <!ELEMENT adresse EMPTY> <!ATTLIST adresse pays CDATA #REQUIRED rue CDATA #REQUIRED code_postal CDATA #REQUIRED ville CDATA #REQUIRED > <!ELEMENT bureau (adresse)> <!ATTLIST bureau telephone CDATA #REQUIRED fax CDATA #REQUIRED laboratoire CDATA #REQUIRED > <!ELEMENT cartes (personne)> <!ELEMENT personne (bureau)> <!ATTLIST personne nom CDATA #REQUIRED prenom CDATA #REQUIRED > Noms de domaines (Namespaces) Ils permettent : - de distinguer les éléments et les attributs provenant de différents vocabulaires (jaguar: faune ou automobile?), - de regrouper les éléments et les attributs corrélés de manière à ce que la réutilisation soit plus facile, - de composer des éléments et des attributs (fragments) provenant de différentes sources. Déclaration <élément xmlns:préfixe=uri> 35 Futur des DTDs : Schémas XML DTD - N est pas écrite en langage XML - Typage de données très limité - Ne supporte pas les espaces de noms Schéma XML - écrit en langage XML - Typage très riche de données (Booléens, entiers, intervalles de temps ) - Possibilité de créer de nouveaux types de données - Supporte des espaces de noms - Notion d héritage : les éléments peuvent hériter du contenu et des attributs d un autre élément. XML Schema a un statut de recommandation du 2 mai

7 Exemple d un schéma XML (1) Schéma sous format graphique : réalisé avec XMLSPY 37 Exemple d un schéma XML (2) <?xml version="1.0" encoding="utf-8"?> <xsd:schema xmlns:xsd=" elementformdefault="qualified" attributeformdefault="unqualified"> <xsd:element name="etudiant"> <xsd:complextype> <xsd:sequence> <xsd:element name="nom"/> <xsd:element name="prenom"/> <xsd:element name="universite"/> <xsd:element name="niveau"/> </xsd:sequence> </xsd:complextype> </xsd:element> </xsd:schema> 38 Déclaration d un schéma XML (1) Un schéma XML débute par un prologue et est suivi par le corps du document Les déclarations d éléments et d attributs se font à l intérieur de la balise <xsd : schema> qui est la racine du document Exemple : <xsd : schema xmlns:xsd = " Schema ">.. </xsd : schema> NB : Tout élément appartenant au langage XML Schema doit être préfixé par " XSD: " l espace de nom réservé par Déclaration d un schéma XML (2) Un schéma XML commence par l ouverture d un élément schema destiné à accueillir la définition des composants d un document XML L élément schema possède +ieurs attributs destinés à définir le cadre du schéma XML: attributeformdefault attributs qualifiés ou non par un namespace elementformdefault éléments qualifiés ou non par un namespace finaldefault empêche par défaut la dérivation de type (par restriction ou extension, ou les deux) Id indique un identificateur unique pour le schéma targetnamespace indique un espace de nom cible pour tout élément étranger au vocabulaire de schéma XML Version, xml:lang. L élément schema ne peut être inclus dans aucun élément le W3C Déclaration d un schéma XML (3) <xsd:schema attributeformdefault=(qualified unqualified):unqualified elementdefault=(qualified unqualified):unqualified finaldefault = (#all Liste de (extension restriction)) id=id targetnamespace=adresse_uri xml:lang=language {tout un attribut ayant un espace de nom différent de celui du schéma }> Contenu (include import redefine annotation)*, (((simpletype complextype group attributegroup) element attribute notation), annotation*)*) </xsd:schema> XML Schema : Déclaration des éléments (1) Exemple <?xml version="1.0" encoding=" ISO "?> <xsd : schema xmlns:xsd=" <xsd:element name="contacts " type="typecontacts "/> <xsd:element name="remarque " type="xsd:string"/>.. </xsd:schema> Chaque élément déclaré est associé à un type de données via l attribut type, Éléments complexes : éléments pouvant contenir des sous éléments Éléments simples : éléments ne contenant pas des sous éléments

8 XML Schema : Déclaration des éléments (2) L élément element possède +ieurs attributs destinés à définir précisément l élément XML abstract provoque l abstraction (true) de l élément XML, devant être remplacé par un autre élément, block spécifie une valeur de blockage du type dans des éléments attendant le type de base, default précise une valeur par défaut pour l élément, fixed empêche une dérivation par restriction du type de l élément, form indique si l élément doit être qualifié ou non par un espace de noms, maxoccurs précise le nombre d occurrences maximum de l élément, minoccurs précise le nombre d occurrences minimum de l élément, ref spécifie une référence à un autre élément de schéma, type fournit le type de données accepté par l élément, substitutiongroupdéfinit un élément pour lequel l élément peut se substituer. XML Schema : Déclaration des attributs Un attribut est un qualificatif qui s applique à un élément Il peut être uniquement de type simple ( éléments) La déclaration d un attribut se fait à la fin des définitions de type complexe Exemple <?xml version="1.0" encoding ="ISO "?> <xsd : schema xmlns:xsd=" <xsd:complexetype name="contacts" > <!- - déclaration du modèle de contenu --> <xsd:attribute name="maj" type=" xsd:date "/> </xsd : complexetype> </xsd:schema> XML Schema :Contraintes sur l attribut Les attributs peuvent avoir des contraintes d occurrences. L élément attribute de XML Schema peut avoir deux attributs optionnels (USE et VALUE) - USE : définit une contrainte sur l attribut (required, optional, fixed, default ) - VALUE : définit une valeur qui doit être conforme au type déclaré dans l attribut Exemple : <xsd : attribute name =" date-création " type =" xsd:date " USE=" default " VALUE=" "/> XML Schema : include L élément include permet d inclure un schéma XML d un même espace de noms dans un autre schéma <xsd:include id=id schemalocation = anyuri { tout attribut ayant un espace de noms différent de celui du schéma }> </xsd:include> id : précise un identificateur unique pour l élément schemalocation : spécifie une adresse URI pointant vers un schéma XML XML Schema :import L élément import permet d inclure un schéma XML avec un espace de noms différent dans un autre schéma <xsd:import id=id namespace = anyuri schemalocation = anyuri { tout attribut ayant un espace de noms différent de celui du schéma }> </xsd:import> id : précise un identificateur unique pour l élément namespace : spécifie l espace de noms du schéma XML schemalocation : spécifie une adresse URI pointant vers un schéma XML XML Schema : any L élément any représente n importe quel élément dans un schéma XML <xsd:any id=id maxoccurs = (nonnegativeinteger unbounded) : 1 minoccurs = nonnegativeinteger : 1 namespace = ((##any ##other) Liste de (anyuri (##targetnamespace ##local))) : ##any { tout attribut ayant un espace de noms différent de celui du schéma }> Contenu : (annotation?) </xsd:any> id : précise un identificateur unique pour l élément maxoccurs : nombre d occurrences maximum (par défaut : 1) minoccurs : nombre d occurences minimum (par défaut : 1) namespace : spécifie l espace de noms du schéma XML

9 XML Schema :les types simples : Types de base intégrés Les types de données primitifs Type Description string représente une chaîne de caractères. boolean représente une valeur booléenne true ou false. decimal représente un nombre décimal float représente un nombre à virgule flottante. double représente un nombre réel double. duration représente une durée. datetime représente une valeur date/heure. time représente une valeur horaire (format : hh:mm:ss.sss ). date représente une date (format : CCYY-MM-DD). gyearmonth représente un mois et une année grégorienne (format : CCYY-MM). gyear représente une année (format : CCYY). gmonthday représente le jour d'un mois (format : MM-DD). gday représente le jour d'un mois (format : DD). gmonth représente le mois (format : MM). hexbinary représente un contenu binaire hexadécimal. base64binary représente un contenu binaire de base 64. anyuri représente une adresse URI (ex.: QName représente un nom qualifié. NOTATION représente un nom qualifié Les types de données dérivés(1) Les types de données dérivés(2) Type Description Type Description normalizedstring chaîne de caractères dont les espaces blancs sont normalisés. Token chaîne de caractères sans espaces blancs. Language langage exprimé sous forme de mot clés répondant à la RFC NMTOKEN type d'attribut NMTOKEN de XML 1.0. NMTOKENS type d'attributs NMTOKENS de XML 1.0. Name nom XML. NCName nom non-implanté (non-colonized) dans. ID type d'attribut ID de XML 1.0. IDREF type d'attribut IDREF de XML 1.0. IDREFS type d'attribut IDREFS de XML 1.0. ENTITY type d'attribut ENTITY de XML 1.0. ENTITIES type d'attribut ENTITIES de XML 1.0. Integer nombre entier. nonpositiveinteger nombre entier négatif incluant le zéro. negativeinteger nombre entier négatif dont la valeur maximum est long représente un nombre entier long dont l'intervalle est { }. int représente un nombre entier dont l'intervalle est { }. short représente un nombre entier court dont l'intervalle est { } byte représente un entier dont l'intervalle est { }. nonnegativeinteger représente un nombre entier positif incluant le zéro. unsignedlong représente un nombre entier long non-signé dont l'intervalle est { }. unsignedint représente un nombre entier non-signé dont l'intervalle est { }. unsignedshort représente un nombre entier court non-signé dont l'intervalle est { }. unsignedbyte représente un nombre entier non-signé dont l'intervalle est {0-255}. positiveinteger représente un nombre entier positif commençant à XML Schema : les types simples Listes XML Schema possède 3 types de listes intégrés qui sont : NMTOKENS, ENTITIES et IDREFS Exemple : <xsd:attribute name="unite-taille" use="required"> <xsd :simpletype> <xsd:restriction base="xsd:nmtoken"> <xsd:enumeration value="ko" /> <xsd:enumeration value="mo "/> <xsd:enumeration value="go"/> </xsd:restriction> </xsd:simpletype> </xsd:attribute> 53 XML Schema :les types simples (UNIONS) L élément union permet à un élément ou à un attribut XML d être une ou plusieurs instances d un type de données formé par la réunion de plusieurs types atomiques ou listes. Exemple : <xsd:simpletype name="isbntype"> <xsd:union> <xsd:simpletype> <xsd:restriction base="xsd:string"> <xsd:pattern value=" [0-9]{10} "/> </xsd :restriction> </xsd:simpletype> <xsd:simpletype> <xsd:restriction base="xsd :NMTOKEN"> <xsd:enumeration value="go"/> <xsd:enumeration value="mo"/> </xsd:restriction> </xsd :simpletype> </xsd:union> </xsd:simpletype> L élément union ne peut être inclus que dans l élément simpletype 54 9

10 XML Schema : les types complexes (1) Le connecteur de séquence : permet de définir un type complexe comportant des suites d'éléments. Il définit une liste ordonnée de sous éléments ( <xsd :sequence> ) Le connecteur de choix : permet de définir un type complexe comportant des éléments variables. Il n'autorise qu'un seul de ses fils soit présent dans le document instance ( <xsd :choice> ) L'élément All : permet à ses éléments fils d'apparaître une fois (ou pas du tout) et dans n'importe quel ordre. ( <xsd :all> ) XML Schema : les types complexes (2) Exemple d un connecteur de séquence <?xml version="1.0" encoding="utf-8"?> <xsd:schema xmlns:xs=" elementformdefault="qualified" attributeformdefault="unqualified"> <xsd:element name="etududiant"> <xsd:complextype> <xsd:sequence> <xsd:element name="nom"/> <xsd:element name="prenom"/> <xsd:element name="universite"/> <xsd:element name="niveau"/> </xsd:sequence> </xsd:complextype> </xsd:element> </xsd:schema> XML Schema : les types complexes (3) XML Schema : les types complexes (4) Exemple d un connecteur de choix Schéma XML sous format graphique <?xml version="1.0" encoding="utf-8"?> <xs:schema xmlns:xs=" <xs:element name="contact"> <xs:complextype> <xs:choice> <xs:element name="tel_mobile"/> <xs:element name="tel_fixe"/> <xs:element name="courriel"/> </xs:choice> </xs:complextype> </xs:element> </xs:schema> Exemple d un connecteur All Schéma XML sous format graphique <?xml version="1.0" encoding="utf-8"?> <xs:schema xmlns:xs=" <xs:element name="contact"> <xs:complextype> <xs:all> <xs:element name="nom"/> <xs:element name="prenom"/> <xs:element name="courriel"/> </xs:all> </xs:complextype> </xs:element> </xs:schema> Code XML du schéma XML Schema : Espaces de noms Le support des espaces de noms est une des motivations qui a conduit au développement de XML Schema. Chaque schéma est lié à un espace de nom particulier (ou à l'absence d'espace de nom). Il faut définir au moins un schéma par espace de nom à spécifier L'attribut targetnamespace permet de spécifier l'espace de nom par défaut <xsd :schema xmlns :xsd = targetnamespace = > Il est fortement conseillé d'utiliser l'attribut facultatif targetnamespace Navigation : XPath & XLL XPath langage permettant d'exprimer la navigation dans un arbre XML avec des expressions sous forme de patterns utilisées par XSLT et XPointer. XLL (XML Linking Language) est un ensemble de deux spécifications : - XLink pour décrire les liens entre documents - XPointer pour définir un endroit précis dans un document cible d'un lien, en utilisant XPath

11 Navigation : XPath XPath est utile pour : - désigner une partie d un document - faire des tables des matières - établir des hyperliens sur des documents qu on ne peut pas modifier pour ajouter des ancres XPath exploite la structure d'un document dans la navigation par : Une écriture de type "chemins d'accès", comme les URL Des axes de parcours Des tests sur les valeurs des objets de l'arbre (élément, attribut,...) Des fonctions prédéfinies sur les nœuds et les chaînes de caractères 61 XPath : sélection des éléments / racine du document. nœud courant repertoire racine/fichier repertoire//fichier //repertoire tous les éléments <repertoire> enfant du nœud courant tous les éléments <fichier> avec <racine> comme parent tous les éléments <fichier> avec <repertoire> comme ancêtre tous les éléments <repertoire> avec racine comme ancêtre * tous les noeuds de type éléments repertoire fichier tous les éléments <repertoire> ou <fichier> 62 XPath : attributs, textes, commentaires, tests XLink Recherche d'attribut Nom l'attribut nom du nœud (élément) courant - l'attribut nom de l'élément <fichier> fils * tous les attributs de l'élément courant Sélection des commentaires, textes, et processing instructions - comment() les commentaires - text() les nœuds texte - pi() les nœuds processing instruction - node() les nœuds autres que racine Les tests - repertoire[fichier] les éléments <repertoire> contenant un sous-élément <fichier> - *[@taille] les éléments contenant un attribut taille - //repertoire[@nom = "XML"] les éléments <repertoire> de la racine ayant pour attribut nom = "XML" 63 XLink est le résultat d une volonté d obtenir des outils de liaisons entre deux documents XML, plus puissants que ceux de HTML. Xlink définit deux types de liens : Liens simples associant deux ressources, donc compatibles HTML : ces liens sont de type unidirectionnel ; Liens étendus, associant plus de deux ressources : ces liens peuvent être bi-directionnels, multidirectionnels et externes aux ressources liées. 64 XLink : liens simples Les liens simples sont des liens associant exactement deux ressources dont l une est locale et l autre est distante. XLink permet de décrire le comportement du lien au travers d attributs facultatifs : xlink :show={"replace" "new" "embed"} - replace la cible du lien remplace le contenu actuel - new ouverture d une nouvelle instance pour afficher la cible du lien - embed la cible du lien est incluse dans le document actuel xlink :actuate={"onrequest" "onload"} - onrequest lien traversé lors d une demande explicite (Lien HTML) - onload lien traversé au chargement du document (image HTML) 65 XLink : Liens étendus (1) Un lien étendu est un lien qui associe un nombre arbitraire de ressources. Ces ressources pouvant être locales ou distantes. Exemple : <go xlink : type= "arc" xlink:from="a" xlink:to="b" /> Un lien étendu est représenté par plusieurs éléments XML avec des rôles qui peuvent être différents : - xlink:type="locator" décrit les ressources éloignées participant dans la liaison - xlink:type="ressource" décrit les ressources locales qui participent à la liaison - xlink:type="arc" décrit les règles de parcours entre les ressources - xlink:type="title" décrit de manière lisible la liaison

12 XLink : Liens étendus(2) Pour définir un lien étendu, il faut définir : La ressource interne au document qui définit ce lien - xlink:type="ressource" décrit les ressources locales qui participent à la liaison - xlink:label="nomlabel" identifiant nommé de la ressource locale La localisation de chacune des ressources associées à ce lien - xlink:type="locator" décrit les ressources locales qui participent à la liaison - xlink:href="uri' URI de la ressource liée - xlink:label="nomlabel" identifiant nommé de la ressource locale L'association entre source et destination - xlink:type="arc" décrit les ressources locales qui participent à la liaison - xlink:from="nomlabel" identifiant nommé du départ du lien - xlink:to="nomlabel" identifiant nommé de l'arrivé du lien XPointer : pointeur XML(1) Un pointeur est constitué d'une référence absolue suivie ou non d'une série de renvois relatifs. Les références absolues La référence absolue est indiquée par le préfixe # ou. Elle peut prendre les valeurs suivantes : root() : origin() : id(valeur) : la racine du document le document en cours. Cette référence doit être suivie d'autres références. l'élément dont l'attribut de type ID à la valeur indiquée. Les références relatives La référence relative suit une référence absolue et elle en est séparée par un point (.).C'est une expression XPath XPointer : pointeur XML(2) Exemple : Lien sur le document en cours #id ("XML").child (1, session) renvoie la 1ère occurrence de l'élément session situé sous l'élément identifié par "XML". L'élément session doit être un élément de niveau immédiatement inférieur. #id ("XML").descendant (1, session) renvoie la 1ère occurrence de l'élément session situé à un niveau quelconque sous l'élément identifié par "XML" #root ().string (1, "XML") renvoie la 1ère occurrence contenant la chaîne de caractère "XML" #root ().string (1, "XML").following (l, session) renvoie la 1 ère occurrence de session qui suit l'élément contenant la chaîne de caractère "XML" Feuilles de style (1) Qu'est-ce qu'une feuille de style? document numérique qui va pouvoir spécifier toutes les caractéristiques de mises en forme du document liées à la balise à laquelle elle s'applique. Concrètement, vous allez pouvoir définir pour chaque balise, une mise en forme spécifique qui lui sera attachée Feuilles de style (2) Utilité et avantages Séparation du contenu et de la mise en forme. Cohésion de la présentation tout au long du site avec les feuilles de style externes. Modifier l'aspect d'une page ou d'un site sans en modifier le contenu. Un "langage" compréhensible, simple et logique par rapport à HTML et à ses différentes versions. Réduire le temps de chargement des pages. Palier certaines insuffisances du langage HTML (contrôle des polices, contrôle de la distance entre les lignes, contrôle des marges et des indentations ) 71 Feuilles de style (3) L'utilisation d'une feuille de style est obligatoire en XML pour contrôler la mise en page du document, en effet un document XML ne contient que des informations sur la structure, aucune information relative à la mise en page n'apparaît dans le document. Il est possible d'utiliser pour présenter un document XML les feuilles de style CSS (Cascading StyleSheets ) ou les feuilles de style XSL (extensible Stylesheet Language). Ces dernières sont issues de DSSSL (Document Style Semantics and Specification Language) la norme internationale ISO de feuilles de style pour les documents SGML

13 Feuilles de style : CSS CSS est une norme du W3C BODY { color : blue;background-color:yellow; } H1 { color:red; text-transform:capitalize; font-weight:bold;font-size:large; } H2 { color:#ff1111; text-transform:captalize } Feuilles de style : XSL XSL est une famille de spécifications comprenant : XSLT (XSL Transformation) pour le parcours et la transformation d'un document source XML vers un autre document XML, X-Path et les patterns pour la navigation dans l'arbre XML source, XSL-FO (XSL Formatting Objects) pour décrire la présentation d'un document. Au départ, il n'y avait pas cette séparation, et c'est pourquoi le terme générique XSL désigne aussi bien la phase de transformation que celle de formatage Feuilles de style : XSLT(1) Feuilles de style : XSLT(2) XSLT (XML Stylesheet Language Transformation) a pour objectif de définir un langage pour effectuer des transformations sur des arbres XML. La transformation produit en sortie un fichier XML de préférence XHTM, WML, SVG,... Elle s'applique sur un arbre XML provenant : - d'un fichier XML, - d'un message(flux) XML. XSLT permet de gérer, a partir d'une source unique d'informations, des fichiers adaptés aux différents canaux de visualisation (PC, Mobile, WebTV, ) 75 Feuille XSLT Fichier HTML Processeur XSLT Flux XML Fichier WML XSL permet de réaliser différentes opérations telles que : - Remplacement de balise, - Numérotation automatique (liste, chapitre, page, etc.) - Génération automatique de table de matières, d'index, etc., - Définition de macro, - Recherche et sélection d'éléments dans un document, - Ajout de chaînes de caractères, - Application de mise en forme paramétrée, Etc. 76 Exemple d un fichier XML Exemple d un fichier XSLT <?xml version = «1.0» encoding = «ISO »?> <xsl :stylesheet type= «text/xsl» href= «cartes.xslt»?> <cartes> <personne> <nom>mkadmi</nom> <prenom>abderrazak</prenom> <bureau> <laboratoire>paragraphe</laboratoire> <adresse> <rue>2, rue de la Liberté</rue> <code postal>93526</code postal> <ville>saint-denis</ville> <pays>france</pays> </adresse> <Téléphone>(33) </téléphone> <fax>(33) </fax> </bureau> </personne> </cartes> 77 <?xml version = "1.0" encoding="iso "?> <xsl :stylesheet version = "1.0" xmlns= <xsl:output method="html" version="4.0" encoding="iso " indent="yes"/> <xsl :template match="/"> <html> <head></head> <body><table> <xsl :for-each select="cartes/personne"> <tr><td> <xsl :value-of select="nom"/> </td><td> <xsl :value-of select =".//pays"/> </td></tr> </xsl:for-each> </table></body> </html> </xsl :template> </xsl :stylesheet>

14 Résultat : fichier HTML généré par XSLT <html> <head> <META http-equiv=«content-type» content=«text/html»> </head> <body> <table> <tr> <td>mkadmi</td> <td>abderrazak</td> <td>france</td> </tr> </table> </body> </html> Processus de transformation (1) La transformation ou le formatage permet d'afficher sur le navigateur Internet d'un ordinateur client, les données d'un document XML structurées en conformité avec les règles de style d'un document XSL. Selon la méthode de sortie de la feuille de style, le document résultant peut être généré en HTML, en texte brut ou en une autre arborescence XML. MKADMI Abderrazak France Processus de transformation (2) Le processus de transformation ou de formatage d'un document XML peut s'effectuer par trois moyens distincts : - Un processeur XSL installé sur l'ordinateur client (en général dans le navigateur) se charge de transformer localement la source XML en conjonction avec la feuille de style XSL. - Un processeur XSL installé sur le serveur envoie, après traitement, le document résultant au client. - Un logiciel spécifique installé sur le serveur effectue un traitement préalable des documents XML, puis stocke les documents résultants sur le serveur lui-même. XSLT : Règles de transformation (1) Une feuille XSLT est un document XML qui commence par l'en-tête XML délimité par : <xsl:stylesheet>... </xsl:stylesheet> Les feuilles de styles XSLT sont fondées sur des structures nommées modèles (templates). Un template précise ce qui doit être recherché dans l'arbre source, et ce qui doit être placé dans l'arbre résultat, la transformation <xsl:template> définit une règle de transformation XSLT : Règles de transformation (2) xsl:template Les règles de réécritures sont définies dans les templates. La syntaxe: <xsl:templates attributs>contenu</xsl:templates> Les attributs sont : match="expression XPath" indique à quels nœuds s'appliquent les transformations xsl:template est le modèle réel qui doit être instancié qui contient du texte et des instructions XSL (qui se trouvent dans l espace de noms xsl) 83 XSLT : Règles de transformation (3) match est une expression de sélection de nœuds sur lesquels s'applique la règle. Elle peut-être exprimée en XPath, dont voici quelques exemples : / racine du document Repertoire tous les éléments <repertoire> * tous les nœuds de type éléments repertoire fichier tous les éléments <repertoire> ou <fichier> racine/fichier tous les éléments <fichier> avec <racine> comme parent repertoire//fichier tous les éléments <fichier> avec <repertoire> comme l'attribut nom du nœud (élément) courant fichier/@nom l'attribut nom de l'élément <fichier> fichier[@ nom="xml"] les éléments <fichier> dont l'attribut nom vaut "XML" comment() les commentaires text() les nœuds texte node() les nœuds autres que racine(*)

15 Éléments XSLT xsl:apply-imports xsl:apply-templates xsl:attribute xsl:attribute-set xsl:call-template xsl:choose xsl:comment xsl:copy xsl:copy-of xsl:decimal-format xsl:element xsl:fallback xsl:for-each xsl:if xsl:import xsl:include xsl:key xsl:message xsl:namespace-alias xsl:number xsl:otherwise xsl:output xsl:param xsl:preserve-space xsl:processing-instruction msxsl:script xsl:sort xsl:strip-space xsl:stylesheet xsl:template xsl:text xsl:transform xsl:value-of xsl:variable xsl:when xsl:with-param 85 Éléments XSLT : <xsl:apply-templates> Permet de descendre dans les nœuds enfants pour les traiter, Permet de demander à l analyseur de comparer chaque élément enfant de l élément source sélectionné, Le modèle du nœud sélectionné peut lui-même contenir d autres éléments xsl:apply-templates, xsl-templates possède deux attributs : select et mode. S'ils sont utilisés alors seuls les noeuds correspondant à leurs valeurs seront traités. <xsl:apply-templates select="pattern" mode="mode"> 86 Éléments XSLT : l attribut select Utilisé dans l instruction xsl:apply-templates pour désigner sur quel élément ou sous élément s applique le traitement : <xsl:template match="repertoire"> xsl:apply-templates select="name"> </xsl:templates> select utilise le même type de motif que l attribut match Si aucun attribut select n est fourni, tous les sous-éléments, texte, instructions et commentaires sont sélectionnés Select peut être utilisé avec l élément xsl:value-of (qui récupère la valeur d'un objet en entrée, pour la renvoyer en sortie) <xsl :template match ="text ()" > <xsl :value-of select = ". "/> </xsl :template> Éléments XSLT : <xsl:apply-imports> L'élément <xsl:apply-imports>, suite à l'importation d'une feuille de style externe, permet d'appliquer ses propres règles de style sur le template concerné. Exemple : <!-- Feuille de style : style.xsl --> <xsl:stylesheet xmlns:xsl=" <xsl:import href="preformatage.xsl"/> <xsl:template match="code"> <html> <body> <table align="center"> <tr> <td> <xsl:apply-imports/> </td> </tr> </table> </body> </html> </xsl:template> </xsl:stylesheet> Éléments XSLT : <xsl:attribute> L'élément <xsl:attribute> insère un attribut avec le nom indiqué dans l'arborescence d'un document résultant. <xsl:attribute name="nom_attribut"> Valeur de l'attribut </xsl:attribute> L'attribut name permet d'affecter un nom à l'attribut créé. Evidemment cette commande est obligatoire. Un autre attribut, namespace permet de désigner un espace de noms. <xsl:attribute name="nom_attribut" namespace="uri-référence"> Valeur de l'attribut </xsl:attribute> Éléments XSLT : <xsl:choose> L'élément <xsl:choose> combiné avec <xsl:when> et <xsl:otherwise>, permet de construire des tests conditionnels à l'instar des commandes switch de Java ou Javascript. <xsl:choose> <xsl:when test="condition"> instructions... </xsl:when>... <xsl:otherwise> instructions... </xsl:otherwise> </xsl:choose> L'élément <xsl:choose> ne peut donc contenir que les élément <xsl:when> et <xsl:otherwise>

16 Éléments XSLT : <xsl:for-each> L'élément <xsl:for-each> permet d'appliquer des règles de style sur chaque noeud identique d'un template. Les noeuds sont identifiés par un pattern spécifié par un attribut select d'ailleurs obligatoire. <xsl:for-each select="pattern"> instructions... </xsl:for-each> Cet élément ne peut être employé que sur une arborescence dont la structure soit uniforme et connue tel que par exemple un document XML formé à partir de titres et de paragraphes. Éléments XSLT: Formats de sortie XSLT permet de spécifier le format de sortie pour le document produit par le processeur <xsl:output > avec comme attributs : - method = "xml" "html" "text" pour l'interprétation de l'arbre résultat - version="valeur" - encoding ="CodeCaractères" pour le jeu de caractères utilisé - omit-xml-declaration = "yes" "no" pour générer en xml la déclaration - standalone = "yes" "no" pour l'attribut dans la déclaration xml - doctype-public = "FPIFichierDTD" pour générer une instruction <!DOCTYPE... PUBLIC "FPIFichierDTD"> - doctype-system = "URIFichierDTD" pour générer une instruction <!DOCTYPE SYSTEM "URIFichierDTD"> - cdata-section-elements = "NomElements" pour générer une section CDATA - indent = "yes" "no" pour l'indentation de l'arbre (traitement optionnel) Exemple : Fichier XML <?xml version="1.0" encoding="utf-8"?> <?xml-stylesheet type="text/xsl" href="d:\abderrazak\xml\fichiersxmlspy\bibliotheque\bibliothe que.xslt"?> <bibliotheque xmlns:xsi=" xsi:nonamespaceschemalocation="d:\abderrazak\xml\fichiers XMLSPY\bibliotheque\bibliotheque.xsd"> <livre> <titre titre_original="xml database" titre_parallele="xml et les bases de données"/> <auteur>a.kevin</auteur> <collection>professionnel</collection> <editeur nom_editeur="eyrolles" date_edition="2001" lieu_edition="paris"/> <collation format="21 cm" nb_pages="1081 pages"/> <ISBN> </ISBN> </livre> </bibliotheque> 93 Exemple : Feuille de Style XSLT (1) <?xml version="1.0" encoding="utf-8"?> <xsl:stylesheet version="1.0" xmlns:xsl=" xmlns:xsi=" <xsl:template match="/"> <html> <head /> <body> <xsl:for-each select="bibliotheque"> <xsl:for-each select="livre"> <xsl:for-each select="auteur"> <xsl:apply-templates /> </xsl:for-each>. - <xsl:for-each select="titre"> <xsl:for-each select="@titre_original"> <xsl:value-of select="." /> </xsl:for-each> // <xsl:for-each select="@titre_parallele"> <xsl:value-of select="." /> </xsl:for-each> </xsl:for-each>. - <xsl:for-each select="collection"> <xsl:apply-templates /> </xsl:for-each>. - <xsl:for-each select="editeur"> <xsl:for-each select="@nom_editeur"> <xsl:value-of select="." /> </xsl:for-each> 94 Exemple : Feuille de Style XSLT (2) </xsl:for-each>, <xsl:for-each select="editeur"> <xsl:for-each select="@date_edition"> <xsl:value-of select="." /> </xsl:for-each>, <xsl:for-each select="@lieu_edition"> <xsl:value-of select="." /> </xsl:for-each> </xsl:for-each>/ - <xsl:for-each select="collation"> <xsl:for-each select="@format"> <xsl:value-of select="." /> </xsl:for-each>, <xsl:for-each select="@nb_pages"> <xsl:value-of select="." /> </xsl:for-each> </xsl:for-each>. ISBN : <xsl:for-each select="isbn"> <div> <xsl:apply-templates /> </div> </xsl:for-each> </xsl:for-each> </xsl:for-each> </body> </html> </xsl:template> </xsl:stylesheet> 95 Résultat de transformation A.Kevin. - XML database // XML et les bases de données. - Professionnel. - Eyrolles, 2001, Paris cm, 1081 pages. ISBN :

17 XSL- FO : Formatage XFORMS XSL-FO (XML Stylesheet Language Formatting Objects) a pour objectif de définir un langage pour formater les données. Il s'agit d'une application XML permettant de décrire la mise en page des données en sortie de traitement. Le formatage permet de décrire une mise en page en vue d'une génération vers : Navigateur, PDF, RTF, PostScript,... PDF Application FOP (xml.apache.org/fop) RTF Application JFOR ( nouvelle génération de formulaires sur le Web séparer l'aspect interface utilisateur et le modèle de données sous-jacent le même composant de formulaire peut avoir des représentations très différentes suivant le navigateur et la plateforme utilisés pour "afficher" un document XFORMS vs Formulaies HTML Formulaire HTML respecte en général un schéma bien défini composé de trois types d entrées encadrées par une balise FORM. Ceci est parfait pour un PC, mais pour un terminal léger (exemple : portable), ceci est impossible Il faut donc séparer la présentation du frontal Objectif de XFORMS XFORMS : Composants Modèle de données - Type de données - Contraintes dynamiques Interface utilisateur - éléments interactifs - éléments de mise en page Protocole d envoi XFORMS : Modèle de données Définit des types de données de manière très similaire au formalisme de schéma XML : String, Boolean, Number, Monetary Values, Date, Time of Day, Duration, URI, Binary. Chaque type de donnée a des "facettes" qui lui sont associées. Ces facettes représentent des détails du type (p.ex. précision, format, valeur par défaut, masque, etc.) Contrairement aux schémas XML pour lesquels, les facettes sont statiques, les facettes XForms peuvent être dynamiques Exemple <xform:date name="heuredepart" max="heurearrivee" /> Données structurées (1) Types énumérés : Basés sur le type string, en énumérant la liste des valeurs possibles. <xform:string name="nationalité" enum="closed"> <xform:value>tunisien</value> <xform:value>français</value> <xform:value>american</value> </xform:string> Structures hétérogènes : Permet de regrouper un certain nombre de champs pour former une entité. <xform:group name="client"> <xform:string name="nom"/> <xform:string name="rue"/> <xform:string name="ville"/> <xform:string name="pays"/> <xform:string name="codepostal"/> </xform:group> <xform:date name="heurearrivee" min="heuredepart" />

XML par la pratique Bases indispensables, concepts et cas pratiques (3ième édition)

XML par la pratique Bases indispensables, concepts et cas pratiques (3ième édition) Présentation du langage XML 1. De SGML à XML 17 2. Les bases de XML 18 2.1 Rappel sur HTML 18 2.2 Votre premier document XML 19 2.3 Les avantages de XML 21 3. La syntaxe XML 21 3.1 La première ligne du

Plus en détail

Thierry BOULANGER. par la pratique. Bases indispensables Concepts et cas pratiques XML. 3 ième édition. Nouvelle édition

Thierry BOULANGER. par la pratique. Bases indispensables Concepts et cas pratiques XML. 3 ième édition. Nouvelle édition XML par la pratique Bases indispensables Concepts et cas pratiques 3 ième édition Nouvelle édition Thierry BOULANGER Table des matières 1 Les éléments à télécharger sont disponibles à l'adresse suivante

Plus en détail

Faculté de Génie Chaire industrielle en infrastructures de communication. La technologie XML. Wajdi Elleuch

Faculté de Génie Chaire industrielle en infrastructures de communication. La technologie XML. Wajdi Elleuch Faculté de Génie Chaire industrielle en infrastructures de communication La technologie XML Wajdi Elleuch Octobre 2004 SOMMAIRE Content : - XML : Définition - XML : Solution pour des applications réparties

Plus en détail

Langage HTML (2 partie) <HyperText Markup Language> <tv>lt La Salle Avignon BTS IRIS</tv>

Langage HTML (2 partie) <HyperText Markup Language> <tv>lt La Salle Avignon BTS IRIS</tv> Langage HTML (2 partie) «Je n'ai fait que prendre le principe d - hypertexte et le relier au principe du TCP et du DNS et alors boum! ce fut le World Wide Web!» Tim Berners-Lee

Plus en détail

PIVOT. Pivot/Querier Documentation technique XML/XSD/XSLT

PIVOT. Pivot/Querier Documentation technique XML/XSD/XSLT Réf. : Pivot/Querier Auteur : JM. DERUYTER Rév. : 1.3 Rév. Date : 05/05/15 Distribution : Normale * Restreinte 1. Confidentielle PIVOT Pivot/Querier Documentation technique XML/XSD/XSLT Table des matières

Plus en détail

XML : documents et outils

XML : documents et outils XML : documents et outils Pierre-Alain Reynier Université de Provence pierre-alain.reynier@lif.univ-mrs.fr http://www.lif.univ-mrs.fr/~preynier/xml Cours adapté du travail de Rémi Eyraud, Silvano Dal Zilio...

Plus en détail

Master d Informatique Corrigé du partiel novembre 2010

Master d Informatique Corrigé du partiel novembre 2010 Universités d Aix-Marseille I & II Technologies XML Master d Informatique Corrigé du partiel novembre 2010 Année 2010-11 Documents autorisés Exercice 1 : Documents XML et Applications XML (4 points) Georges,

Plus en détail

Production de documents avec XSLT. Production de documents p.1/??

Production de documents avec XSLT. Production de documents p.1/?? Production de documents avec XSLT Production de documents p.1/?? Sommaire La balise xsl:output comment choisir le format de sortie Création de nœuds dans un document créer des éléments et attributs Création

Plus en détail

SII Stage d informatique pour l ingénieur

SII Stage d informatique pour l ingénieur SII Stage d informatique pour l ingénieur Création d un site Web École nationale supérieure de techniques avancées SII Stage d informatique pour l ingénieur 1 / 15 L informatique et le temps qui passe...

Plus en détail

<?xml version="1.0" encoding="iso-8859-1" standalone="yes"?>

<?xml version=1.0 encoding=iso-8859-1 standalone=yes?> Multimédia XML Benoît Piranda Équipe SISAR Université de Marne La Vallée XML l avenir de HTML? Extensible Markup Language, entre HTML et SGML tente de se servir des principes de simplicité du HTML et de

Plus en détail

Programmation Internet Cours 4

Programmation Internet Cours 4 Programmation Internet Cours 4 Kim Nguy ên http://www.lri.fr/~kn 17 octobre 2011 1 / 23 Plan 1. Système d exploitation 2. Réseau et Internet 3. Web 3.1 Internet et ses services 3.1 Fonctionnement du Web

Plus en détail

Dans nos locaux au 98 Route de Sauve 30900 NÎMES. Un ordinateur PC par stagiaire, scanner, imprimante/copieur laser couleur

Dans nos locaux au 98 Route de Sauve 30900 NÎMES. Un ordinateur PC par stagiaire, scanner, imprimante/copieur laser couleur FORMATION FORFAIT WEB DEVELOPPEUR Qualification ISQ OPQF Formacode 46 125 Certification de titre professionnel Web Designer + modules optionnels : Développement PHP/MySQL avancé, Web App, CMS e-boutique

Plus en détail

Module BDWEB. Maîtrise d informatique Cours 9 - Xquery. Anne Doucet. anne.doucet@lip6.fr

Module BDWEB. Maîtrise d informatique Cours 9 - Xquery. Anne Doucet. anne.doucet@lip6.fr Module BDWEB Maîtrise d informatique Cours 9 - Xquery Anne Doucet anne.doucet@lip6.fr 1 Langages de requêtes XML Concepts des langages de requêtes XML motivations caractéristiques Navigation dans les documents

Plus en détail

Introduction aux concepts d ez Publish

Introduction aux concepts d ez Publish Introduction aux concepts d ez Publish Tutoriel rédigé par Bergfrid Skaara. Traduit de l Anglais par Benjamin Lemoine Mercredi 30 Janvier 2008 Sommaire Concepts d ez Publish... 3 Système de Gestion de

Plus en détail

Les outils de création de sites web

Les outils de création de sites web Tuto 1ère séance - p1 Les outils de création de sites web Sources : Réalisez votre site web avec HTML5 et CSS3 de Mathieu Nebra (Edition Le Livre du Zéro) site fr.openclassrooms.com (anciennement «site

Plus en détail

Evolution et architecture des systèmes d'information, de l'internet. Impact sur les IDS. IDS2014, Nailloux 26-28/05/2014 pascal.dayre@enseeiht.

Evolution et architecture des systèmes d'information, de l'internet. Impact sur les IDS. IDS2014, Nailloux 26-28/05/2014 pascal.dayre@enseeiht. Evolution et architecture des systèmes d'information, de l'internet. Impact sur les IDS IDS2014, Nailloux 26-28/05/2014 pascal.dayre@enseeiht.fr 1 MVC et le web 27/05/14 2 L'évolution des systèmes informatiques

Plus en détail

L'essentiel de XML. Cours XML. Olivier Carton

L'essentiel de XML. Cours XML. Olivier Carton L'essentiel de XML Cours XML Olivier Carton L'essentiel de XML: Cours XML Olivier Carton Version du 18/12/2014 Copyright 2007-2014 Olivier Carton Résumé Support du cours XML en M2 Pro à l'université Paris

Plus en détail

Module BD et sites WEB

Module BD et sites WEB Module BD et sites WEB Cours 8 Bases de données et Web Anne Doucet Anne.Doucet@lip6.fr 1 Le Web Architecture Architectures Web Client/serveur 3-tiers Serveurs d applications Web et BD Couplage HTML-BD

Plus en détail

XML, PMML, SOAP. Rapport. EPITA SCIA Promo 2004 16 janvier 2003. Julien Lemoine Alexandre Thibault Nicolas Wiest-Million

XML, PMML, SOAP. Rapport. EPITA SCIA Promo 2004 16 janvier 2003. Julien Lemoine Alexandre Thibault Nicolas Wiest-Million XML, PMML, SOAP Rapport EPITA SCIA Promo 2004 16 janvier 2003 Julien Lemoine Alexandre Thibault Nicolas Wiest-Million i TABLE DES MATIÈRES Table des matières 1 XML 1 1.1 Présentation de XML.................................

Plus en détail

Classe ClInfoCGI. Fonctions membres principales. Gestion des erreurs

Classe ClInfoCGI. Fonctions membres principales. Gestion des erreurs Utilisation des classes de PourCGI par Michel Michaud, version 2002-11-23 Les fichiers PourCGI.h et PourCGI.cpp rendent disponibles deux classes et une fonction libre qui permettent de faire facilement

Plus en détail

Gestion documentaire (Extraits du CCI version 1.2)

Gestion documentaire (Extraits du CCI version 1.2) Standard du gouvernement du Québec sur les ressources informationnelles PROJET Gestion documentaire (Extraits du CCI version 1.2) 12 juillet 2004 SGQRI 000[-00] Nom du [ : Nom de la partie] Projet, version

Plus en détail

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux. UEO11 COURS/TD 1 Contenu du semestre Cours et TDs sont intégrés L objectif de ce cours équivalent a 6h de cours, 10h de TD et 8h de TP est le suivant : - initiation à l algorithmique - notions de bases

Plus en détail

Faculté Polytechnique de Mons. Le processus d Extraction, Transformation et Load (ETL) dans des entrepôts de données XML

Faculté Polytechnique de Mons. Le processus d Extraction, Transformation et Load (ETL) dans des entrepôts de données XML Faculté Polytechnique de Mons Johnny TSHEKE SHELE Le processus d Extraction, Transformation et Load (ETL) dans des entrepôts de données XML Travail de fin d études présenté en vue de l obtention du grade

Plus en détail

Gestion Électronique de Documents et XML. Master 2 TSM

Gestion Électronique de Documents et XML. Master 2 TSM Gestion Électronique de Documents et XML Master 2 TSM I n t r o d u c t i o n Les formats de données F o r m a t s d e d o n n é e Format de donnée : manière de représenter des informations dans un document

Plus en détail

Devenez un véritable développeur web en 3 mois!

Devenez un véritable développeur web en 3 mois! Devenez un véritable développeur web en 3 mois! L objectif de la 3W Academy est de former des petits groupes d élèves au développement de sites web dynamiques ainsi qu à la création d applications web

Plus en détail

WEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES

WEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES WEB & DÉVELOPPEMENT LES BASES DU WEB HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES LE LANGAGE HTML STRUCTURE D UNE PAGE En-tête et corps Syntaxe INSÉRER DES CONTENUS Texte : formatage (titre,

Plus en détail

XML et DOM. Matériel de cours. mars 1999 version 0.3 dernière modification: 24/3/99

XML et DOM. Matériel de cours. mars 1999 version 0.3 dernière modification: 24/3/99 XML XML et DOM Matériel de cours mars 1999 version 0.3 dernière modification: 24/3/99 http://tecfa.unige.ch/guides/xml/slides/xml.html - (moche!) http://tecfa.unige.ch/guides/xml/slides/xml.pdf - (lecture

Plus en détail

BES WEBDEVELOPER ACTIVITÉ RÔLE

BES WEBDEVELOPER ACTIVITÉ RÔLE BES WEBDEVELOPER ACTIVITÉ Le web developer participe aux activités concernant la conception, la réalisation, la mise à jour, la maintenance et l évolution d applications internet/intranet statiques et

Plus en détail

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines) Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines) Module 1 : Programmer une application informatique Durée

Plus en détail

Formation HTML / CSS. ar dionoea

Formation HTML / CSS. ar dionoea Formation HTML / CSS ar dionoea le HTML Hyper Text Markup Language langage descriptif composé de balises interprété par le navigateur page HTML = simple fichier texte (bloc notes, vim,...) les déclarations

Plus en détail

Accès à l'information XML par des requêtes XQuery au travers de son XSchema

Accès à l'information XML par des requêtes XQuery au travers de son XSchema Rapport projet de fin d étude ASR Accès à l'information XML par des requêtes XQuery au travers de son XSchema Réalisé par : DAB Marwa MGARRECH Oussama Encadré par : Mme LOPES GANCARSKI Alda 2011/2012 Remerciements

Plus en détail

CRÉER, ROUTER ET GÉRER UNE NEWSLETTER, UN E-MAILING

CRÉER, ROUTER ET GÉRER UNE NEWSLETTER, UN E-MAILING CRÉER, ROUTER ET GÉRER UNE NEWSLETTER, UN E-MAILING Durée : 3J / 21H Formateur : Consultant expert en PAO et Web-marketing. Groupe de : 4 max Formation au web marketing Objectifs : Mettre en oeuvre des

Plus en détail

Systèmes d'informations historique et mutations

Systèmes d'informations historique et mutations Systèmes d'informations historique et mutations Christophe Turbout SAIC-CERTIC Université de Caen Basse-Normandie Systèmes d'informations : Historique et mutations - Christophe Turbout SAIC-CERTIC UCBN

Plus en détail

Qu'est-ce que XML? XML : Extensible Markup Language. Exemple de document SGML SGML

Qu'est-ce que XML? XML : Extensible Markup Language. Exemple de document SGML SGML XML : Extensible Markup Language SGML Une introduction (1) http://kiwi.emse.fr/3a/dn.html Ph. Jaillon / J.J. Girardot J.J. GIRARDOT - EMSE 10/2004 1 Standard Generalized Markup Language Norme ISO-8879

Plus en détail

Projet 2. Gestion des services enseignants CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE. G r o u p e :

Projet 2. Gestion des services enseignants CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE. G r o u p e : CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE Projet 2 Gestion des services enseignants G r o u p e : B E L G H I T Y a s m i n e S A N C H E Z - D U B R O N T Y u r i f e r M O N T A Z E R S i

Plus en détail

Programmation de services sensibles au contexte en téléphonie sur IP

Programmation de services sensibles au contexte en téléphonie sur IP Programmation de services sensibles au contexte en téléphonie sur IP Présentation de mémoire Grégory Estienne Sous la supervision du Dr. Luigi Logrippo Introduction La téléphonie sur IP comme support à

Plus en détail

OCL - Object Constraint Language

OCL - Object Constraint Language OCL - Object Constraint Language Laëtitia Matignon laetitia.matignon@univ-lyon1.fr Département Informatique - Polytech Lyon Université Claude Bernard Lyon 1 2012-2013 Laëtitia Matignon SIMA - OCL - Object

Plus en détail

Installation d un serveur HTTP (Hypertext Transfer Protocol) sous Débian 6

Installation d un serveur HTTP (Hypertext Transfer Protocol) sous Débian 6 Installation d un serveur HTTP (Hypertext Transfer Protocol) sous Débian 6 1 BERNIER François http://astronomie-astrophotographie.fr Table des matières Installation d un serveur HTTP (Hypertext Transfer

Plus en détail

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

INTRODUCTION A JAVA. Fichier en langage machine Exécutable INTRODUCTION A JAVA JAVA est un langage orienté-objet pur. Il ressemble beaucoup à C++ au niveau de la syntaxe. En revanche, ces deux langages sont très différents dans leur structure (organisation du

Plus en détail

Le codage informatique

Le codage informatique Outils de Bureautique Le codage informatique (exemple : du binaire au traitement de texte) PLAN 3) Le codage binaire 4) Représentation physique des bits 5) Le bit est un peu court... 6) Codage de texte

Plus en détail

Couches 4 à 7 : Traitement des données

Couches 4 à 7 : Traitement des données Chapitre 8 1 Couches 4 à 7 : Traitement des données Couche 4 OSI : Transport 2 Cette couche est la charnière entre les fonctions qui traitent de la communication et celle qui traitent de l'exploitation.

Plus en détail

XML et travail collaboratif : vers un Web sémantique

XML et travail collaboratif : vers un Web sémantique XML et travail collaboratif : vers un Web sémantique Abderrazak MKADMI 1-2 1 Laboratoire Paragraphe, Université Paris8, France 2 Institut Supérieur de Documentation, Université de Manouba, Tunisie amkadmi@yahoo.fr

Plus en détail

Généralités. javadoc. Format des commentaires. Format des commentaires. Caractères spéciaux. Insérer du code

Généralités. javadoc. Format des commentaires. Format des commentaires. Caractères spéciaux. Insérer du code Généralités javadoc Université de Nice - Sophia Antipolis Richard Grin Version 1.4.1 8/2/11 javadoc produit de la documentation en partant de commentaires particuliers insérés dans le code source des classes

Plus en détail

Magento. Magento. Réussir son site e-commerce. Réussir son site e-commerce BLANCHARD. Préface de Sébastien L e p e r s

Magento. Magento. Réussir son site e-commerce. Réussir son site e-commerce BLANCHARD. Préface de Sébastien L e p e r s Mickaël Mickaël BLANCHARD BLANCHARD Préface de Sébastien L e p e r s Magento Préface de Sébastien L e p e r s Magento Réussir son site e-commerce Réussir son site e-commerce Groupe Eyrolles, 2010, ISBN

Plus en détail

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau)

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau) CS WEB Ch 1 Introduction I. INTRODUCTION... 1 A. INTERNET INTERCONNEXION DE RESEAUX... 1 B. LE «WEB» LA TOILE, INTERCONNEXION DE SITES WEB... 2 C. L URL : LOCALISER DES RESSOURCES SUR L INTERNET... 2 D.

Plus en détail

Formation : WEbMaster

Formation : WEbMaster Formation : WEbMaster Objectif et Description : Centre Eclipse vous propose une formation complète WebMaster, vous permettant de : Utiliser dès maintenant les nouveautés du web2, ainsi alléger les besoins

Plus en détail

Autour du web. Une introduction technique Première partie : HTML. Georges-André SILBER Centre de recherche en informatique MINES ParisTech

Autour du web. Une introduction technique Première partie : HTML. Georges-André SILBER Centre de recherche en informatique MINES ParisTech Autour du web Une introduction technique Première partie : HTML Georges-André SILBER Centre de recherche en informatique MINES ParisTech silber@cri.ensmp.fr http://www.cri.ensmp.fr/people/silber/cours/2010/web

Plus en détail

LES TECHNOLOGIES DU WEB APPLIQUÉES AUX DONNÉES STRUCTURÉES

LES TECHNOLOGIES DU WEB APPLIQUÉES AUX DONNÉES STRUCTURÉES LES TECHNOLOGIES DU WEB APPLIQUÉES AUX DONNÉES STRUCTURÉES 1e partie : encoder et structurer les données Gautier Poupeau Antidot http://www.lespetitescases.net Twitter @lespetitescases Emmanuelle Bermès

Plus en détail

4. SERVICES WEB REST 46

4. SERVICES WEB REST 46 4. SERVICES WEB REST 46 REST REST acronyme de REpresentational State Transfert Concept introduit en 2000 dans la thèse de Roy FIELDING Est un style d architecture inspiré de l architecture WEB En 2010,

Plus en détail

LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation

LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation ING 01 LANGAGUE JAVA Durée : 21 heures 1090 HT / jour Dates : à définir en 2012 Concevoir et développer des programmes en langage Java Comprendre le fonctionnement de la machine virtuelle S approprier

Plus en détail

Présentation du Framework BootstrapTwitter

Présentation du Framework BootstrapTwitter COUARD Kévin HELVIG-LARBRET Blandine Présentation du Framework BootstrapTwitter IUT Nice-Sophia LP-SIL IDSE Octobre 2012 Sommaire I. INTRODUCTION... 3 Définition d'un framework... 3 A propos de BootstrapTwitter...

Plus en détail

SP1 : Intégration d'une vidéo dans une mardi 21/01/2014. page web, fonction du format vidéo et 3 mercredi 22/01/2014

SP1 : Intégration d'une vidéo dans une mardi 21/01/2014. page web, fonction du format vidéo et 3 mercredi 22/01/2014 HTML et CSS : être présent sur Internet, conception d'un site web HTML et CSS (Eric Christoffel), RS d'une heure par semaine, sur semaines, soit 1h de RS Cours et Exercices en asynchrone 1h sur semaines.

Plus en détail

THEME PROJET D ELABORATION D UNE BASE DE DONNEES SOUS LE SERVEUR MYSQL

THEME PROJET D ELABORATION D UNE BASE DE DONNEES SOUS LE SERVEUR MYSQL . THEME PROJET D ELABORATION D UNE BASE DE DONNEES SOUS LE SERVEUR MYSQL Mr MEZRED MOHAMED Ingénieur météorologue INTRODUCTION Il existe de nombreuses manières de construire une base de données. En effet,

Plus en détail

Introduction à. Oracle Application Express

Introduction à. Oracle Application Express Introduction à Oracle Application Express Sommaire Qu est-ce que Oracle Application Express (APEX)? Vue d ensemble des fonctionnalités et des différents composants d Oracle APEX Démonstration de création

Plus en détail

Webmaster / Webdesigner / Wordpress

Webmaster / Webdesigner / Wordpress Webmaster / Webdesigner / Wordpress Pré-requis : Projet professionnel. Bonne maîtrise de l'ordinateur. Bases en infographie et / ou traitement de texte fortement recommandées. Objectifs : Concevoir un

Plus en détail

Outils logiciels pour l'ingénierie documentaire

Outils logiciels pour l'ingénierie documentaire Ingénierie Documentaire Outils logiciels pour l'ingénierie documentaire http://doc.crzt.fr STÉPHANE CROZAT 16 octobre 2014 Table des matières I - L'IDE XML Oxygen 5 A. Fichiers XML...5 B. Schémas XML...6

Plus en détail

Livre Blanc WebSphere Transcoding Publisher

Livre Blanc WebSphere Transcoding Publisher Livre Blanc WebSphere Transcoding Publisher Introduction WebSphere Transcoding Publisher vous permet d'offrir aux utilisateurs des informations Web adaptées à leurs besoins. Il vous permet, par exemple,

Plus en détail

Module http MMS AllMySMS.com Manuel d intégration

Module http MMS AllMySMS.com Manuel d intégration Module http MMS AllMySMS.com Manuel d intégration Objectif du document... 3 1 Envoi de MMS par requête http... 4 1.1 Format de la requête utilisée... 4 1.2 Arborescence et explication des balises du flux

Plus en détail

Approche Contract First

Approche Contract First Exemple HelpDesk Approche Contract First Développement d un premier web service en utilisant l approche contract first (ou WSDL First) Écriture du wsdl avant d écrire le code java Autre possibilité implementation

Plus en détail

Systèmes d information et bases de données (niveau 1)

Systèmes d information et bases de données (niveau 1) Systèmes d information et bases de données (niveau 1) Cours N 1 Violaine Prince Plan du cours 1. Bibliographie 2. Introduction aux bases de données 3. Les modèles 1. Hiérarchique 2. Réseau 3. Relationnel

Plus en détail

Programmation Web. Madalina Croitoru IUT Montpellier

Programmation Web. Madalina Croitoru IUT Montpellier Programmation Web Madalina Croitoru IUT Montpellier Organisation du cours 4 semaines 4 ½ h / semaine: 2heures cours 3 ½ heures TP Notation: continue interrogation cours + rendu à la fin de chaque séance

Plus en détail

MINISTÈRE DES SOLIDARITÉ ET DE LA COHÉSION SOCIALE

MINISTÈRE DES SOLIDARITÉ ET DE LA COHÉSION SOCIALE MINISTÈRE DU TRAVAIL, DE l EMPLOI ET DE LA SANTÉ MINISTÈRE DES SOLIDARITÉ ET DE LA COHÉSION SOCIALE MINISTÈRE DU BUDGET, DES COMPTES PUBLICS ET DE LA RÉFORME DE L ÉTAT Standard d'interopérabilité entre

Plus en détail

Installation de DocBook sur un système Linux

Installation de DocBook sur un système Linux Installation de DocBook sur un système Linux Emmanuel Fleury fleury@cs.auc.dk Le but de ce document est d expliquer comment installer aussi simplement que possible DocBook sur votre système (Mandrake,

Plus en détail

XML et Bases de données. Les bases de données XML natives.

XML et Bases de données. Les bases de données XML natives. XML et Bases de données. Les bases de données XML natives. Introduction. Une définition de l'expression «Base de données XML Native» : Une base de données XML native définit un modèle (logique) de document

Plus en détail

Web Tier : déploiement de servlets

Web Tier : déploiement de servlets Web Tier : déploiement de servlets 1 / 35 Plan 1 Introduction 2 Servlet : Principe de fonctionnement 3 Création et développement sur un serveur JEE 4 Quelques méthodes de l API des servlets 5 Utilisation

Plus en détail

Processus 2D-Doc. Version : 1.1 Date : 16/11/2012 Pôle Convergence AGENCE NATIONALE DES TITRES SECURISÉS. Processus 2D-Doc.

Processus 2D-Doc. Version : 1.1 Date : 16/11/2012 Pôle Convergence AGENCE NATIONALE DES TITRES SECURISÉS. Processus 2D-Doc. Page 1 sur 16 PROCESSUS 2D-DOC...1 1. ARCHITECTURE GLOBALE...4 1.1. 1.2. Les rôles... 4 Les étapes fonctionnelles... 5 1.2.1. Etape 1 : la création du code à barres... 5 1.2.2. Etape 2 : l envoi du document...

Plus en détail

L architecture des services Web

L architecture des services Web Chapitre 1 L architecture des services Web La combinaison des canons esthétiques et idéaux politiques, reflets de leur époque, et de la généralisation de nouveaux matériaux préside souvent au développement

Plus en détail

Cycle de vie du logiciel. Unified Modeling Language UML. UML: définition. Développement Logiciel. Salima Hassas. Unified Modeling Language

Cycle de vie du logiciel. Unified Modeling Language UML. UML: définition. Développement Logiciel. Salima Hassas. Unified Modeling Language Unified Modeling Language UML Salima Hassas Version Cycle de vie du logiciel Client Besoins Déploiement Analyse Test Conception Cours sur la base des transparents de : Gioavanna Di Marzo Serugendo et Frédéric

Plus en détail

SYSTÈMES D INFORMATIONS

SYSTÈMES D INFORMATIONS SYSTÈMES D INFORMATIONS Développement Modx Les systèmes de gestion de contenu Les Content Management Système (CMS) servent à simplifier le développement de sites web ainsi que la mise à jour des contenus.

Plus en détail

Bernard Lecomte. Débuter avec HTML

Bernard Lecomte. Débuter avec HTML Bernard Lecomte Débuter avec HTML Débuter avec HTML Ces quelques pages ont pour unique but de vous donner les premiers rudiments de HTML. Quand vous les aurez lues, vous saurez réaliser un site simple.

Plus en détail

Optimiser moteur recherche

Optimiser moteur recherche Optimiser moteur recherche Vous apprennez à inscrire vos sites dans les moteurs de recherche et les optimiser, déjà à la construction Worldsoft SA Inscription de sites Web dans les moteurs de recherche

Plus en détail

Évaluation des compétences. Identification du contenu des évaluations. Septembre 2014

Évaluation des compétences. Identification du contenu des évaluations. Septembre 2014 Identification du contenu des évaluations Septembre 2014 Tous droits réservés : Université de Montréal Direction des ressources humaines Table des matières Excel Base version 2010... 1 Excel intermédiaire

Plus en détail

Internet. DNS World Wide Web. Divers. Mécanismes de base Exécution d'applications sur le web. Proxy, fire-wall

Internet. DNS World Wide Web. Divers. Mécanismes de base Exécution d'applications sur le web. Proxy, fire-wall Internet DNS World Wide Web Mécanismes de base Exécution d'applications sur le web Divers Proxy, fire-wall 1 Les services usuels de l Internet Services principaux (applications) disponibles sur l Internet

Plus en détail

Je catalogue, tu FRBRises, il/elle googlise. L évolution des catalogues et les bibliothécaires Vendredi 29 mars 2013 Manufacture des tabacs

Je catalogue, tu FRBRises, il/elle googlise. L évolution des catalogues et les bibliothécaires Vendredi 29 mars 2013 Manufacture des tabacs Je catalogue, tu FRBRises, il/elle googlise. L évolution des catalogues et les bibliothécaires Vendredi 29 mars 2013 Manufacture des tabacs Journée organisée par le CRFCB Midi-Pyrénées / Languedoc-Roussillon

Plus en détail

FileMaker Server 11. Publication Web personnalisée avec XML et XSLT

FileMaker Server 11. Publication Web personnalisée avec XML et XSLT FileMaker Server 11 Publication Web personnalisée avec XML et XSLT 2007-2010 FileMaker, Inc. Tous droits réservés. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, Californie 95054 FileMaker est une

Plus en détail

Architecture JEE. Objectifs attendus. Serveurs d applications JEE. Architectures JEE Normes JEE. Systèmes distribués

Architecture JEE. Objectifs attendus. Serveurs d applications JEE. Architectures JEE Normes JEE. Systèmes distribués Architecture JEE. Objectifs attendus Serveurs d applications JEE Systèmes distribués Architectures JEE Normes JEE couches logicielles, n-tiers framework JEE et design patterns 2007/02/28 Eric Hébert.eheb@yahoo.fr

Plus en détail

Les services usuels de l Internet

Les services usuels de l Internet Les services usuels de l Internet Services principaux (applications) disponibles sur l Internet Courrier électronique (mail) - protocole SMTP (Simple Mail Transfer Protocol) inclut maintenant tous types

Plus en détail

BIRT (Business Intelligence and Reporting Tools)

BIRT (Business Intelligence and Reporting Tools) BIRT (Business Intelligence and Reporting Tools) Introduction Cette publication a pour objectif de présenter l outil de reporting BIRT, dans le cadre de l unité de valeur «Data Warehouse et Outils Décisionnels»

Plus en détail

Modélisation PHP Orientée Objet pour les Projets Modèle MVC (Modèle Vue Contrôleur) Mini Framework

Modélisation PHP Orientée Objet pour les Projets Modèle MVC (Modèle Vue Contrôleur) Mini Framework Modélisation PHP Orientée Objet pour les Projets Modèle MVC (Modèle Vue Contrôleur) Mini Framework L'objectif de ce document est de poser des bases de réflexion sur la modélisation d'un projet réalisé

Plus en détail

La base de données XML exist. A. Belaïd

La base de données XML exist. A. Belaïd La base de données XML exist Introduction Qu est-ce-que exist? C est une base de donnée native, entièrement écrite en Java XML n est pas une base de données en soi Bien qu il possède quelques caractéristiques

Plus en détail

Créer et partager des fichiers

Créer et partager des fichiers Créer et partager des fichiers Le rôle Services de fichiers... 246 Les autorisations de fichiers NTFS... 255 Recherche de comptes d utilisateurs et d ordinateurs dans Active Directory... 262 Délégation

Plus en détail

Design et implémentation d un logiciel de validation et de génération de configurations réseaux

Design et implémentation d un logiciel de validation et de génération de configurations réseaux Département d Ingénierie Informatique Design et implémentation d un logiciel de validation et de génération de configurations réseaux Laurent Vanbever Grégory Pardoen Mémoire présenté sous la direction

Plus en détail

Web Application Models

Web Application Models Web Application Models une nouvelle fonction de VisualAge Pacbase au service des applications WebSphere Jean-François Lévi - Bernard Etienne Maîtriser l'évolution des développements Web d'entreprise avec

Plus en détail

Introduction à Microsoft InfoPath 2010

Introduction à Microsoft InfoPath 2010 Introduction à Microsoft InfoPath 2010 Couplé à Microsoft SharePoint Designer 2010, InfoPath 2010 simplifie la création de solutions de bout en bout sur SharePoint Server 2010, qui contiennent des formulaires

Plus en détail

HTML. Notions générales

HTML. Notions générales 1 HTML Le langage HTML est le langage de base permettant de construire des pages web, que celles-ci soient destinées à être affichées sur un iphone/android ou non. Dans notre cas, HTML sera associé à CSS

Plus en détail

Nom de l application

Nom de l application Ministère de l Enseignement Supérieur et de la Recherche Scientifique Direction Générale des Etudes Technologiques Institut Supérieur des Etudes Technologiques de Gafsa Département Technologies de l Informatique

Plus en détail

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP COURS PROGRAMMATION INITIATION AU LANGAGE C SUR MICROCONTROLEUR PIC page 1 / 7 INITIATION AU LANGAGE C SUR PIC DE MICROSHIP I. Historique du langage C 1972 : naissance du C dans les laboratoires BELL par

Plus en détail

Chapitre IX. L intégration de données. Les entrepôts de données (Data Warehouses) Motivation. Le problème

Chapitre IX. L intégration de données. Les entrepôts de données (Data Warehouses) Motivation. Le problème Chapitre IX L intégration de données Le problème De façon très générale, le problème de l intégration de données (data integration) est de permettre un accès cohérent à des données d origine, de structuration

Plus en détail

Programmation des Applications Réparties. Parsers XML DOM et SAX

Programmation des Applications Réparties. Parsers XML DOM et SAX Programmation des Applications Réparties Parsers XML DOM et SAX Luiz Angelo Steffenel luiz-angelo.steffenel@univ-reims.fr Steffenel Programmation des Applications Réparties Master M1-2007-2008 1 Comment

Plus en détail

TP JAVASCRIPT OMI4 TP5 SRC1 2011-2012

TP JAVASCRIPT OMI4 TP5 SRC1 2011-2012 TP JAVASCRIPT OMI4 TP5 SRC1 2011-2012 FORMULAIRE DE CONTACT POUR PORTFOLIO PRINCIPE GENERAL Nous souhaitons réaliser un formulaire de contact comprenant les champs suivants : NOM PRENOM ADRESSE MAIL MESSAGE

Plus en détail

Petite définition : Présentation :

Petite définition : Présentation : Petite définition : Le Web 2.0 est une technologie qui permet la création de réseaux sociaux, de communautés, via divers produits (des sites communautaires, des blogs, des forums, des wiki ), qui vise

Plus en détail

basée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB www.enseirb.fr/~legal Olivier Augereau Formation UML

basée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB www.enseirb.fr/~legal Olivier Augereau Formation UML basée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB www.enseirb.fr/~legal Olivier Augereau Formation UML http://olivier-augereau.com Sommaire Introduction I) Les bases II) Les diagrammes

Plus en détail

Cahier Technique. «Développer une application intranet pour la gestion des stages des étudiants» Antonin AILLET. Remi DEVES

Cahier Technique. «Développer une application intranet pour la gestion des stages des étudiants» Antonin AILLET. Remi DEVES Antonin AILLET Remi DEVES Thibaut AZZOPARDI 2 ème année de DUT Informatique Cahier Technique «Développer une application intranet pour la gestion des stages des étudiants» Encadré par Didier BOULLE Année

Plus en détail

HTML, CSS, JS et CGI. Elanore Elessar Dimar

HTML, CSS, JS et CGI. Elanore Elessar Dimar HTML, CSS, JS et CGI Elanore Elessar Dimar Viamen GPAs Formation, 13 avril 2006 Sommaire Qu est-ce que HTML? HTML : HyperText Marckup Language XML : extensible Marckup Language Qu est-ce que HTML? HTML

Plus en détail

ECLIPSE ET PDT (Php development tools)

ECLIPSE ET PDT (Php development tools) ECLIPSE ET PDT (Php development tools) Eclipse Eclipse est un IDE (Integrated Development Environment)).C estun projet de la Fondation Eclipse visant à développer tout un environnement de développement

Plus en détail

Learning Object Metadata

Learning Object Metadata Page 1 of 7 Learning Object Metadata Le LOM (Learning Object Metadata), est un schéma de description de ressources d enseignement et d apprentissage. Le LOM peut être utilisé pour décrire des ressources

Plus en détail

Expression des contraintes. OCL : Object C o n t r a i n t L a n g u a g e

Expression des contraintes. OCL : Object C o n t r a i n t L a n g u a g e P r o b l é m a t i q u e OCL : O b j e c t C o n s t r a i n t L a n g u a g e Le langage de contraintes d UML Les différents diagrammes d UML permettent d exprimer certaines contraintes graphiquement

Plus en détail

3. RÉALISATION ET QUALIFICATION D UN PROTOTYPE 3.1 Réalisation d un prototype CRÉATION D UNE PAGE WEB STATIQUE AU FORMAT HTML

3. RÉALISATION ET QUALIFICATION D UN PROTOTYPE 3.1 Réalisation d un prototype CRÉATION D UNE PAGE WEB STATIQUE AU FORMAT HTML Page:1/20 CRÉATION D UNE PAGE WEB STATIQUE AU FORMAT HTML Objectifs de l activité pratique : Notions sur le HTML, le WEB et le W3C Créer une page web statique au format HTML : - les marqueurs ou balises

Plus en détail

Créer une base de données vidéo sans programmation (avec Drupal)

Créer une base de données vidéo sans programmation (avec Drupal) Créer une base de données vidéo sans programmation (avec Drupal) 10.10.2013 Nicolas Bugnon (nicolas.bugnon@alliancesud.ch) Centre de documentation Alliance Sud www.alliancesud.ch Résultat de l atelier

Plus en détail