From b7d563653d48e4e78837de9dc49b03df9e7a111c Mon Sep 17 00:00:00 2001
From: SphinxKnight
L'axe Interwiki Languages Links
-ancestor-or-self
indique le nœud de contexte courant ainsi que tous ses ascendants, y compris le nœud racine.
-
L'axe ancestor
indique tous les ascendants du nœud de contexte, du nœud parent jusqu'au nœud racine.
-
Interwiki Languages Links -
{{ languages( { "en": "en/XPath/Axes/ancestor", "es": "es/XPath/Ejes/ancestor", "pl": "pl/XPath/Osie/ancestor" } ) }} + \ No newline at end of file diff --git a/files/fr/web/xpath/axes/attribute/index.html b/files/fr/web/xpath/axes/attribute/index.html index be3c5180d3..2d23fbe176 100644 --- a/files/fr/web/xpath/axes/attribute/index.html +++ b/files/fr/web/xpath/axes/attribute/index.html @@ -5,6 +5,4 @@ translation_of: Web/XPath/Axes/attribute ---
L'axe attribute
axis indique les attributs du nœud de contexte. Seuls les éléments ont des attributs. Cet axe peut être abrégé avec le signe arobase (@
).
-
-Interwiki Languages Links
-
L'axe child
indique les enfants du nœud de contexte. Si une expression XPath ne spécifie pas d'axe, il est compris par défaut. Comme seuls le nœud racine et les nœuds element ont des enfants, toute autre utilisation ne sélectionnera rien.
-
Interwiki Languages Links -
{{ languages( { "en": "en/XPath/Axes/child", "es": "es/XPath/Ejes/child", "pl": "pl/XPath/Osie/child" } ) }} + \ No newline at end of file diff --git a/files/fr/web/xpath/axes/descendant-or-self/index.html b/files/fr/web/xpath/axes/descendant-or-self/index.html index 81227314a7..465710191e 100644 --- a/files/fr/web/xpath/axes/descendant-or-self/index.html +++ b/files/fr/web/xpath/axes/descendant-or-self/index.html @@ -5,5 +5,4 @@ translation_of: Web/XPath/Axes/descendant-or-self ---
L'axe descendant-or-self
indique le nœud de contexte et tout ses descendants. Les nœuds attribute
et namespace
ne sont pas compris - le parent d'un nœud attribute
est un nœud element
, mais les nœuds attribute
ne sont pas les enfants de leur parent.
-
interwiki Languages Links -
{{ languages( { "en": "en/XPath/Axes/descendant-or-self", "es": "es/XPath/Ejes/descendant-or-self", "pl": "pl/XPath/Osie/descendant-or-self" } ) }} + \ No newline at end of file diff --git a/files/fr/web/xpath/axes/descendant/index.html b/files/fr/web/xpath/axes/descendant/index.html index e3f42fae11..3897ddbf8b 100644 --- a/files/fr/web/xpath/axes/descendant/index.html +++ b/files/fr/web/xpath/axes/descendant/index.html @@ -5,6 +5,4 @@ translation_of: Web/XPath/Axes/descendant ---
l'axe descendant
indique tous les nœuds enfants du nœud de contexte, et tous leurs enfants, et ainsi de suite. Les nœuds attribute
et namespace
ne sont pas compris - le parent d'un nœud attribute
est un nœud element
, mais les nœuds attribute
ne sont pas les enfants de leur parent.
-
-Interwiki Languages Links
-
L'axe following-sibling
indique tous les nœuds qui ont le même parent
que le nœud de contexte mais qui apparaissent après lui dans le document source.
-
Interwikilanguages Links -
{{ languages( { "en": "en/XPath/Axes/following-sibling", "es": "es/XPath/Ejes/following-sibling", "pl": "pl/XPath/Osie/following-sibling" } ) }} + \ No newline at end of file diff --git a/files/fr/web/xpath/axes/following/index.html b/files/fr/web/xpath/axes/following/index.html index cb53cdd742..ccf5191169 100644 --- a/files/fr/web/xpath/axes/following/index.html +++ b/files/fr/web/xpath/axes/following/index.html @@ -5,5 +5,4 @@ translation_of: Web/XPath/Axes/following ---
L'axe following
indique tous les nœuds situés après le nœud de contexte, excepté les nœuds descendant
, attribute
et namespace
.
-
Interwiki Languages Links -
{{ languages( { "en": "en/XPath/Axes/following", "es": "es/XPath/Ejes/following", "pl": "pl/XPath/Osie/following" } ) }} + \ No newline at end of file diff --git a/files/fr/web/xpath/axes/namespace/index.html b/files/fr/web/xpath/axes/namespace/index.html index 59a1b9d8d4..b6db3a451e 100644 --- a/files/fr/web/xpath/axes/namespace/index.html +++ b/files/fr/web/xpath/axes/namespace/index.html @@ -6,5 +6,4 @@ translation_of: Web/XPath/Axes/namespace
(non supporté)
L'axe namespace
indique tous les nœuds qui sont dans le voisinage immédiat du nœud de contexte. Dans ce cas, le nœud de contexte doit être un nœud element
.
-
Interwiki Languages Links -
{{ languages( { "en": "en/XPath/Axes/namespace", "es": "es/XPath/Ejes/namespace", "pl": "pl/XPath/Osie/namespace" } ) }} + \ No newline at end of file diff --git a/files/fr/web/xpath/axes/parent/index.html b/files/fr/web/xpath/axes/parent/index.html index 04148dd9e4..a12905e03e 100644 --- a/files/fr/web/xpath/axes/parent/index.html +++ b/files/fr/web/xpath/axes/parent/index.html @@ -5,5 +5,4 @@ translation_of: Web/XPath/Axes/parent ---
L'axe parent
indique le nœud parent du nœud de contexte. Il peut être abrégé par deux points (..
).
-
Interwiki Languages Links -
{{ languages( { "en": "en/XPath/Axes/parent", "es": "es/XPath/Ejes/parent", "pl": "pl/XPath/Osie/parent" } ) }} + \ No newline at end of file diff --git a/files/fr/web/xpath/axes/preceding-sibling/index.html b/files/fr/web/xpath/axes/preceding-sibling/index.html index b4c78b09b8..598739c27a 100644 --- a/files/fr/web/xpath/axes/preceding-sibling/index.html +++ b/files/fr/web/xpath/axes/preceding-sibling/index.html @@ -5,5 +5,4 @@ translation_of: Web/XPath/Axes/preceding-sibling ---
L'axe preceding-sibling
indique tous les nœuds qui ont le même parent
que le nœud de contexte mais qui apparaissent avant lui dans le document source.
-
Interwiki Languages Links -
{{ languages( { "en": "en/XPath/Axes/preceding-sibling", "es": "es/XPath/Ejes/preceding-sibling", "pl": "pl/XPath/Osie/preceding-sibling" } ) }} + \ No newline at end of file diff --git a/files/fr/web/xpath/axes/preceding/index.html b/files/fr/web/xpath/axes/preceding/index.html index f0aa5014ab..bb6d7c977e 100644 --- a/files/fr/web/xpath/axes/preceding/index.html +++ b/files/fr/web/xpath/axes/preceding/index.html @@ -5,5 +5,4 @@ translation_of: Web/XPath/Axes/preceding ---
L'axe preceding
indique tous les nœuds qui précédent le nœud de contexte dans le document, except any ancestor
, excepté les nœuds attribute
et namespace
.
-
Interwiki Languages Links -
{{ languages( { "en": "en/XPath/Axes/preceding", "es": "es/XPath/Ejes/preceding", "pl": "pl/XPath/Osie/preceding" } ) }} + \ No newline at end of file diff --git a/files/fr/web/xpath/axes/self/index.html b/files/fr/web/xpath/axes/self/index.html index dd98799901..3e604022ff 100644 --- a/files/fr/web/xpath/axes/self/index.html +++ b/files/fr/web/xpath/axes/self/index.html @@ -5,5 +5,4 @@ translation_of: Web/XPath/Axes/self ---
L'axe self
indique le nœud de contexte lui-même. Il peut être abrégé par un simple point (.
).
-
Interwiki Languages Links -
{{ languages( { "en": "en/XPath/Axes/self", "es": "es/XPath/Ejes/self", "pl": "pl/XPath/Osie/self" } ) }} + \ No newline at end of file diff --git a/files/fr/web/xpath/comparison_with_css_selectors/index.html b/files/fr/web/xpath/comparison_with_css_selectors/index.html index 91803675d5..d410038073 100644 --- a/files/fr/web/xpath/comparison_with_css_selectors/index.html +++ b/files/fr/web/xpath/comparison_with_css_selectors/index.html @@ -12,7 +12,7 @@ original_slug: Web/CSS/Sélecteurs_CSS/Comparison_with_XPath ---Dans cet article, nous listerons les différences entre les sélecteurs CSS et les fonctionnalités XPath afin que les développeurs web puissent choisir l'outil le plus pertinent.
+Dans cet article, nous listerons les différences entre les sélecteurs CSS et les fonctionnalités XPath afin que les développeurs web puissent choisir l'outil le plus pertinent.
Exemple XPath | Sortie |
---|---|
<xsl:value-of select="substring-after('1999/04/01','/')" /> | 04/01 |
substring-after('aa-bb','-') | bb |
substring-after('aa-bb','a') | a-bb |
substring-after('aa-bb','b') | b |
substring-after('aa-bb','q') | (empty string) |
Supportée. -
Interwiki languages Links -
-
La fonction substring-before()
retourne retourne la partie d'une chaîne donnée précédant une sous-chaîne donnée.
substring-before( bottedefoin , aiguille )-
bottedefoin
aiguille
aiguille
dans la chaîne bottedefoin
sera retourné.
Une chaîne.
-XPath Example | Output |
---|---|
<xsl:value-of select="substring-before('1999/04/01','/')" /> | 1999 |
substring-before('aa-bb','-') | aa |
substring-before('aa-bb','a') | (empty string) |
substring-before('aa-bb','b') | aa- |
substring-before('aa-bb','q') | (empty string) |
Supportée. -
Interwiki Languages Links -
-
La fonction substring
retourne une partie d'une chaîne donnée.
substring( chaîne , début [, longueur] )-
chaîne
début
@@ -23,19 +23,15 @@ La fonction substring
retourne une partie d'une chaîne donnée.
longueur
(optionnel)
début
jusqu'à la fin de la chaîne
.
Une chaîne.
-Comme pour les autres fonctions XPath, les positions ne sont pas comptées à partir de zéro. Le premier caractère de la chaîne est à la position 1.
-Supportée. -
Interwiki Languages Links -
-
La fonction sum
retourne un nombre qui est la somme des valeurs numériques de chaque nœud d'un ensemble de nœuds donné.
sum( ensemble-de-nœuds )-
ensemble-de-nœuds
number()
, et la somme des nombres résultants est retournée.
Un nombre.
-(Aucune)
-Supportée. -
Interwiki languages Links -
-
La fonction system-property()
retourne un objet représentant la propriété système donnée.
system-property( nom )-
nom
(optionnel)
system-property()
retourne un objet représentant la valeur de la propriété système identifiée par le nom. Si cette propriété système n'existe pas, une chaîne vide est retournée.
Un objet représentant le propriété système donnée.
-Supportée. -
Interwiki languages Links -
{{ languages( { "en": "en/XPath/Functions/system-property", "pl": "pl/XPath/Funkcje/system-property" } ) }} + \ No newline at end of file diff --git a/files/fr/web/xpath/functions/translate/index.html b/files/fr/web/xpath/functions/translate/index.html index 8372cae0cc..97c03d561f 100644 --- a/files/fr/web/xpath/functions/translate/index.html +++ b/files/fr/web/xpath/functions/translate/index.html @@ -11,10 +11,10 @@ original_slug: Web/XPath/Fonctions/translate
La fonction translate
évalue une chaîne et un ensemble de caractères à traduire, et retourne la chaîne traduite.
translate( chaîne , abc , XYZ )-
chaîne
translate
évalue une chaîne et un ensemble de caract
XYZ
XYZ
remplacera chaque occurrence du premier caractère de abc
qui apparaît dans chaîne
.
La chaîne traduite.
-XPath note que la fonction translate
n'est pas une solution suffisante pour la conversion majuscule/minuscule dans tous les langages. Une future version de XPath pourrait fournir des fonctions supplémentaires pour la conversion.
Cependant, translate
est à l'heure actuelle la fonction la plus proche d'une fonction pouvant convertir une chaîne en bas de casse ou haut de casse.
<xsl:value-of select="translate('Le rapide renard.', 'abcdefghijklmnopqrstuvwxyz', 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'") />-
LE RAPIDE RENARD.
abc
est plus long que XYZ
, alors chaque occurrence d'un caractère de abc
qui n'a pas de correspondance dans XYZ
sera supprimée.
<xsl:value-of select="translate('Le renard rapide.', 'renard', 'panda')" />-
La pandp pdpia.
XYZ
contient plus de caractères que abc
, les caractères supplémentaires sont ignorés.
Supportée. -
Interwiki Languages Links -
-
La fonction true
retourne la valeur booléenne true
.
true()-
Le booléen true
.
Supportée. -
Interwiki languages Links -
-
La fonction unparsed-entity-url()
retourne l'URI d'une entité non analysée avec le nom donné. C'est une donnée non-XML référencée dans le DTD du document source.
string unparsed-entity-url(chaîne)-
chaîne
string()
. Le nom doit être un nom XML.
L'URI de l'entité non analysée récupérée dans la DTD, si elle existe. Autrement, une chaîne vide.
-Non supportée. -
Interwiki Languages Links -
{{ languages( { "en": "en/XPath/Functions/unparsed-entity-url", "pl": "pl/XPath/Funkcje/unparsed-entity-url" } ) }} + \ No newline at end of file diff --git a/files/fr/web/xpath/index.html b/files/fr/web/xpath/index.html index ea5fb05e45..903d5d3772 100644 --- a/files/fr/web/xpath/index.html +++ b/files/fr/web/xpath/index.html @@ -14,15 +14,14 @@ translation_of: Web/XPath ---XPath est une abréviation pour XML Path Language (qu'on pourrait traduire en français par « langage de chemin XML »). Ce langage utilise une syntaxe non-XML pour cibler différentes parties d'un document XML. Il peut aussi être utilisé pour tester certains nœuds d'un document afin de déterminer s'ils suivent un motif particulier.
+XPath est une abréviation pour XML Path Language (qu'on pourrait traduire en français par « langage de chemin XML »). Ce langage utilise une syntaxe non-XML pour cibler différentes parties d'un document XML. Il peut aussi être utilisé pour tester certains nœuds d'un document afin de déterminer s'ils suivent un motif particulier.
XPath est principalement utilisé avec XSLT, mais on peut tout aussi bien l'utiliser afin de naviguer dans le DOM de tout document structuré avec un langage semblable à XML (HTML ou SVG par exemple) grâce à l'interface XPathExpression
. Cela permet d'éviter les méthodes Document.getElementById()
ou ParentNode.querySelectorAll()
ou encore les propriétés Node.childNodes
.
XPath utilise une notation en chemin (à l'instar des URL) pour naviguer dans la structure hiérarchique d'un document XML. Sa syntaxe est qualifiée de « non-XML » car un chemin XPath peut être utilisé au sein d'URI ou de valeurs d'attribut XML.
-La prise en charge de XPath est hétérogène. Si l'implémentation de Firefox est relativement correcte (malgré l'absence de volonté de l'améliorer encore), d'autres navigateurs implémentent une surface moindre de ces fonctionnalités (voire aucune). Si vous avez besoin d'une prothèse (polyfill), vous pouvez vous tourner vers js-xpath ou wicked-good-xpath.
+Note : La prise en charge de XPath est hétérogène. Si l'implémentation de Firefox est relativement correcte (malgré l'absence de volonté de l'améliorer encore), d'autres navigateurs implémentent une surface moindre de ces fonctionnalités (voire aucune). Si vous avez besoin d'une prothèse (polyfill), vous pouvez vous tourner vers js-xpath ou wicked-good-xpath.
Cette méthode évalue les expressions XPath dans un document XML (y compris les documents HTML), et retourne un objet XPathResult
, qui peut être un nœud unique ou un ensemble de nœuds. La documentation existante sur cette méthode se trouve à la page document.evaluate
mais elle est plutôt succincte comparée à nos besoins actuels. Nous l'examinerons de façon plus complète dans la suite de ce document.
Cette méthode évalue les expressions XPath dans un document XML (y compris les documents HTML), et retourne un objet XPathResult
, qui peut être un nœud unique ou un ensemble de nœuds. La documentation existante sur cette méthode se trouve à la page document.evaluate
mais elle est plutôt succincte comparée à nos besoins actuels. Nous l'examinerons de façon plus complète dans la suite de ce document.
var xpathResult = document.evaluate( xpathExpression, contextNode, namespaceResolver, resultType, result );@@ -52,16 +52,16 @@ original_slug: Web/JavaScript/Introduction_à_l_utilisation_de_XPath_avec_JavaSc
Renvoie xpathResult
, qui est un objet XPathResult
du type défini dans le paramètre resultType
. L'interface XPathResult
est définie dans ce document.
On crée un résolveur d'espace de nommage à l'aide de la méthode createNSResolver
de l'objet document.
var nsResolver = document.createNSResolver( contextNode.ownerDocument == null ? contextNode.documentElement : contextNode.ownerDocument.documentElement );-
Ou alternativement en utilisant la méthode <code>createNSResolver</code> d'un objet <code>XPathEvaluator</code>. <pre> var xpEvaluator = new XPathEvaluator(); var nsResolver = xpEvaluator.createNSResolver( contextNode.ownerDocument == null ? contextNode.documentElement : contextNode.ownerDocument.documentElement ); </pre> On lui passe ensuite document.evaluate
, la variable nsResolver
comme paramètre namespaceResolver
.
Ou alternativement en utilisant la méthode <code>createNSResolver</code> d'un objet <code>XPathEvaluator</code>. <pre> var xpEvaluator = new XPathEvaluator(); var nsResolver = xpEvaluator.createNSResolver( contextNode.ownerDocument == null ? contextNode.documentElement : contextNode.ownerDocument.documentElement ); </pre> On lui passe ensuite document.evaluate
, la variable nsResolver
comme paramètre namespaceResolver
.
véracité du paragraphe suivant à vérifier avec la doc du w3c Notez que XPath définit que les QNames
sans préfixe correspondent uniquement aux éléments de l'espace de nommage null
. Il n'existe aucun moyen dans XPath pour récupérer l'espace de nommage par défaut. Pour coupler des éléments ou des attributs dans un espace de nommage non nul, vous devrez détecter les noms préfixés, et créer un résolveur d'espace de nommage qui fera correspondre le préfixe avec l'espace de nommage. Vous en saurez plus sur la façon de créer un résolveur d'espace de nommage personnalisé ci-dessous.
véracité du paragraphe suivant à vérifier avec la doc du w3c Notez que XPath définit que les QNames
sans préfixe correspondent uniquement aux éléments de l'espace de nommage null
. Il n'existe aucun moyen dans XPath pour récupérer l'espace de nommage par défaut. Pour coupler des éléments ou des attributs dans un espace de nommage non nul, vous devrez détecter les noms préfixés, et créer un résolveur d'espace de nommage qui fera correspondre le préfixe avec l'espace de nommage. Vous en saurez plus sur la façon de créer un résolveur d'espace de nommage personnalisé ci-dessous.
ORDERED_NODE_ITERATOR_TYPE
L'objet XPathResult
renvoyé sera un ensemble de nœuds correspondant à l'expression se comportant comme un itérateur. On pourra accéder individuellement aux nœuds qu'il contient en utilisant la méthode iterateNext()
de l'objet XPathResult
.
L'objet XPathResult
renvoyé sera un ensemble de nœuds correspondant à l'expression se comportant comme un itérateur. On pourra accéder individuellement aux nœuds qu'il contient en utilisant la méthode iterateNext()
de l'objet XPathResult
.
Lorsque tous les nœuds ont été parcourus, iterateNext()
renverra null
.
Lorsque tous les nœuds ont été parcourus, iterateNext()
renverra null
.
Notez cependant que si le document est modifié (l'arbre du document est modifié) entre les itérations, l'itérateur sera invalidé et la propriété invalidIteratorState
de XPathResult
deviendra true
. Une exception NS_ERROR_DOM_INVALID_STATE_ERR
sera également déclenchée.
ORDERED_NODE_SNAPSHOT_TYPE
L'objet XPathResult
renvoyé sera un ensemble statique de nœuds correspondant à l'expression. L'accès à chaque nœud se fera au travers de la méthode snapshotItem(itemNumber)
de l'objet XPathResult
, où itemNumber
est l'indice du nœud à récupérer. On peut accéder au nombre total de nœuds contenus dans l'ensemble par la propriété snapshotLength
.
L'objet XPathResult
renvoyé sera un ensemble statique de nœuds correspondant à l'expression. L'accès à chaque nœud se fera au travers de la méthode snapshotItem(itemNumber)
de l'objet XPathResult
, où itemNumber
est l'indice du nœud à récupérer. On peut accéder au nombre total de nœuds contenus dans l'ensemble par la propriété snapshotLength
.
Les snapshots ne changent pas avec les mutations du document. Aussi, contrairement aux itérateurs, le snapshot ne deviendra pas invalide mais peut ne plus correspondre au document actuel. Par exemple, des nœuds peuvent avoir été déplacés, il peut contenir des nœuds qui n'existent plus ou de nouveaux nœuds peuvent avoir été ajoutés.
@@ -195,7 +195,7 @@ console.log( 'Le premier numéro de téléphone trouvé est ' + firstPhoneNumberPour déterminer le type utilisé après l'évaluation, on utilisera la propriété resultType
de l'objet XPathResult
. Les valeurs constantes de cette propriété sont définies dans l'annexe.
None Yet =====Exemple Any_Type===== <pre> </pre>
+None Yet =====Exemple Any_Type===== <pre> </pre>
Le code suivant est destiné à être inséré dans un fragment JavaScript intégré ou lié au document HTML qui devra être évalué par l'expression XPath.
-Pour extraire tous les éléments d'en-tête <h2>
d'un document HTML à l'aide de XPath, l'expression xpathExpression
est simplement '//h2
', où //
est l'opérateur descendant récursif (ou RDO) qui correspond aux éléments dont la propriété nodeName
est h2
n'importe où dans l'arbre du document. Le code complet pour cela est : link to introductory xpath doc
Pour extraire tous les éléments d'en-tête <h2>
d'un document HTML à l'aide de XPath, l'expression xpathExpression
est simplement '//h2
', où //
est l'opérateur descendant récursif (ou RDO) qui correspond aux éléments dont la propriété nodeName
est h2
n'importe où dans l'arbre du document. Le code complet pour cela est : link to introductory xpath doc
var headings = document.evaluate('//h2', document, null, XPathResult.ANY_TYPE, null );-- cgit v1.2.3-54-g00ecf