Recommandation XSL1 du W3C en version française

Statut du document traduit

Ceci est une traduction de la Recommandation du W3C portant sur la première version du langage de feuille de style extensible (XSL1).

Cependant ce n'est pas la version officielle en français de la Recommandation. Seul le document original en anglais a valeur de norme. On peut l'obtenir à : http://www.w3.org/TR/2001/REC-xsl-20011015/.

Avertissement

Des erreurs ont pu survenir malgré le soin apporté à ce travail.

Notes sur la traduction

Certains concepts sont difficiles à rendre en français ou peuvent nécessiter une explication, aussi les expressions originales en anglais viennent parfois en renfort dans le texte sous cette forme :
ex. traduction [ndt. translation]

D'autre part, certains liens renvoient sur des définitions de la recommandation CSS2 originale. Ces liens sont doublés vers leur version française et sont signalés ainsi : vf.

Conventions : Les noms des propriétés, sauf dans les titres, apparaissent entre guillemets simples (ex. 'reference-orientation'), ceux des traits restent comme dans la version originale (ex. reference-orientation) et les valeurs des uns et des autres sont entre guillemets doubles (ex. "true").

Cette version française intègre toutes les corrections survenues depuis la première parution de la recommandation en 2001 sous forme de renvois entre la spécification et l'errata traduits comme ceci : « errata-E1 ». Elle est ainsi à jour en date du 18 novembre 2003 (voir la liste des dernières modifications à l'adresse http://www.w3.org/2001/10/REC-XSL-20011015-errata).

Archives compressées et autres formats

Cette traduction est disponible sous forme d'archive compressée et, le cas échéant, dans d'autres formats à l'adresse http://www.yoyodesign.org/doc/w3c/w3c.html.

Autres documents traduits

On peut consulter les traductions en français d'autres documents du W3C à
http://www.w3.org/Consortium/Translation/French

Notice légale

Copyright © 1994-2001 World Wide Web Consortium,
(Massachusetts Institute of Technology,
Institut National de Recherche en Informatique et en Automatique,
Keio University).
Tous droits réservés. Consulter la notice de copyright pour les productions du W3C.


Logo du W3C

Le langage extensible de feuille de style (XSL)
Version 1.0

Recommandation du W3C du 15 octobre 2001

Cette version :
http://www.w3.org/TR/2001/REC-xsl-20011015/
( PDF par RenderX, Fichier XML, HTML (un seul grand fichier), Fichier ZIP )
Dernière version :
http://www.w3.org/TR/xsl/
Version précédente :
http://www.w3.org/TR/2001/PR-xsl-20010828/
Auteurs et contributeurs :
Sharon Adler (IBM) <sca@us.ibm.com>
Anders Berglund (IBM) <alrb@us.ibm.com>
Jeff Caruso (Pageflex) <jcaruso@pageflexinc.com>
Stephen Deach (Adobe) <sdeach@adobe.com>
Tony Graham (Sun) <Tony.Graham@ireland.sun.com>
Paul Grosso (Arbortext) <paul@arbortext.com>
Eduardo Gutentag (Sun) <eduardo.gutentag@eng.sun.com>
Alex Milowski <alex@milowski.com>
Scott Parnell (Xerox) <Scott.Parnell@usa.xerox.com>
Jeremy Richman <JeremyRichman@compuserve.com>
Steve Zilles (Adobe) <szilles@adobe.com>

Résumé

Cette spécification définit les fonctions et la syntaxe du langage extensible de feuille de style (XSL), un langage pour exprimer des feuilles de style. Elle est composée de deux parties :

  1. un langage pour la transformation des documents XML ;

  2. un vocabulaire XML pour la spécification d'une sémantique de mise en forme.

Une feuille de style XSL spécifie la présentation d'une classe de documents XML en décrivant comment une instance de cette classe se transforme en un document XML en employant le vocabulaire de mise en forme.

Statut de ce document

