679 pages
Français

XSLT fondamental

-

Obtenez un accès à la bibliothèque pour le consulter en ligne
En savoir plus

Description

Plus qu'un langage de feuilles de styles, un vrai langage de programmation !


Complément indispensable d'XML, le langage XSLT a deux principaux usages. Il permet d'abord de convertir un document XML en un format adapté à l'affichage ou à l'impression (HTML pour le Web, RTF ou PDF pour l'impression, etc.). Mais XSLT est bien plus qu'un simple langage de feuilles de styles, c'est aussi un véritable langage de programmation, grâce auquel on peut effectuer toutes sortes de traitements sur les documents XML : en modifier la structure, en extraire des informations, en filtrer le contenu, etc.



Un langage déstabilisant pour les programmeurs



Dans cet ouvrage de niveau avancé, Philippe Drix expose avec beaucoup de précision toutes les subtilités du langage XSLT, qui impose aux développeurs un véritable changement culturel par rapport à des langages de programmation classiques tels que C++, Java, VB ou Perl.



Vingt design patterns XSLT prêts à l'emploi



La grande originalité du livre est de proposer dans la seconde partie une sélection de design patterns, c'est-à-dire des modèles de transformations XSLT pouvant être réutilisés dans de nombreux contextes : applications documentaires, Web, intranet, EAI, etc. Parmi les patterns proposés :




  • Inclusion conditionnelle de feuille de style


  • Visiteur récursif de node-set


  • Constitution d'un node-set de valeurs toutes différentes


  • Copie presque conforme d'un document XML


  • Détection d'un élément avec domaine nominal par défaut


  • Références croisées inter-fichiers


  • Génération d'hyperliens


  • Regroupements par valeur ou par position


  • Regroupements hiérarchiques


  • Génération d'une feuille de style par une autre feuille de style


  • Génération de pages HTML dynamiques pour un portail


  • Construction dynamique d'un tableau HTML


  • Génération de documents multiples


  • Etc.




  • Introduction


  • A quoi sert XSLT ?


  • Un premier exemple d'application


  • Les langages XPath et XSLT


    • XPath


    • Au coeur de XSLT : structure d'un programme XSLT, fonctionnement du processeur XSLT, concordance de motifs et règles de transformation


    • Les instructions de transformation


    • Les instructions de programmation


    • Les instructions de création


    • Découpage d'une application XSLT




  • Design patterns


    • 10 patterns de programmation


    • 10 patterns de transformation




  • Annexes


    • Exemple de transformation XML-RTF


    • Aide-mémoire XSLT (balises, fonctions prédéfinies...)


    • Évolutions de XSLT 1.0 à 2.0




  • Glossaire

Sujets

Informations

Publié par
Date de parution 07 juillet 2011
Nombre de lectures 373
EAN13 9782212850215
Langue Français
Poids de l'ouvrage 2 Mo

Informations légales : prix de location à la page 0,0225€. Cette information est donnée uniquement à titre indicatif conformément à la législation en vigueur.

XSLT fondamental
P h i l i p p e D r i x
XSLT fondamental
R
emerci
emen
t
s
Ce livre n’aurait pu être écrit sans le soutien actif d’Objectiva (www.objectiva.fr), ma société, qui a beaucoup investi pour me permettre de dégager du temps et des moyens. Grâce à la confiance qui m’a été accordée, j’ai pu bénéficier de conditions de travail exceptionnelles, puisque la quasi-totalité de ce livre a été pensé et écrit chez moi, à domi-cile.
Mes remerciements vont ensuite à Cyril Rognon, l’un des fondateurs d’Objectiva, qui m’a fourni beaucoup de pistes et d’idées tout au long de ce travail.
Ensuite, ils iront à Paul Terray, de la société 4DConcept, qui bien voulu tenir le rôle du relecteur, et m’a fait parvenir de nombreuses remarques qui ont eu un impact important sur la présentation générale de ce livre.
Enfin, je dois remercier ma femme et mes enfants d’avoir tenu bon pendant la centaine de jours où je n’étais plus là pour personne...
Table des matières
Remerciements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
CHAPITRE 1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Traitement de documents XML. . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . Le langage XSL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Statut actuel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Evolutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Divers modes d’utilisation de XSLT . . . . . . . . . . . . . . . . . . . . . . . . . . . . Mode Commande . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Mode Navigateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Mode Serveur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Typologie des utilisations d’XSL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Un avant-goût d’XSLT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exemple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Extraction individuelle (pull processing) . . . . . . . . . . . . . . . . . . . . . . . . . Le langage XPath . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Autre exemple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Parcours de lecture. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
PREMIÈREPARTIE
Les langages XPath et XSLT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
CHAPITRE 2 Le langage XPath. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modèle arborescent d’un document XML vu par XPath . . . . . . . . . . Nœud de type root . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Nœud de type element . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Nœud de type attribute . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
V
1 1 2 2 4 5 5 6 7 8 9 10 14 15 17 24
25
29 30 31 31 33
VIII
Table des matières
Nœud de type namespace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Nœud de type processing-instruction . . . . . . . . . . . . . . . . . . . . . . . . . . . . Nœud de type comment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Nœud de type text . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exemple d’arbre XML d’un document . . . . . . . . . . . . . . . . . . . . . . . . . . .
XPath, un langage d’expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Expressions sans argument de type node-set . . . . . . . . . . . . . . . . . . . . . . . Expressions avec arguments de type node-set . . . . . . . . . . . . . . . . . . . . . . Expressions mixtes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Principes de la construction d’un chemin de localisation . . . . . . . . . . Nœud contexte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chemin de localisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Evaluation d’un chemin de localisation . . . . . . . . . . . . . . . . . . . . . . . . . . .
Etape de localisation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . Axes de localisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Déterminant (Node Test) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Prédicats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Chemins de localisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Evaluation d’un chemin de localisation . . . . . . . . . . . . . . . . . . . . . . . . . . . Clé pour la lecture d’un chemin de localisation . . . . . . . . . . . . . . . . . . . . Exemples de chemins de localisation . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Formes courtes des chemins de localisation . . . . . . . . . . . . . . . . . . . . . . Principe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exemples de chemins de localisation en formes courtes . . . . . . . . . . . . . .
Variantes syntaxiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Expressions diverses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Evaluation d’une étape de localisation par rapport à un node-set renvoyé par une expression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Enumération d’un node-set renvoyé par une expression . . . . . . . . . . . . . . Application d’un prédicat à une expression renvoyant un node-set . . . . .
CHAPITRE 3 Au cœur du langage XSLT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Structure d’un programme XSLT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Eléments XSLT, instructions, et instructions de premier niveau . . . . . . . . Règles de transformation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Forme d’une règle XSLT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Un premier exemple de programme XSLT . . . . . . . . . . . . . . . . . . . . . . . . Lancement du processeur XSLT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
34 35 35 36 38 40 41 42 45 47 47 47 47 48 49 54 57 62 63 64 67 68 68 69 70 70
71 71 72
75 75 76 78 79 81 83
Table des matières
Principe de fonctionnement d’un processeur XSLT. . . . . . . . . . . . . . . Construction - sérialisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Les trois phases du processus complet . . . . . . . . . . . . . . . . . . . . . . . . . . . Spécification d’une transformation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modèle de traitement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Motifs (patterns) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Concordance de motifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Recherche de la concordance de motifs (pattern matching) . . . . . . . . . . . Syntaxe et contrainte pour un motif XSLT . . . . . . . . . . . . . . . . . . . . . . . . Exemples de motifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Priorités entre règles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Algorithme de calcul des priorités par défaut . . . . . . . . . . . . . . . . . . . . . . Forçage de la priorité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Résumé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Instruction xsl:value-of . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exemple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Déroulement du processus de traitement sur cet exemple . . . . . . . . . . . . . Instruction xsl:apply-templates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exemple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Déroulement du processus de traitement sur cet exemple . . . . . . . . . . . . . Règles par défaut . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Règles par défaut pour la racine d’un arbre XML ou un élément . . . . . . . Règles par défaut pour un nœud de type text ou attribute . . . . . . . . . . . . Règles par défaut pour un nœud de type comment ou processing-instruction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exemples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Comportement inattendu d’un programme XSLT . . . . . . . . . . . . . . . . . . . Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
CHAPITRE 4 Les instructions de transformation . . . . . . . . . . . . . . . . . . . . . . . . . Instruction xsl:template . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Syntaxe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sémantique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Instruction xsl:value-of. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Syntaxe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Règle XSLT typique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sémantique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exemple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
83 84 85 85 87 91 92 94 98 98 100 100 101 101 102 103 104 107 107 108 119 120 120
120 120 123 125
127 128 128 128 128 129 129 129 130
IX
X
Table des matières
Variante syntaxique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Instruction xsl:apply-templates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Syntaxe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Règle XSLT typique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sémantique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exemple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Variante syntaxique select="..." . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Variante syntaxique mode="..." . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Instruction xsl:for-each . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Bande-annonce . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Syntaxe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Règle XSLT typique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sémantique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exemple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Autre sémantique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exemple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Instruction xsl:sort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Bande-annonce . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Syntaxe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Règle XSLT typique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sémantique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exemple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Variantes syntaxiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Tri à clés multiples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Instruction xsl:copy-of. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Bande-annonce . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Syntaxe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Règle XSLT typique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sémantique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exemple trivial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Autre exemple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
CHAPITRE 5 Les instructions de programmation . . . . . . . . . . . . . . . . . . . . . . . . . Instruction xsl:if . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Bande-annonce . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Syntaxe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Règle XSLT typique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sémantique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exemple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
131 131 131 131 131 132 133 134 137 137 138 138 138 139 140 141 144 144 145 146 146 147 151 154 156 156 157 157 157 160 161
167 169 169 169 169 170 170
Table des matières
Instruction xsl:choose . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Bande-annonce . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Syntaxe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Règle XSLT typique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sémantique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exemple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instruction xsl:variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Bande-annonce . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Syntaxe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Règle XSLT typique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sémantique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Variables globales et locales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Utilisation d’une variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Evaluation d’une variable globale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Temporary Source Tree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Result Tree Fragment (XSLT 1.0) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Règles de visibilité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Conflits de noms de variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instruction xsl:param. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Bande-annonce . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Syntaxe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sémantique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instruction xsl:template . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Bande-annonce . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Syntaxe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modèle nommé typique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sémantique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exemple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instruction xsl:call-template. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Bande-annonce . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Syntaxe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sémantique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exemple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instruction xsl:apply-templates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Syntaxe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sémantique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instruction xsl:message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Syntaxe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sémantique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
174 174 175 175 176 176 179 180 181 181 182 184 184 187 192 208 212 214 216 216 216 217 219 220 222 222 222 223 229 229 229 230 231 233 233 234 234 234 235
XI