chapitre 6 introduction a xml. plan historique xml exo 1 dtd exo 2 xsl exo 3 sax dom
Post on 03-Apr-2015
108 Views
Preview:
TRANSCRIPT
CHAPITRE 6
INTRODUCTION A XML
Plan
•Historique
•XML•Exo 1
•DTD•Exo 2
•XSL•Exo 3
•SAX
•DOM
Les TP
•Exo 1 : Ecrire un document XML valide
•Exo 2 : Ecrire la DTD
•Exo 3 : Ecrire une feuille de style XSL
1. Généralités - Historique
•XML signifie Extensible Markup Language
•C ’est standard reconnu par le W3C depuis février 1998,
•Il est dérive du SGML dont il représente un sous ensemble,
•Il avait pour intérêt initial de faciliter l ’échange de données informatique en remplaçant l ’EDI.
•La version 1.0 est disponible depuis 1998
1. Généralités - Historique Le SGML à l’origine du XML !
SGML (Standard Generalized Markup Language) (ISO 8879) est lelangage de référence en GED.
SGML est devenu une norme internationale en 1986.
SGML dissocie la structure d'un texte de sa présentation physique.
La typographique, elle est laissée à l’outil de mise en page qui endonne une forme physique.
SGML permet de distinguer la structure d'un texte de son contenu.
1. Généralités - Comparer HTML & XML : Les forces de HTML
•Standard sur les navigateurs du marché,
•Filtre générant du HTML dans la plupart des outils Bureautique,
•Portable d ’un environnement à l ’autre : UNIX, WINDOWS, APPLE,..
•Facile d ’utilisation & à comprendre,
•Existence d ’une gamme importante d ’outils sur le marché,
•Editable & modifiable avec un simple éditeur de textes.
•Documents souvent peu volumineux.
1. Généralités - Comparer HTML & XML : Les lacunes de HTML
•HTML ne permet pas de distinguer la partie présentation, de la partie données.
•Une page HTML est difficilement exploitable pour extraire l’information et la retraiter :
•Exemple : constituer une base de données de recette en exploitant les nombreux sites disponibles sur Internet ..!
•Effectuer une recherche dans un ensemble de fichiers HTML donne des résultats approximatif.
•Exemple : Une recherche dans un moteur de recherche fournit un nombre important de référence sans rapport avec la requête lancée.
•Impossible de présenter de façons différentes les données d ’une page HTML.
•Exemple : références croisées.
•Difficile de compléter les données d ’une page HTML statique.
•HTML ne permet pas de compléter les balises en fonction des besoins.•Evolution des balises soumises au W3C
1. Généralités - Comparer HTML & XML : Les Avantages de XML
•XML est un langage de spécification
•Permet la création de balises : Les balises et leurs contenus représentent un structure de données.
•Séparation du contenu et de la représentation : Les feuilles de styles XSL permettent de formater les données.
•La définition des Balises est contenu dans un dictionnaire appelé Document Type Definition (DTD) optionnel permettant de créer un dialecte XML.
Exemple : Mathematical Markup Language (MathML)
Utilisation de XML pour les équations mathématiques
Chemical Markup Language (CML)Utilisation de XML pour les objets chimiqies
•La rédaction d ’un document XML est soumise à des règles strictes, évitant ainsi toute ambiguïté.
1. Généralités - Comparer HTML & XML : Les Inconvénients de XML
•On ne peut pas aujourd’hui architecturer entièrement un système d’information en XML.
•XML n’est qu’un élément d’une architecture plus complexe.
•Les outils de conception actuels sont encore incomplets.
•Seul IE 5 reconnaît actuellement XML. Navigator à partir de la version 6 interprétera également ce langage.
•La plupart des navigateurs utilisés aujourd’hui n’interprète pas le XML.
•Les parseurs disponibles donnent des résultats quelques fois différents. Principalement dans l’interprétation des feuilles de styles.
2. Le XML - Spécifications de XML
XML développé par le XML Working Group formé par le W3C en 1996.
Les objectifs de conception de XML sont les suivants :
1. XML sera utilisable sans difficulté sur Internet ; 2. XML soutiendra une grande variété d'applications ; 3. XML sera compatible avec SGML ; 4. Il sera facile d'écrire des programmes traitant les documents
XML ; 5. Le nombre d'options dans XML doit être réduit au minimum,
idéalement à aucune ; 6. Les documents XML devraient être lisibles par l'homme et
raisonnablement clairs ; 7. La conception de XML devrait être préparée rapidement ; 8. La conception de XML sera formelle et concise ; 9. Il sera facile de créer des documents XML ; 10. La concision dans le balisage de XML est de peu d'importance.
2. Le XML - Structure d ’un fichier XML
Un document XML peut être représenté sous la forme d’un Arbre.
Il possède une racine et chaque Elément représente un nœud.
<Document><Intro/><Chapitre_1>
<Titre_1><Titre_1-1/><Titre_1-2/><Titre_1-3/>
</Titre_1><Titre_2/><Titre_3/>
<Chapitre_1><Chapitre_2/><Chapitre_3/><Conclusion/>
</Document>
Racineex :
Document
Chapitre_1 Chapitre_2 Chapitre_3Intro Conclusion
Titre_1 Titre_2 Titre_3
Titre_1-1 Titre_1-2 Titre_1-3
2. Le XML - Définition
Déclaration :• En première ligne dans un document XML• Facultative mais recommandée par le W3C
Racine :• Elément UNIQUE
Eléments :• Définissent le contenu d ’une balise XML• Peuvent contenir d ’autres éléments• Peuvent être vides• Peuvent contenir du texte.
Attributs :• Ajoutent des données à un éléments
Entités :• Raccourcis • Similaires aux constantes
Le XML permet de créer ses propres balises.
Exemple de document structuré en XML :
<?xml version version="1.0"?><MOTEURS><MOTEUR marque = ‘Peugeot’> <PUISSANCE>5</PUISSANCE> <CYLINDREE>1.2</CYLINDREE> <CARBURATION>Essence</CARBURATION ></MOTEUR>
<MOTEUR marque = ‘Renault’> <PUISSANCE>4</PUISSANCE> <CYLINDREE>1.3</CYLINDREE> <CARBURATION>Diesel & Diesel</ CARBURATION ></MOTEUR> </MOTEURS>
2. Le XML - Exemple
Déclaration
Attribut
Racine
Elément
Entité
2. Le XML - Type d ’encodage
XML utilise les jeux de caractères de la norme ISO 10646 ou Unicode.Standard contrôlé par le W3C, permet de supporter les caractères de tous les
langages.Ainsi tous les caractères internationaux peuvent être référencés en utilisant leur
représentation Unicode :
Ex pour Ä utiliser Ä
Les caractères sont codés sur 4 octets pour réduire la taille des chaînes un différents types de codage peut être utilisé :
Les plus fréquemment utilisés sont :
· UTF-16 : codage des caractères sur 16 bits
· UTF-8 : codage des caractères sur 8 bits
. UTF-7 : codage des caractères sur 7 bits
· ISO-8859-1
<?xml version='1.0' encoding='UTF-8'?>
2. Le XML - Document XML Bien Formé
Un document XML doit répondre aux critères suivants:
·les valeurs d'attributs doivent être entre en guillemets " "
·les noms des attributs doivent tous être en minuscules
·toute balise ouverte doit être fermée ex : <p>.......</p>
·les balises uniques doivent être de la forme <balise/>,
·les caractères < et & écrits < et &
·un document commence par la déclaration suivante :<?xml version="1.0" standalone="yes"?>(yes, s'il est seul et no s'il est accompagné d'une DTD)
2. Le XML - Eléments ou Attributs ???
Aucune règle existe.
Eléments :• Pour les informations faisant partie de l ’objet ex Titre
d ’un livre.• Pour les informations répétées.• Pour les informations pouvant être regroupées en unitié
logique.
Attributs :• Les identifiants.• Pour éviter des arborescences profondes.• Pour limiter les valeurs.
Donner toujours la préférence aux ElémentsPour des raisons de performances :• Chargement plus rapide• Indexation plus rapide (implique une recherche plus
rapide)
3. La DTD - Définition
DTD (Document Type Definition) est l'acronyme Définition de type de document.
Elle va permettre de définir la structure interne d’un document XML,
Son l'utilisation est facultative. Un document répondant à une DTD est dit VALIDE.
La Validation processus de vérification d ’un document XML :
• Les données sont dans le bonne ordre,
• Les données sont dans le bon format,
• Les champs obligatoires sont présents,….
Un document BIEN FORME n’est pas forcément VALIDE
3. La DTD - Interne ou Externe
La DTD peut prendre deux formes :
·soit interne, incluse dans une feuille XML ·soit externe, dans un fichier spécifique permettant sa réutilisation.
Document avec DTD externe :<?xml version="1.0" standalone = "no" ?><!DOCTYPE accueil SYSTEM "racine.dtd">
<racine>Bonjour!</racine>
Document avec DTD interne :<?xml version="1.0" encoding="UTF-8" standalone = "yes" ? ><!DOCTYPE racine [ <!ELEMENT racine (#PCDATA)>]>
<racine >Bonjour!</racine >
Ces documents s ’auto décrivent.
La DTD doit avoir le même nom que la racine.
3. La DTD - Les Types d’éléments
La déclaration de type d'élément
La déclaration de type d'un élément spécifie le contenu de cet élément.
La notation est la suivante : <!ELEMENT NomElément TypeElément>Les différents types
EMPTY : pour les éléments sans contenu. Ex <BR/>ANY : pour les éléments dont on ignore le contenu
#PCDATA: pour les données textuelles
Exemples <!ELEMENT br EMPTY><!ELEMENT titre (Chapitre|Introduction|Conclusion)><!ELEMENT auteur (#PCDATA)>
3. La DTD - Les Répétitions
Déclaration de l'élément racine :
<!ELEMENT documents(document)>
Déclaration des éléments fils de la racine :
<!ELEMENT document(titre,auteur,texte)>
<!ELEMENT titre (#PCDATA)>
<!ELEMENT auteur (#PCDATA)>
<!ELEMENT texte (introduction?,chapitre+,conclusion?)>
Répétition :
• Par défaut répété une seule fois,
• ? optionnel,
• * plusieurs fois ou pas du tout,
• + au moins une fois.
3. La DTD - Les Attributs
L’instruction ATTLIST
Cette instruction associe des attributs à un élément :<!ATTLIST document
prix CDATA #REQUIRED, // valeur donnée
promotion (oui|non) "non" // Liste de valeurs possibles
>
Les types d ’attributs :
#REQUIRED : obligatoire
#IMPLIED : facultatif
#FIXED : valeur par défaut spécifiée
Exemple :
<!ATTLIST element attribut (valeur1| valeur2 | valeur3) "valeur1">>
3. La DTD - Les Schémas
Sous l’impulsion de Microsoft, la notion de schéma a été introduite dans XML.
Lacune de la DTD :
La DTD ne permet pas de spécifier le type d’un élément (string, date, ..)
Le Schéma devrait remplacer à terme la DTD. Plus complète elle introduit les notions :
•De contrainte sur le contenu du modèle. Ordre et séquence des Eléments.
•De contrainte sur les types de données. Valeurs valides pour une données.
Néanmoins, l’absence de spécification, est un frein au développement des Schémas.
Les principales propositions sont :
•XML Data/XML Data Reduced
•Document Content Description (DCD) : Typage Fort des Données, Limite des valeurs, Héritage.
3. La DTD - Les Schémas<?xml version version="1.0"?>
<MOTEURS>
<MOTEUR marque = ‘Peugeot’>
<PUISSANCE>5</PUISSANCE> <CYLINDREE>1.2</CYLINDREE> <CARBURATION>Essence</CARBURATION ></MOTEUR>
<MOTEUR marque = ‘Renault’>
<PUISSANCE>4</PUISSANCE> <CYLINDREE>1.3</CYLINDREE> <CARBURATION>Diesel & Diesel</ CARBURATION ></MOTEUR>
</MOTEURS>
3. La DTD - Les Schémas
<xsd:schema xmlns:xsd="http://www.w3.org/2000/10/XMLSchema" elementFormDefault="qualified">
<xsd:element name="MOTEURS">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="MOTEUR" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="MOTEUR">
<xsd:complexType>
<xsd:sequence maxOccurs="1">
<xsd:element ref="CARBURATION"/>
<xsd:element ref="CYLINDREE"/>
<xsd:element ref="PUISSANCE"/>
</xsd:sequence>
<xsd:attribute name="marque" use="required">
<xsd:simpleType>
<xsd:restriction base="xsd:NMTOKEN">
<xsd:enumeration value="Peugeot"/>
<xsd:enumeration value="Renault"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
</xsd:complexType>
</xsd:element>
<xsd:element name="CARBURATION" type="xsd:string"/>
<xsd:element name="CYLINDREE">
<xsd:simpleType>
<xsd:restriction base="xsd:decimal">
<xsd:enumeration value="1.2"/>
<xsd:enumeration value="1.3"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="PUISSANCE">
<xsd:simpleType>
<xsd:restriction base="xsd:byte">
<xsd:enumeration value="4"/>
<xsd:enumeration value="5"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:schema>
3. La DTD - Les Schémas
4. Les NAMES SPACES
Ils correspondent à une recommandation du W3C datant de janvier 1999.
•Ils permettent d’identifier de manière unique les balises utilisées dans un document XML.
Les espaces de nom sont utilisés afin de bien dissocier les différentes syntaxes que l'on peut trouver dans un document XML.
Déclaration :
<xsl:stylesheet xmlns:"http//www.w3.org/1999/XSL/Tranform" version= "1.0">
Plusieurs names spaces peuvent être utilisé dans la rédaction d ’un document XML.xmlns:name1="http//…../nspaces/name1.dtd"
xmlns:name2="http//…../nspaces/name2.dtd"
Dans le Document les éléments seront alors préfixés de nom correspondant à leur names spaces.<name1:element>
<name2:element/>
</name1:element>
5. Feuilles de Style XSL - Définition
Langage de mise en forme de feuille de Style :
•Il permet la transformation d’une feuille XML.
•Il permet la manipulation d’un arbre ou chaque élément XML représente un nœud.
•Il en résulte un nouvel arbre.
•XSL fournit la plupart des structures de contrôle d’un langage classique.
•XSL permet de générer des arbres sous différents formats (XML, HTML,..).
La transformation XSL :
•Le résultat s ’obtient en appariant les structures (Pattern matching). Ceci permet donc de sélectionner le nœud, l ’attribut sur lequel doit s ’appliquer une transformation.
•Un modèle (template) permet d ’indiquer les actions à réaliser lors de l ’appariement.
•Il est composé de règles de mise en forme.
5. Feuilles de Style XSL - Rôle
XSL est utiliser pour transformer un page XML en HTML en WML ...
•Une page XML est une source de données.
•Les pages XSL sont des représentations différentes des données :
•Références croisées, cumuls, tris, traitements divers sur les données,…
•Une page XSL est un document XML bien formé.
•Attention la DTD de l ’arbre destination peut-être différente de l ’arbre d ’origine.
•On compare souvent CSS à XSL. CSS ne dispose pas de structure de contrôle, il ne permet que la mise en forme.
5. Feuilles de Style XSL - Exemple page XML
<?xml version="1.0"?
<?xsl:stylesheet type="text/xsl" href="exemple.xsl"?>
<documents>
<article>
<auteur> Dupond </auteur>
<date> 01 janvier 2001 </date>
<titre> Le XSL </titre>
</article>
<article>
<auteur> Martin </auteur>
<date> 10 janvier 2001 </date>
<titre> Le XML </titre>
</article>
</documents>
Déclaration Lien XSL
Racine XML
5. Feuilles de Style XSL - Exemple page XSL
<?xml version="1.0"?>
<xsl:stylesheet xmlns:"http//www.w3.org/1999/XSL/Tranform" version= "1.0">
<xsl:output method="html"/>
<xsl:template match="/">
<html>
<BODY> <xsl:apply-templates select=“article”/> </BODY>
</html> </xsl:template>
<xsl:template match="article">
...
</xsl:template>
Déclaration Names Spaces
Template racine
Type de sortie
HTML Application d’un modèle aux noeuds fils
Template article
5. Feuilles de Style XSL - Le matching
<xsl:template match="…"> </xsl:template>
* correspond à n'importe quel élément
element1 | element2 trouve tous les élément element1 et element2
element1 / element2 trouve tous les éléments elemen2 ayant element1 comme parent
element1 // element2 correspond à n'importe quel élément element2 dont un ancêtre est element1
/ correspond au noeud racine
text() correspond à n'importe quel noeud textuel
processing-instruction() correspond à n'importe quel instruction de traitement
node() correspond à n'importe quel noeud autre qu'un noeud attribut et que le noeud racine
element1 [1] correspond au premier des éléments element1 d'un parent
element1 [last()=1] correspond à n'importe quel élément element1 qui est l'unique élément element1 de son élément parent
element1 / element2[position()>1] correspond à tous les éléments element2, autres que le premier, et dont le parent est element1
@class correspond à tous les attributs class
@* correspond à n'importe quel attribut
5. Feuilles de Style XSL - Structures de contrôles
Création de variables
<xsl:variable name = variable select = expression> </xsl:variable>
Création d'éléments :
<xsl:element name = element>
</xsl:element>
Création d’attributs :
<xsl:attribute name = attribut>
</xsl:attribute>
Création d’un text :
<xsl:text> blabla </xsl:text>
5. Feuilles de Style XSL - Structures de contrôles
Insertion de la valeur d’un élément :
<xsl:value-of select="."/> <xsl:value-of select="nom"/>
Boucle :
<xsl:for-each select="element"/> … </xsl:for-each>
Tri :
<xsl:sort select="element" order="descending"/>
Alternative :
<xsl:if test="expression"/> … </xsl:if>
Exemple :
<xsl:if test= "position()=last()"/> … </xsl:if>
<xsl:choose>
<xsl:when test="expression"/> … </xsl:when>
<xsl:when test="expression"/> … </xsl:when>
<xsl:otherwise> … </xsl:otherwise>
</xsl:choose>
5. Feuilles de Style XSL - Exemple
<xsl:template match = "personnel">
<center> Liste Employe</center>
<xsl:for-each select="employe[position()mod 2 = 1]">
<xsl:sort select="nom"/>
<xsl:call-template name="employeCall">
<xsl:with-param name="nom">
<xsl:value-of select="nom"/>
</xsl:with-param>
</xsl:call-template>
<xsl:element name="br"/>
</xsl:for-each>
</xsl:template>
Règle modèle
Boucle
Appel d'une règle
Paramètre
Création d'unElement
5. Feuilles de Style XSL - Exemple
<xsl:template name="employeCall">
<xsl:param name="nom"/>
<b>
<xsl:if test="position() mod 2 = 1">
<xsl:value-of select="$nom"/>
</xsl:if>
</b>
</xsl:template>
z
Récupération du Paramètre
Conditionnelle
Affichage d'une variable
Règle modèle
6. Les API - SAX
Interface Simple API for XML (SAX).
Ces API sont orientées événements.
Le gestionnaire d ’événement est similaire à celui de Windows pour gérer les IHM.
Le moteur SAX déclenche un événement lorsqu’il détecte une balise de début ou une balise de fin.
Implémenté en JAVA, Python, PHP.
Avantage :
Ne charge pas globalement le fichier XML en mémoire avant de commencer le traitement.
Inconvénient :
Pas de construction d’arbre
Fonction PHP3 :
int xml_set_element_handler(int parser, string startElement, string endElement);
parser : pointeur sur un objet parseur
startElement : fonction déclenchée lorsqu’une balise de début est rencontrée.
endElement : fonction déclenchée lorsqu’une balise de fin est rencontrée.
6. Les API - SAX Exemple en PHP$file = "data.xml"; $depth = array();
function startElement($parser, $name, $attrs){ ... }
function endElement($parser, $name){ ... }
$xml_parser = xml_parser_create();
xml_set_element_handler($xml_parser, "startElement", "endElement");
if (!($fp = fopen($file, "r"))) { die("could not open XML input");}
while ($data = fread($fp, 4096)) { if (!xml_parse($xml_parser, $data, feof($fp))) { die(sprintf("XML error: %s at line %d", xml_error_string(xml_get_error_code($xml_parser)), xml_get_current_line_number($xml_parser))); }}xml_parser_free($xml_parser);
Fonction exécutée pour traiter le début d’un élément
Fonction exécutée pour traiter la fin d’un élémentObjet Parser
Associe les Evts
Traite le fichier
Gestion des Erreurs
6. Les API – Appariage en PHP 4
<?php
$xslData = '<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"><xsl:template match="article"> <h2><xsl:value-of select="title"></h2> <h3><xsl:value-of select="author"></h3></xsl:template></xsl:stylesheet>';
$xmlData = '<?xml version="1.0"><article> <title>Learning German</title> <author>Sterling Hughes</author></article>';
if (xslt_process($xslData, $xmlData, $result)){//OK
} else {// Erreur
}
?>
Chaine XSL
Chaine XML
Appariage
7. Les API - DOM
•Le DOM est une interface de programmation.
•Il fournit un ensemble de fonctions :
•Permettant la manipulation de document XML.
•La création de document XML.
•Contrairement à SAX, le document XML est représenté en mémoire sous la forme d ’une structure hiérarchique.
•Les API disponibles, permettent de charger, parcourir, copier, créer, manipuler les nœuds de l ’arbre représentant ainsi les éléments du document XML.
•L’inconvénient majeur, est le chargement globale du document XML en mémoire. Peut entraîner des problèmes de temps de réponse lors du traitement des documents volumineux.
•Le DOM est implémenté dans les langages : JAVASCRIPT, VB SCRIPT donc très souvent utilisé dans les ASP.
7. Les API - DOM Les fonctions de base
•xmlDoc.documentElement : Elément Racine
•xmlDoc.load("document.xml") : Chargement en mémoire d’un document XML
•xmlDoc.async : Mode de chargement en mémoire Asynchrone / Synchrone
•noeud.firstChild : Premier fils d’un nœud
•noeud.lastChild : dernier fils d’un nœud
•noeud.parentNode : Nœud Parent d’un nœud
•noeud.childNodes[] : Tableau des nœuds fils
•noeud.selectNodes("nom") : Retourne le tableau des nœuds fils ayant pour nom nom.
•noeud.getAttributes("att") : la valeur de l ’attribut att du nœud.
•noeud.setAttributes("att",valeur): Positionne la valeur de l ’attribut att du nœud.
•noeud.hasChildNodes()
•createElement("nom")
•loadXML("chaine")
7. Les API - DOM Parcours d’un arbre en ASP<%@ Language=JavaScript %>
<%xmlDoc = Server.CreateObject("MSXML2.DOMDocument");
xmlDoc.async = false;
xmlDoc.load(Server.mapPath ("personnel.xml"));
racineDoc = xmlDoc.documentElement;
for (i = 0 ; i < racineDoc.childNodes.length ; i++) {
employe = racineDoc.childNodes[i];
Response.write ("<BR><HR><BR>Nom : ");Response.write (employe.childNodes[0].text + " " +
employe.childNodes[1].text + " " + employe.childNodes[2].text);}
%>
Objet DOM
Chargement SynchroneChargement du document
RacineNbre de Nœuds Fils
Parcours des Fils
Traitement des Fils
7. Les API – DOM – Appariage XSL en ASP<%@ LANGUAGE = JScript %><%
var sourceFile = Server.MapPath("simple.xml");
var styleFile = Server.MapPath("simple.xsl");
var source = Server.CreateObject("Microsoft.XMLDOM"); source.async = false; source.load(sourceFile);
var style = Server.CreateObject("Microsoft.XMLDOM"); style.async = false; style.load(styleFile);
Response.Write(source.transformNode(style));%>
Doc XML
Doc XSL
DOM XML
DOM XSL
Appariage
8. Les logiciels - Les parsers XML
Coté Serveur
Les parsers Validant
Microstar Aelfred
Les parsers non Validant
MSXML (intégré à IIS)
IBM XMLJ
Côté client
Internet Explorer 5.0
Netscape Navigator V6
Interface de programmation
Interface Simple API for XML (SAX)
Interface Document Oject Model (DOM)
8. Les logiciels - Parsing coté client
Poste Client
Poste Client
Poste Client
Internet / intranet
Firewall
Flux HTTP
Serveur
Flux HTTP
IIS / APACHE
Documents XML Feuille XSLDTD
IE 5 / Navigator 6
8. Les logiciels - Parsing coté serveur
Poste Client
Poste Client
Poste Client
Internet / intranet
Firewall
Flux HTTP
Serveur
Flux HTTP
IIS
HTML
Documents XML Feuille XSLDTD
ASPJavascript / VB Script
API DOM
APACHE
Documents XML Feuille XSLDTD
PHP3 /4
API SAX
HTML
8. Les logiciels - Les langages de requêtes
XML-QL
Proposé par Bell Labs
Il permet d'interroger des documents XML
Il fournit également un interface de création de document XML
Ce langage est inspiré du SQL
XQL
Proposé par Microsoft
Il permet d'interroger des documents XML via XSL
Base de données Orientés Objets
Elles génèrent des documents XML
ORACLE v 8i
SQL Serveur 2000 fournit des fonctionnalités XML
8. Les logiciels - Les éditeurs XML
Editeurs XML
XML Notepad (Parser Microsoft)
XMLPRO (Parser IBM XML 4J)
Xmetal de softquad
Editeurs DTD
XML Autority : Construction graphique d ’un DTD
Near & Far Designer XML
Editeurs XSL
eXcelon Stylus
XML SPY
9. Les Références - Les sites WEB
La référence dans le domaine :
http://www.w3.org
http://msdn.microsoft.com/xml/reference/xsl/XSLElements.asp
http://www.w3schools.com/
http://www.vbxml.com/xsl/
9. Les Références - Les ouvrages
La référence dans le domaine :
XML. Langage et applications de MICHARD, Alain EYROLLES
INTRODUCTION AU XML SAINT-LAURENT Simon OSMAN EYROLLES MULTIMEDIA 2000
XSLT Programmer's Reference Michael KAY Edition WROX
top related