Ce chapitre décrit le statut de ce document au moment de sa publication. D'autres documents peuvent venir l'annuler. Le dernier statut en date de cet ensemble de documents est consigné au W3C.

Ce document, qui a été revu par les membres du W3C et les tiers concernés, a été approuvé par le Directeur comme recommandation du W3C. C'est un document stable qui peut être utilisé comme matériel de référence ou cité comme norme de référence par un autre document. Le rôle du W3C, en produisant cette recommandation, est de mettre en lumière la spécification et d'en promouvoir le plus large déploiement. Ceci pour améliorer la fonctionnalité et l'interopérabilité du Web.

Ce document a été réalisé dans le cadre de l'Activité Style du W3C par le Groupe de Travail XSL (accès uniquement aux membres).

Les discussions publiques d'intérêt général sur XSL se déroulent sur la liste de diffusion XSL-List.

Merci de signaler les erreurs survenues dans ce document à xsl-editors@w3.org. Également disponibles, les archives des commentaires. La liste des erreurs connues de cette spécification se trouve à l'adresse http://www.w3.org/2001/10/REC-XSL-20011015-errata. Certaines parties de texte ont été recopiées de la recommandation CSS2, la liste des erreurs de cette spécification se trouve à l'adresse http://www.w3.org/Style/css2-updates/REC-CSS2-19980512-errata.html.

Une liste des recommandations du W3C en vigueur ainsi que d'autres documents techniques peut être consultée à l'adresse http://www.w3.org/TR/.

Table des matières

1 Introduction et vue d'ensemble
    1.1 Le traitement d'une feuille de style
        1.1.1 Les transformations de l'arbre
        1.1.2 La mise en forme
    1.2 Les avantages de XSL
        1.2.1 La mise en page et le défilement
        1.2.2 Les sélecteurs et la construction de l'arbre
        1.2.3 Un modèle étendu de disposition de la page
        1.2.4 Un modèle des aires complet
        1.2.5 L'internationalisation et les modes d'écriture
        1.2.6 Les liens
2 La transformation XSL
    2.1 La construction de l'arbre
    2.2 L'espace de nommage XSL
3 Introduction à la mise en forme
    3.1 La démarche conceptuelle
4 Le modèle des aires
    4.1 Introduction
    4.2 Les aires rectangulaires
        4.2.1 Les types d'aire
        4.2.2 Les traits communs
        4.2.3 Les définitions géometriques
        4.2.4 L'ordonnancement de l'arbre
        4.2.5 Les contraintes d'empilement
        4.2.6 Les tables de la ligne de base des polices
    4.3 Les espaces et la conditionnalité
        4.3.1 Les règles de résolution d'espace
        4.3.2 Les spécifiants d'espace sur-contraints
    4.4 Les aires de bloc
        4.4.1 Les aires de bloc empilées
        4.4.2 Les ajustements des intrusions
    4.5 Les aires de ligne
    4.6 Les aires en-ligne
        4.6.1 Les aires en-ligne empilées
        4.6.2 Les aires de glyphe
    4.7 Les contraintes d'ordonnancement
        4.7.1 Les contraintes générales d'ordonnancement
        4.7.2 La construction des lignes
        4.7.3 La construction en-ligne
    4.8 Les rétentions et les coupures
    4.9 Le modèle de rendu
        4.9.1 La géométrie
        4.9.2 La géométrie de la zone de visualisation
        4.9.3 La visibilité
        4.9.4 La bordure, l'espacement et l'arrière-plan
        4.9.5 Les marques intrinsèques
        4.9.6 La mise en couche et les conflits entre marques
    4.10 Un exemple d'arbre des aires
5 L'affinage et la résolution des propriétés
    5.1 Les valeurs spécifiées, calculées et réelles et l'héritage
        5.1.1 Les valeurs spécifiées
        5.1.2 Les valeurs calculées
        5.1.3 Les valeurs réelles
        5.1.4 L'héritage
    5.2 Le développement des raccourcis
    5.3 Le calcul des valeurs des propriétés correspondantes
        5.3.1 Les propriétés de bordure et d'espacement
        5.3.2 Les propriétés de marge, d'espace et d'indentation
        5.3.3 Les propriétés de hauteur et de largeur
        5.3.4 La géométrie sur-contrainte
    5.4 La correspondance entre une propriété simple et un trait
        5.4.1 Les propriétés background-position-horizontal et background-position-vertical
        5.4.2 La propriété column-number
        5.4.3 La propriété text-align
        5.4.4 La propriété text-align-last
        5.4.5 La propriété z-index
    5.5 La correspondance entre une propriété complexe et un trait
        5.5.1 Les propriétés word-spacing et letter-spacing
        5.5.2 La propriété reference-orientation
        5.5.3 Les propriétés writing-mode et direction
        5.5.4 La propriété absolute-position
        5.5.5 La propriété relative-position
        5.5.6 La propriété text-decoration
        5.5.7 Les propriétés de police
    5.6 La génération d'un trait non basé sur une propriété
    5.7 Les transformations basées sur des propriétés
        5.7.1 La propriété text-transform
    5.8 Le traitement Unicode BIDI
    5.9 Les expressions
        5.9.1 Le contexte d'une propriété
        5.9.2 L'ordre d'évaluation
        5.9.3 Les bases
        5.9.4 Les appels de fonction
        5.9.5 Les valeurs numériques
        5.9.6 Les valeurs numériques absolues
        5.9.7 Les valeurs numériques relatives
        5.9.8 Les chaînes
        5.9.9 Les couleurs
        5.9.10 Les mots-clés
        5.9.11 La structure lexicale
        5.9.12 Les conversions des valeurs des expressions
        5.9.13 Les définitions des unités de mesure
    5.10 La librairie des fonctions de base
        5.10.1 Les fonctions numériques
        5.10.2 Les fonctions de couleur
        5.10.3 Les fonctions de police
        5.10.4 Les fonctions de valeur de propriété
    5.11 Les types de données des propriétés
6 Les objets de mise en forme
    6.1 Introduction aux objets de mise en forme
        6.1.1 Les définitions communes à plusieurs objets de mise en forme
    6.2 Le contenu de l'objet de mise en forme
    6.3 Le sommaire des objets de mise en forme
    6.4 Les déclarations, la pagination et les objets de mises en forme pour la disposition
        6.4.1 Introduction
        6.4.2 fo:root
        6.4.3 fo:declarations
        6.4.4 fo:color-profile
        6.4.5 fo:page-sequence
        6.4.6 fo:layout-master-set
        6.4.7 fo:page-sequence-master
        6.4.8 fo:single-page-master-reference
        6.4.9 fo:repeatable-page-master-reference
        6.4.10 fo:repeatable-page-master-alternatives
        6.4.11 fo:conditional-page-master-reference
        6.4.12 fo:simple-page-master
        6.4.13 fo:region-body
        6.4.14 fo:region-before
        6.4.15 fo:region-after
        6.4.16 fo:region-start
        6.4.17 fo:region-end
        6.4.18 fo:flow
        6.4.19 fo:static-content
        6.4.20 fo:title
    6.5 Les objets de mise en forme de type bloc
        6.5.1 Introduction
        6.5.2 fo:block
        6.5.3 fo:block-container
    6.6 Les objets de mise en forme de type en-ligne
        6.6.1 Introduction
        6.6.2 fo:bidi-override
        6.6.3 fo:character
        6.6.4 fo:initial-property-set
        6.6.5 fo:external-graphic
        6.6.6 fo:instream-foreign-object
        6.6.7 fo:inline
        6.6.8 fo:inline-container
        6.6.9 fo:leader
        6.6.10 fo:page-number
        6.6.11 fo:page-number-citation
    6.7 Les objets de mise en forme des tables
        6.7.1 Introduction
        6.7.2 fo:table-and-caption
        6.7.3 fo:table
        6.7.4 fo:table-column
        6.7.5 fo:table-caption
        6.7.6 fo:table-header
        6.7.7 fo:table-footer
        6.7.8 fo:table-body
        6.7.9 fo:table-row
        6.7.10 fo:table-cell
    6.8 Les objets de mise en forme des listes
        6.8.1 Introduction
        6.8.2 fo:list-block
        6.8.3 fo:list-item
        6.8.4 fo:list-item-body
        6.8.5 fo:list-item-label
    6.9 Les effets dynamiques : les objets de mise en forme link et multi
        6.9.1 Introduction
        6.9.2 fo:basic-link
        6.9.3 fo:multi-switch
        6.9.4 fo:multi-case
        6.9.5 fo:multi-toggle
        6.9.6 fo:multi-properties
        6.9.7 fo:multi-property-set
    6.10 Les objets de mise en forme hors-ligne
        6.10.1 Introduction
        6.10.2 fo:float
        6.10.3 fo:footnote
        6.10.4 fo:footnote-body
    6.11 Les autres objets de mise en forme
        6.11.1 Introduction
        6.11.2 fo:wrapper
        6.11.3 fo:marker
        6.11.4 fo:retrieve-marker
7 Les propriétés de mise en forme
    7.1 Une description des groupes de propriétés
    7.2 Les aires de XSL et le modèle de la boîte de CSS
    7.3 Le rectangle de référence pour les calculs en pourcentage
    7.4 Les propriétés d'accessibilité communes
        7.4.1 source-document
        7.4.2 role
    7.5 Les propriétés de position absolue communes
        7.5.1 absolute-position
        7.5.2 top
        7.5.3 right
        7.5.4 bottom
        7.5.5 left
    7.6 Les propriétés auditives communes
        7.6.1 azimuth
        7.6.2 cue-after
        7.6.3 cue-before
        7.6.4 elevation
        7.6.5 pause-after
        7.6.6 pause-before
        7.6.7 pitch
        7.6.8 pitch-range
        7.6.9 play-during
        7.6.10 richness
        7.6.11 speak
        7.6.12 speak-header
        7.6.13 speak-numeral
        7.6.14 speak-punctuation
        7.6.15 speech-rate
        7.6.16 stress
        7.6.17 voice-family
        7.6.18 volume
    7.7 Les propriétés de bordure, d'espacement et d'arrière-plan communes
        7.7.1 background-attachment
        7.7.2 background-color
        7.7.3 background-image
        7.7.4 background-repeat
        7.7.5 background-position-horizontal
        7.7.6 background-position-vertical
        7.7.7 border-before-color
        7.7.8 border-before-style
        7.7.9 border-before-width
        7.7.10 border-after-color
        7.7.11 border-after-style
        7.7.12 border-after-width
        7.7.13 border-start-color
        7.7.14 border-start-style
        7.7.15 border-start-width
        7.7.16 border-end-color
        7.7.17 border-end-style
        7.7.18 border-end-width
        7.7.19 border-top-color
        7.7.20 border-top-style
        7.7.21 border-top-width
        7.7.22 border-bottom-color
        7.7.23 border-bottom-style
        7.7.24 border-bottom-width
        7.7.25 border-left-color
        7.7.26 border-left-style
        7.7.27 border-left-width
        7.7.28 border-right-color
        7.7.29 border-right-style
        7.7.30 border-right-width
        7.7.31 padding-before
        7.7.32 padding-after
        7.7.33 padding-start
        7.7.34 padding-end
        7.7.35 padding-top
        7.7.36 padding-bottom
        7.7.37 padding-left
        7.7.38 padding-right
    7.8 Les propriétés de police communes
        7.8.1 Les polices et les données de police
        7.8.2 font-family
        7.8.3 font-selection-strategy
        7.8.4 font-size
        7.8.5 font-stretch
        7.8.6 font-size-adjust
        7.8.7 font-style
        7.8.8 font-variant
        7.8.9 font-weight
    7.9 Les propriétés de césure communes
        7.9.1 country
        7.9.2 language
        7.9.3 script
        7.9.4 hyphenate
        7.9.5 hyphenation-character
        7.9.6 hyphenation-push-character-count
        7.9.7 hyphenation-remain-character-count
    7.10 Les propriétés de marge communes de bloc
        7.10.1 margin-top
        7.10.2 margin-bottom
        7.10.3 margin-left
        7.10.4 margin-right
        7.10.5 space-before
        7.10.6 space-after
        7.10.7 start-indent
        7.10.8 end-indent
    7.11 Les propriétés de marge communes en-ligne
        7.11.1 space-end
        7.11.2 space-start
    7.12 Les propriétés de position relative communes
        7.12.1 relative-position
    7.13 Les propriétés d'alignement des aires
        7.13.1 alignment-adjust
        7.13.2 alignment-baseline
        7.13.3 baseline-shift
        7.13.4 display-align
        7.13.5 dominant-baseline
        7.13.6 relative-align
    7.14 Les propriétés de dimension des aires
        7.14.1 block-progression-dimension
        7.14.2 content-height
        7.14.3 content-width
        7.14.4 height
        7.14.5 inline-progression-dimension
        7.14.6 max-height
        7.14.7 max-width
        7.14.8 min-height
        7.14.9 min-width
        7.14.10 scaling
        7.14.11 scaling-method
        7.14.12 width
    7.15 Les propriétés liées aux blocs et aux lignes
        7.15.1 hyphenation-keep
        7.15.2 hyphenation-ladder-count
        7.15.3 last-line-end-indent
        7.15.4 line-height
        7.15.5 line-height-shift-adjustment
        7.15.6 line-stacking-strategy
        7.15.7 linefeed-treatment
        7.15.8 white-space-treatment
        7.15.9 text-align
        7.15.10 text-align-last
        7.15.11 text-indent
        7.15.12 white-space-collapse
        7.15.13 wrap-option
    7.16 Les propriétés des caractères
        7.16.1 character
        7.16.2 letter-spacing
        7.16.3 suppress-at-line-break
        7.16.4 text-decoration
        7.16.5 text-shadow
        7.16.6 text-transform
        7.16.7 treat-as-word-space
        7.16.8 word-spacing
    7.17 Les propriétés en relation avec la couleur
        7.17.1 color
        7.17.2 color-profile-name
        7.17.3 rendering-intent
    7.18 Les propriétés en relation avec les flottants
        7.18.1 clear
        7.18.2 float
        7.18.3 intrusion-displace
    7.19 Les propriétés de rétention et de coupure
        7.19.1 break-after
        7.19.2 break-before
        7.19.3 keep-together
        7.19.4 keep-with-next
        7.19.5 keep-with-previous
        7.19.6 orphans
        7.19.7 widows
    7.20 Les propriétés en relation avec la disposition
        7.20.1 clip
        7.20.2 overflow
        7.20.3 reference-orientation
        7.20.4 span
    7.21 Les propriétés leader et rule
        7.21.1 leader-alignment
        7.21.2 leader-pattern
        7.21.3 leader-pattern-width
        7.21.4 leader-length
        7.21.5 rule-style
        7.21.6 rule-thickness
    7.22 Les propriétés des effets dynamiques des objets de mise en forme
        7.22.1 active-state
        7.22.2 auto-restore
        7.22.3 case-name
        7.22.4 case-title
        7.22.5 destination-placement-offset
        7.22.6 external-destination
        7.22.7 indicate-destination
        7.22.8 internal-destination
        7.22.9 show-destination
        7.22.10 starting-state
        7.22.11 switch-to
        7.22.12 target-presentation-context
        7.22.13 target-processing-context
        7.22.14 target-stylesheet
    7.23 Les propriétés des marqueurs
        7.23.1 marker-class-name
        7.23.2 retrieve-class-name
        7.23.3 retrieve-position
        7.23.4 retrieve-boundary
    7.24 Les propriétés de conversion des nombres vers des chaînes
        7.24.1 format
        7.24.2 grouping-separator
        7.24.3 grouping-size
        7.24.4 letter-value
    7.25 Les propriétés de pagination et de disposition
        7.25.1 blank-or-not-blank
        7.25.2 column-count
        7.25.3 column-gap
        7.25.4 extent
        7.25.5 flow-name
        7.25.6 force-page-count
        7.25.7 initial-page-number
        7.25.8 master-name
        7.25.9 master-reference
        7.25.10 maximum-repeats
        7.25.11 media-usage
        7.25.12 odd-or-even
        7.25.13 page-height
        7.25.14 page-position
        7.25.15 page-width
        7.25.16 precedence
        7.25.17 region-name
    7.26 Les propriétés des tables
        7.26.1 border-after-precedence
        7.26.2 border-before-precedence
        7.26.3 border-collapse
        7.26.4 border-end-precedence
        7.26.5 border-separation
        7.26.6 border-start-precedence
        7.26.7 caption-side
        7.26.8 column-number
        7.26.9 column-width
        7.26.10 empty-cells
        7.26.11 ends-row
        7.26.12 number-columns-repeated
        7.26.13 number-columns-spanned
        7.26.14 number-rows-spanned
        7.26.15 starts-row
        7.26.16 table-layout
        7.26.17 table-omit-footer-at-break
        7.26.18 table-omit-header-at-break
    7.27 Les propriétés en relation avec le mode d'écriture
        7.27.1 direction
        7.27.2 glyph-orientation-horizontal
        7.27.3 glyph-orientation-vertical
        7.27.4 text-altitude
        7.27.5 text-depth
        7.27.6 unicode-bidi
        7.27.7 writing-mode
    7.28 Les propriétés diverses
        7.28.1 content-type
        7.28.2 id
        7.28.3 provisional-label-separation
        7.28.4 provisional-distance-between-starts
        7.28.5 ref-id
        7.28.6 score-spaces
        7.28.7 src
        7.28.8 visibility
        7.28.9 z-index
    7.29 Les propriétés raccourcies
        7.29.1 background
        7.29.2 background-position
        7.29.3 border
        7.29.4 border-bottom
        7.29.5 border-color
        7.29.6 border-left
        7.29.7 border-right
        7.29.8 border-style
        7.29.9 border-spacing
        7.29.10 border-top
        7.29.11 border-width
        7.29.12 cue
        7.29.13 font
        7.29.14 margin
        7.29.15 padding
        7.29.16 page-break-after
        7.29.17 page-break-before
        7.29.18 page-break-inside
        7.29.19 pause
        7.29.20 position
        7.29.21 size
        7.29.22 vertical-align
        7.29.23 white-space
        7.29.24 xml:lang
8 La conformité

Appendices

A L'internationalisation
    A.1 Les valeurs de mode d'écriture supplémentaires
B Le sommaire des objets de mise en forme
    B.1 Les objets de mise en forme de déclaration, de pagination et de disposition
    B.2 Les objets de mise en forme de bloc
    B.3 Les objets de mise en forme en-ligne
    B.4 Les objets de mise en forme des tables
    B.5 Les objets de mise en forme des listes
    B.6 Les objets de mise en forme link et multi
    B.7 Les objets de mise en forme hors-ligne
    B.8 Les autres objets de mise en forme
C Le sommaire des propriétés
    C.1 L'explication des valeurs de correspondance des traits
    C.2 Le tableau des propriétés : 1ère partie
    C.3 Le tableau des propriétés : 2ème partie
D Références
    D.1 Les références normatives
    D.2 Autres références
E Index des propriétés
F Changements survenus depuis la proposition de la recommandation (non normatif)
G Remerciements (non normatif)