Manuel de référence XML

Manuel de référence XML

Type de nœud

Le tableau suivant liste différents types de nœuds W3C et leurs éléments enfants possibles :

Type de nœud 描述 Élément enfant
Document Représente tout le document (le noeud racine de l'arbre DOM)
  • Element (max. one)
  • Instruction de traitement
  • Commentaire
  • DocumentType
DocumentFragment Représente un Document léger, contenant une partie du document.
  • Instruction de traitement
  • Commentaire
  • Text
  • CDATASection
  • Référence d'entité
DocumentType Fournit une interface aux entités définies pour le document. None
Instruction de traitement Représente une instruction de traitement. None
Référence d'entité Représente l'élément de référence d'entité.
  • Instruction de traitement
  • Commentaire
  • Text
  • CDATASection
  • Référence d'entité
Element Représente l'élément (element) element
  • Text
  • Commentaire
  • Instruction de traitement
  • CDATASection
  • Référence d'entité
Attr Représente une attribution.
  • Text
  • Référence d'entité
Text Représente le contenu texte d'un élément ou d'une attribution. None
CDATASection Représente un segment CDATA dans le document (le texte n'est pas analysé par l'analyseur). None
Commentaire Représente un commentaire. None
Entity Représente une entité.
  • Instruction de traitement
  • Commentaire
  • Text
  • CDATASection
  • Référence d'entité
Notation Représente un symbole déclaré dans la DTD. None

Type de nœud - Valeur retournée

Le tableau suivant liste les valeurs que les propriétés nodeName et nodeValue peuvent retourner pour chaque type de nœud :

Type de nœud Valeur retournée par nodeName Valeur retournée par nodeValue
Document #document null
DocumentFragment #fragment de document null
DocumentType Nom de doctype null
Référence d'entité Nom de la référence d'entité null
Element Nom de l'élément null
Attr Nom de l'attribut Valeur de l'attribut
Instruction de traitement target Contenu du nœud
Commentaire #comment Commentaire texte
Text #text Contenu de nœud
CDATASection #cdata-section Contenu de nœud
Entity Nom d'entité null
Notation Nom de symbole null

NodeTypes - Constantes nommées

NodeType Named Constant
1 ELEMENT_NODE
2 ATTRIBUTE_NODE
3 TEXT_NODE
4 CDATA_SECTION_NODE
5 ENTITY_REFERENCE_NODE
6 ENTITY_NODE
7 PROCESSING_INSTRUCTION_NODE
8 COMMENT_NODE
9 DOCUMENT_NODE
10 DOCUMENT_TYPE_NODE
11 DOCUMENT_FRAGMENT_NODE
12 NOTATION_NODE

Haut

Objet Node XML DOM

Propriétés de l'objet Node

Attribut 描述
attributes NamedNodeMap contenant les attributs de ce nœud (si ce nœud est un élément).
baseURI Renvoie l'URI de repère absolu de ce nœud.
childNodes Renvoie le NodeList des sous-nœuds du nœud.
firstChild Renvoie le premier sous-nœud du nœud.
lastChild Renvoie le dernier sous-nœud du nœud.
nextSibling Renvoie le nœud jumeau suivant.
nodeName Retourne le nom du nœud, selon son type.
nodeType Retourne le type du nœud.
nodeValue Définir ou retourner la valeur du nœud, selon son type.
ownerDocument Renvoie l'élément racine du nœud (objet document).
parentNode Renvoie le nœud parent du nœud.
prefix Définit ou renvoie le préfixe de l'espace de noms du nœud.
previousSibling Renvoie le nœud jumeau précédent.
textContent Définit ou renvoie le contenu texte des nœuds et de leurs descendants.

Méthodes de l'objet Node

Méthode 描述
appendChild() Ajoutez un nouveau sous-nœud à la fin de la liste des sous-nœuds du nœud.
cloneNode() Clone le noeud.
compareDocumentPosition() Comparez la position de deux nœuds dans la hiérarchie DOM (document).
getFeature(feature,version) Retourne un objet DOM qui implémente l'API spécifique aux fonctionnalités et aux versions spécifiées.
getUserData(key)

Renvoie l'objet associé à la clé sur le nœud.

Vous devez d'abord définir l'objet sur ce nœud, en utilisant la même clé pour appeler setUserData.

hasAttributes() Renvoie true si le nœud spécifié a des attributs, sinon renvoie false.
hasChildNodes() Renvoie true si le nœud spécifié a des sous-nœuds, sinon renvoie false.
insertBefore() Insérez un nouveau sous-nœud avant le sous-nœud spécifié.
isDefaultNamespace(URI) Renvoie si l'URI de l'espace de noms spécifié est par défaut.
isEqualNode() Vérifie si deux nœuds sont égaux.
isSameNode() Vérifiez si deux nœuds sont les mêmes nœuds.
lookupNamespaceURI() Renvoie l'URI d'espace de noms associé au préfixe donné.
lookupPrefix() Renvoie le préfixe associé à l'URI d'espace de noms donné.
normalize() Fusionnez les nœuds de texte adjacents et supprimez les nœuds de texte vides.
removeChild() Supprimez (et renvoyez) le sous-nœud spécifié du nœud courant.
replaceChild() Remplacez le sous-nœud par un nouveau nœud.
setUserData(key,data,handler) Associatez l'objet avec la clé sur le nœud.

Haut

Objet NodeList XML DOM

Propriétés de l'objet NodeList

Attribut 描述
length Renvoie le nombre de nœuds dans la liste des nœuds.

Méthodes de l'objet NodeList

Méthode 描述
item() Renvoie le nœud à l'index spécifié dans la liste des nœuds.

Haut

Objet NamedNodeMap XML DOM

Propriétés de l'objet NamedNodeMap

Attribut 描述
length Renvoyer le nombre de nœuds dans la liste.

Méthodes de l'objet NamedNodeMap

Méthode 描述
getNamedItem() Renvoyer le nœud avec un nom spécifié.
getNamedItemNS() Renvoyer le nœud avec un nom et un espace de noms spécifiés.
item() Renvoyer le nœud à l'index spécifié.
removeNamedItem() Supprimer le nœud avec un nom spécifié.
removeNamedItemNS() Supprimer le nœud avec un nom et un espace de noms spécifiés.
setNamedItem() Définir le nœud spécifié (par nom).
setNamedItemNS() Définir le nœud spécifié (par nom et espace de noms).

Haut

Objet Document XML DOM

Propriétés de l'objet Document

Attribut 描述
childNodes Renvoyer la NodeList des nœuds enfants du document.
doctype Renvoyer la déclaration de type de document associée au document.
documentElement Renvoyer le nœud racine du document.
documentURI Définir ou renvoyer la position du document.
domConfig Renvoyer la configuration utilisée lors de l'appel à normalizeDocument().
firstChild Renvoyer le premier nœud enfant du document.
implementation Renvoyer l'objet DOMImplementation qui traite ce document.
inputEncoding Renvoyer le mode d'encodage utilisé par le document (au moment de l'analyse).
lastChild Renvoyer le dernier nœud enfant du document.
nodeName Renvoyer le nom du nœud (selon son type).
nodeType Renvoyer le type de nœud du nœud.
nodeValue Définir ou renvoyer la valeur du nœud (selon son type).
xmlEncoding Renvoyer le mode d'encodage XML du document.
xmlStandalone Définir ou renvoyer si le document est indépendant.
xmlVersion Définir ou renvoyer la version XML du document.

Méthodes de l'objet Document

Méthode 描述
adoptNode() Adopter un nœud d'un autre document dans le document actuel et renvoyer le nœud adopté.
createAttribute() Créer un nœud d'attribut avec un nom spécifié, et renvoyer le nouveau objet Attr.
createAttributeNS() Créer un nœud d'attribut avec un nom et un espace de noms spécifiés, et renvoyer le nouveau objet Attr.
createCDATASection() Créer un nœud de section CDATA.
createComment() Créer un nœud de commentaire.
createDocumentFragment() Créer un objet DocumentFragment vide et le renvoyer.
createElement() Crée un noeud d'élément.
createElementNS() Crée un noeud d'élément possédant l'espace de noms spécifié.
createEntityReference() Crée un objet EntityReference et retourne cet objet.
createProcessingInstruction() Crée un objet ProcessingInstruction et retourne cet objet.
createTextNode() Crée un noeud de texte.
getElementById() Retourne l'élément possédant l'attribut id avec la valeur spécifiée.
getElementsByTagName() Retourne NodeList de tous les éléments possédant le nom spécifié.
getElementsByTagNameNS() Retourne NodeList de tous les éléments possédant le nom et l'espace de noms spécifiés.
importNode() Importe un noeud à partir d'un autre document dans ce document.
normalizeDocument()
renameNode() Renomme le noeud d'élément ou le noeud d'attribut.

Attributs de l'objet DocumentType

Chaque document a une propriété DOCTYPE, dont la valeur est null ou l'objet DocumentType.

L'objet DocumentType fournit une interface pour les entités définies pour le document XML.

Attribut 描述
name Retourne le nom de l'DTD.
publicId Retourne l'identifiant public de l'DTD.
systemId Retourne l'identifiant système de l'DTD externe.

Méthodes de l'objet DocumentImplementation

L'objet DOMImplementation exécute des opérations spécifiques à l'instance indépendantes du modèle d'objet de document.

Méthode 描述
createDocument() Crée un nouveau Document DOM Document pour le type de document spécifié.
createDocumentType() Crée un noeud DocumentType vide.
getFeature() Retourne l'objet API qui implémente les caractéristiques spécifiques et les versions indiquées (s'il y en a).
hasFeature() Vérifiez si l'implémentation DOM a implémenté des caractéristiques spécifiques et des versions.

Attributs de l'objet ProcessingInstruction

L'objet ProcessingInstruction représente une instruction de traitement.

Les instructions de traitement sont utilisées comme méthode pour conserver des informations spécifiques au processeur dans le texte du document XML.

Attribut 描述
data Définir ou retourner le contenu de l'instruction de traitement.
target Retourne l'objectif de l'instruction de traitement.

Haut

Objet Element XML DOM

Attributs de l'objet Element

Attribut 描述
attributes Retourne la NamedNodeMap des attributs de l'élément.
baseURI Retourne l'URI de repère absolu de l'élément.
childNodes Retourne un NodeList des noeuds enfants de l'élément.
firstChild Retourne le premier enfant de l'élément.
lastChild Retourne le dernier enfant de l'élément.
localName Retourne la partie locale du nom de l'élément.
namespaceURI Retourne l'URI de l'espace de noms de l'élément.
nextSibling Retourne le noeud suivant immédiatement après l'élément.
nodeName Retourne le nom du noeud, en fonction de son type.
nodeType Retourne le type du nœud.
ownerDocument Retourne l'élément racine (objet document).
parentNode Retourne le noeud parent de l'élément.
prefix Définit ou retourne le préfixe de l'espace de noms de l'élément.
previousSibling Retourne le noeud précédant immédiatement l'élément.
schemaTypeInfo Retourne les informations sur le type associées à l'élément.
tagName Retourne le nom de l'élément.
textContent Définit ou retourne le contenu texte de l'élément et de ses descendants.

Méthodes de l'objet Element

Méthode 描述
appendChild() Ajoute un nouveau noeud enfant à la fin de la liste des noeuds enfants de l'élément.
cloneNode() Clone le noeud.
compareDocumentPosition() Compare la position documentaire de deux noeuds.
getAttribute() Retourne la valeur de l'attribut.
getAttributeNS() Retourne la valeur de l'attribut (avec espace de noms).
getAttributeNode() Retourne les noeuds d'attribut sous forme d'objets Attribute.
getAttributeNodeNS() Retourne les noeuds d'attribut (avec espace de noms) sous forme d'objets Attribute.
getElementsByTagName() Retourne un NodeList de noeuds d'élément correspondants et de leurs enfants.
getElementsByTagNameNS() Retourne un NodeList de noeuds d'élément correspondants (avec espace de noms) et de leurs enfants.
getFeature(feature,version) Retourne un objet DOM qui implémente l'API spécifique aux fonctionnalités et aux versions spécifiées.
getUserData(key) Retourne l'objet associé à la clé du noeud. Il est nécessaire de d'abord définir l'objet à ce noeud, en utilisant la même clé pour appeler setUserData.
hasAttribute() Retourne si l'élément possède un attribut correspondant au nom spécifié.
hasAttributeNS() Retourne si l'élément possède un attribut correspondant au nom et à l'espace de noms spécifiés.
hasAttributes() Retourne si l'élément possède des attributs.
hasChildNodes() Retourne si l'élément a des enfants.
insertBefore() Insère un nouveau noeud enfant avant les noeuds enfants existants.
isDefaultNamespace(URI) Retourne si l'URI spécifié est le namespace par défaut.
isEqualNode() Vérifie si deux nœuds sont égaux.
lookupNamespaceURI() Retourne l'URI d'espace de nom qui correspond au préfixe spécifié.
lookupPrefix() Retourne le préfixe qui correspond à l'URI d'espace de nom spécifié.
normalize()

La méthode normalize() supprime les noeuds de texte vides et connecte les noeuds de texte adjacents.

Normalise tous les noeuds de texte sous l'élément (y compris les attributs), où seules les structures (par exemple, éléments, commentaires, instructions de traitement, parties CDATA et références d'entités) séparent les noeuds de texte.

C'est-à-dire, il n'existe pas de noeud de texte adjacent ni de noeud de texte vide.

removeAttribute() Supprime l'attribut spécifié.
removeAttributeNS() Supprime l'attribut spécifié (avec l'espace de nom).
removeAttributeNode() Supprime le noeud d'attribut spécifié.
removeChild() Supprime le noeud enfant.
replaceChild() Remplace le noeud enfant.
setUserData(key,data,handler) Associate l'objet avec la clé sur l'élément.
setAttribute() Ajoute un nouveau attribut.
setAttributeNS() Ajoute un nouveau attribut (avec l'espace de nom).
setAttributeNode() Ajoute un nouveau noeud d'attribut.
setAttributeNodeNS(attrnode) Ajoute un nouveau noeud d'attribut (avec l'espace de nom).
setIdAttribute(name,isId) Si l'attribut isId de l'objet Attribute est true, cette méthode déclare l'attribut spécifié comme attribut ID déterminé par l'utilisateur.
setIdAttributeNS(uri,name,isId) Si l'attribut isId de l'objet Attribute est true, cette méthode déclare l'attribut spécifié (avec l'espace de nom) comme attribut ID déterminé par l'utilisateur.
setIdAttributeNode(idAttr,isId) Si l'attribut isId de l'objet Attribute est true, cette méthode déclare l'attribut spécifié comme attribut ID déterminé par l'utilisateur.

Haut

Propriétés de l'objet Attr

Attribut 描述
baseURI Retourne l'URI de repère absolu de l'attribut.
isId Si l'attribut est de type id, retourne true, sinon retourne false.
localName Retourne la partie locale du nom de l'attribut.
name Retourne le nom de l'attribut.
namespaceURI Retourne l'URI d'espace de nom de l'attribut.
nodeName Retourne le nom du nœud, selon son type.
nodeType Retourne le type du nœud.
nodeValue Définir ou retourner la valeur du nœud, selon son type.
ownerDocument Retourne l'élément racine (objet document) de l'attribut.
ownerElement Retourne l'élément de noeud associé à l'attribut.
prefix Définir ou retourner le préfixe de nom d'espace de l'attribut.
schemaTypeInfo Retourne les informations de type associées à l'attribut.
specified

Si la valeur de l'attribut a été définie dans le document, retourne true;

Si la valeur de l'attribut est la valeur par défaut dans DTD/Schema, retourne false.

textContent Définir ou retourner le contenu textuel de l'attribut.
value Définir ou retourner la valeur de l'attribut.

Haut

Objet Text XML DOM

Attribut de l'objet Text

Attribut 描述
data Définir ou retourner le texte de l'élément ou de l'attribut.
isElementContentWhitespace Déterminer si le nœud de texte contient du contenu d'espaces blancs.
length Retourne la longueur du texte de l'élément ou de l'attribut.
wholeText Retourne tous les textes des nœuds de texte adjacents au nœud, connectés en ordre de document.

Méthodes de l'objet Text

Méthode 描述
appendData() Ajouter des données à la fin du nœud.
deleteData() Supprimer des données à partir du nœud.
insertData() Insérer des données dans le nœud.
replaceData() Remplacer les données dans le nœud.
replaceWholeText(text) Remplacer le texte du nœud et de tous les nœuds de texte adjacents avec le texte spécifié.
splitText() Diviser un nœud Text en deux.
substringData() Extraire des données à partir du nœud.

Haut

Objet CDATASection XML DOM

Attributs de l'objet CDATASection

Attribut 描述
data Définir ou retourner le texte du nœud.
length Retourne la longueur de la section CDATA.

Méthodes de l'objet CDATASection

Méthode 描述
appendData() Ajouter des données à la fin du nœud.
deleteData() Supprimer des données à partir du nœud.
insertData() Insérer des données dans le nœud.
replaceData() Remplacer les données dans le nœud.
splitText() Diviser un nœud CDATA en deux nœuds.
substringData() Extraire des données à partir du nœud.

Haut

Objet Comment XML DOM

Attributs de l'objet Comment

Attribut 描述
data Définir ou retourner le texte du nœud.
length Retourne la longueur du texte du nœud.

Méthodes de l'objet Comment

Méthode 描述
appendData() Ajouter des données à la fin du nœud.
deleteData() Supprimer des données à partir du nœud.
insertData() Insérer des données dans le nœud.
replaceData() Remplacer les données dans le nœud.
substringData() Extraire des données à partir du nœud.

Haut

Objet XMLHttpRequest XML DOM

Méthodes de l'objet XMLHttpRequest

Méthode 描述
abort() Annule la requête en cours.
getAllResponseHeaders() Retourne les informations d'en-tête.
getResponseHeader() Retourne la valeur de l'en-tête HTTP spécifié.
open(method,url,async,uname,pswd)

Spécifiez le type de requête, l'URL, si la requête doit être traitée de manière asynchrone ainsi que d'autres attributs optionnels de la requête.

  • method: type de requête : GET ou POST
  • url: emplacement du fichier sur le serveur
  • async: true (asynchrone) ou false (synchronisé)
send(string)

Envoyer la requête au serveur.

string: Utilisé uniquement pour les requêtes POST

setRequestHeader() Ajouter un couple de balise/valeur aux en-têtes à envoyer.

Attributs de l'objet XMLHttpRequest

Attribut 描述
onreadystatechange Stocke la fonction (ou le nom de la fonction) appelée automatiquement lors de chaque changement de l'attribut readyState.
readyState

Enregistrer l'état XMLHttpRequest. Changement de 0 à 4 :

  • 0: La requête n'est pas initialisée
  • 1: La connexion au serveur a été établie
  • 2: La requête a été reçue
  • 3: La requête est en cours de traitement
  • 4: La requête est terminée, la réponse est prête
responseText Retourner les données de la réponse, sous forme de chaîne de caractères.
responseXML Retourner les données de la réponse, sous forme de données XML.
status Retourner le numéro de l'état (par exemple "404" pour "Not Found", ou "200" pour "OK").
statusText Retourner le texte de l'état (par exemple "Not Found" ou "OK").

Haut

Éléments XSD

élément Explication
all Spécifier que les sous-éléments peuvent apparaître en toute ordre, et que chaque sous-élément peut apparaître zéro ou une fois.
annotation L'élément annotation est un élément de niveau supérieur, qui spécifie les commentaires du schema.
any Permettre aux créateurs d'étendre le document XML à l'aide d'éléments non définis par le schema.
anyAttribute Permettre aux créateurs d'étendre le document XML à l'aide de propriétés non définies par le schema.
appInfo Préciser les informations que l'application doit utiliser dans l'élément annotation.
attribute Définir une propriété.
attributeGroup Définir le groupe d'attributs utilisé dans la définition du type complexe.
choice Permettre uniquement qu'un élément apparaisse dans l'élément inclus dans la déclaration <choice>.
complexContent Définir l'extension ou la limitation de l'élément complexe (contenant du contenu mixte ou uniquement des éléments).
complexType Définir le type complexe.
documentation Définir les commentaires de texte dans le schema.
element Définir l'élément.
extension Étendre les éléments existants simpleType ou complexType.
field Spécifier une expression XPath, cette expression détermine la valeur utilisée pour définir une contrainte d'identification.
group Définir un groupe d'éléments utilisé dans la définition de type complexe.
import Ajouter plusieurs schémas avec des cibles espaces de noms différents à un document.
include Ajouter plusieurs schémas avec la même cible espace de noms à un document.
key Spécifier que la valeur d'un attribut ou d'un élément (ou un ensemble de valeurs) doit être une clé dans une plage spécifiée.
keyref Spécifier que la valeur d'un attribut ou d'un élément (ou un ensemble de valeurs) correspond à la valeur d'un élément clé ou unique spécifié.
list Définir un type simple comme une liste de valeurs correspondant à un type de données spécifié.
notation Décrire le format des données non XML dans un document XML.
redefine Redéfinir les types simples et complexes, les groupes et les groupes d'attributs obtenus à partir de fichiers de schéma externes.
restriction Définir les contraintes sur simpleType, simpleContent ou complexContent.
schema Définir l'élément racine du schéma.
selector Spécifier une expression XPath, cette expression sélectionne un ensemble d'éléments pour une contrainte d'identification.
sequence Exiger que les sous-éléments apparaissent en ordre. Chaque sous-élément peut apparaître 0 à n fois.
simpleContent Inclure des extensions ou des limitations des éléments complexType sans inclure d'éléments.
simpleType Définir un type simple, spécifier les contraintes et les informations sur les valeurs des attributs ou des éléments contenant uniquement du texte.
union Définir une collection définie par plusieurs simpleType.
unique Spécifier que la valeur d'un attribut ou d'un élément (ou une combinaison de valeurs d'attribut ou d'élément) doit être unique dans une plage spécifiée.

Limitations des types de données XSD

Voir les limitations XSD / Facets

Limiter 描述
enumeration Définir une liste de valeurs acceptables
fractionDigits Définir le nombre maximum autorisé de décimales. Il doit être supérieur ou égal à 0.
length Définir le nombre exact autorisé de caractères ou d'éléments de liste. Il doit être supérieur ou égal à 0.
maxExclusive Définir le seuil supérieur d'une valeur numérique. Les valeurs autorisées doivent être inférieures à cette valeur.
maxInclusive Définir le seuil supérieur d'une valeur numérique. Les valeurs autorisées doivent être inférieures ou égales à cette valeur.
maxLength Définir le nombre maximum autorisé de caractères ou d'éléments de liste. Il doit être supérieur ou égal à 0.
minExclusive Définir le seuil inférieur d'une valeur numérique. Les valeurs autorisées doivent être supérieures à cette valeur.
minInclusive Définir le seuil inférieur d'une valeur numérique. Les valeurs autorisées doivent être supérieures ou égales à cette valeur.
minLength Définir le nombre minimum de caractères ou d'éléments de liste autorisés. Doit être supérieur ou égal à 0.
pattern Définir la séquence précise des caractères acceptés.
totalDigits Définir le nombre précis de décimales autorisées pour les nombres arabes. Doit être supérieur à 0.
whiteSpace Définir le traitement des caractères blancs (retours à la ligne, retours chariots, espaces et tabulations).

Haut

éléments XSLT

élément 描述
apply-imports Appliquer les règles de modèle provenant des feuilles de style importées.
apply-templates Appliquer un modèle au nœud actuel ou aux éléments enfants du nœud actuel.
attribute Ajouter des attributs à un élément.
attribute-set Créer un ensemble d'attributs nommés.
call-template Appeler un modèle spécifié.
choose Utilisé avec <when> et <otherwise> pour exprimer des tests de conditions multiples.
comment Créer un nœud de commentaire dans l'arbre de résultats.
copy Créer une copie du nœud actuel (sans sous-nœuds et attributs).
copy-of Créer une copie du nœud actuel (avec les sous-nœuds et les attributs).
decimal-format Définir les caractères et les symboles à utiliser lors de la conversion des nombres en chaînes via la fonction format-number().
element Créer un nœud d'élément dans le document de sortie.
fallback Si le processeur ne prend pas en charge un élément XSLT spécifique, définir un code de secours pour exécuter.
for-each Parcourir chaque nœud d'un ensemble de nœuds spécifié.
if Inclure un modèle, uniquement lorsque certaines conditions spécifiées sont remplies.
import Utilisé pour injecter le contenu d'une feuille de style dans une autre feuille de style.
include Inclure le contenu d'une feuille de style dans une autre feuille de style.
key Déclarer une clé nommée.
message Écrire un message dans la sortie (utilisé pour les rapports d'erreur).
namespace-alias Remplacer les espaces de nom des feuilles de style par des espaces de nom différents dans la sortie.
number Déterminer la position entière actuelle du nœud et formater les nombres.
otherwise Définir l'action par défaut de l'élément <choose>.
output Définir le format du document de sortie.
param Déclarer un paramètre local ou global.
preserve-space Utilisé pour définir les éléments pour conserver les espaces.
processing-instruction Générer un nœud d'instruction de traitement.
sort Trier les résultats.
strip-space Définir les éléments pour supprimer les caractères blancs.
stylesheet Définir l'élément racine de la feuille de style.
template Règles appliquées lorsque le nœud spécifié est matché.
text Génère des nœuds de texte via une feuille de style.
transform Définir l'élément racine de la feuille de style.
value-of Extraire la valeur du nœud sélectionné.
variable Déclarer une variable locale ou globale.
when Définir l'action de l'élément <choose>.
with-param Définir la valeur des paramètres à être passés à un modèle donné.

Haut

Fonctions XSLT, XPath et XQuery

Fonctions d'accès

名称 Explication
fn:node-name(node) Retourne le nom de nœud du nœud de paramètre.
fn:nilled(node) Retourne un booléen indiquant si le nœud de paramètre est refusé.
fn:data(item.item,...) Accepte une séquence d'items et retourne une séquence d'valu atomiques.
  • fn:base-uri()
  • fn:base-uri(node)
Retourne la valeur de l'attribut base-uri du nœud courant ou spécifié.
fn:document-uri(node) Retourne la valeur de l'attribut document-uri du nœud spécifié.

Fonctions d'erreur et de suivi

名称 Explication
  • fn:error()
  • fn:error(error)
  • fn:error(error,description)
  • fn:error(error,description,error-object)

Exemple : error(fn:QName('http://example.com/test', 'err:toohigh'), 'Error: Price is too high')

Résultat : Retourne à l'environnement de traitement externe http://example.com/test#toohigh ainsi que la chaîne de caractères "Error: Price is too high".

fn:trace(value,label) Utilisé pour le debug des requêtes.

Fonctions numériques

名称 Explication
fn:number(arg)

Retourne la valeur numérique du paramètre. Le paramètre peut être un booléen, une chaîne ou un ensemble de nœuds.

Exemple : number('100')

Résultat : 100

fn:abs(num)

Retourne la valeur absolue du paramètre.

Exemple : abs(3.14)

Résultat : 3.14

Exemple : abs(-3.14)

Résultat : 3.14

fn:ceiling(num)

Retourne l'entier le plus petit supérieur au paramètre num.

Exemple : ceiling(3.14)

Résultat : 4

fn:floor(num)

Retourne le plus grand entier non supérieur au paramètre num.

Exemple : floor(3.14)

Résultat : 3

fn:round(num)

Ronde num à l'entier le plus proche.

Exemple : round(3.14)

Résultat : 3

fn:round-half-to-even()

Exemple : round-half-to-even(0.5)

Résultat : 0

Exemple : round-half-to-even(1.5)

Résultat : 2

Exemple : round-half-to-even(2.5)

Résultat : 2

Fonctions de chaîne

名称 Explication
fn:string(arg)

Retourne la valeur de chaîne du paramètre. Le paramètre peut être un nombre, une valeur logique ou un ensemble de nœuds.

Exemple : string(314)

Résultat : "314"

fn:codepoints-to-string(int,int,...)

Retourne une chaîne à partir d'une séquence de code points.

Exemple : codepoints-to-string(84, 104, 233, 114, 232, 115, 101)

Résultat : 'Thérèse'

fn:string-to-codepoints(chaine)

Retourne une séquence de code points à partir de la chaîne.

Exemple : string-to-codepoints("Thérèse")

Résultat : 84, 104, 233, 114, 232, 115, 101

fn:codepoint-equal(comp1,comp2) Selon la comparaison de code point Unicode, si la valeur de comp1 est égale à la valeur de comp2, retourne true. Sinon, retourne false. (http://www.w3.org/2005/02/xpath-functions/collation/codepoint)
  • fn:compare(comp1,comp2)
  • fn:compare(comp1,comp2,collation)

Si comp1 est inférieur à comp2, retourne -1. Si comp1 est égal à comp2, retourne 0. Si comp1 est supérieur à comp2, retourne 1. (Selon les règles de comparaison utilisées).

Exemple : compare('ghi', 'ghi')

Résultat : 0

fn:concat(chaine,chaine,...)

Retourne la concaténation de chaînes de caractères.

Exemple : concat('XPath ','est ','FUN!')

Résultat : 'XPath est FUN!'

fn:rejoindre((chaine,chaine,...),séparateur)

Utilise le paramètre sep comme séparateur pour retourner la chaîne obtenue par la concaténation des paramètres string.

Exemple : string-join(('We', 'are', 'having', 'fun!'), ' ')

Résultat : ' We are having fun! '

Exemple : string-join(('We', 'are', 'having', 'fun!'))

Résultat : 'Wearehavingfun!'

Exemple : string-join((), 'sep')

Résultat : ''

  • fn:substring(string,start,len)
  • fn:substring(string,start)

Retourne une sous-chaîne de la longueur spécifiée, commençant à la position start. L'index du premier caractère est 1. Si le paramètre len est omis, retourne la sous-chaîne allant de la position start à la fin de la chaîne.

Exemple : substring('Beatles',1,4)

Résultat : 'Beat'

Exemple : substring('Beatles',2)

Résultat : 'eatles'

  • fn:string-length(string)
  • fn:string-length()

Retourne la longueur de la chaîne spécifiée. Si le paramètre string n'est pas spécifié, retourne la longueur de la valeur de chaîne du noeud courant.

Exemple : string-length('Beatles')

Résultat : 7

  • fn:normalize-space(string)
  • fn:normalize-space()

Supprime les espaces en début et en fin de chaîne spécifiée, remplace toutes les séquences d'espaces internes par un seul espace et retourne le résultat. Si le paramètre string n'est pas spécifié, traite le noeud courant.

Exemple : normalize-space(' The   XML ')

Résultat : 'The XML'

fn:normalize-unicode() Exécute la régularisation Unicode.
fn:upper-case(string)

Convertit le paramètre string en majuscules.

Exemple : upper-case('The XML')

Résultat : 'THE XML'

fn:lower-case(string)

Convertit le paramètre string en minuscules.

Exemple : lower-case('The XML')

Résultat : 'the xml'

fn:translate(string1,string2,string3)

Remplace string2 par string3 dans string1.

Exemple : translate('12:30','30','45')

Résultat : '12:45'

Exemple : translate('12:30','03','54')

Résultat : '12:45'

Exemple : translate('12:30','0123','abcd')

Résultat : 'bc:da'

fn:escape-uri(stringURI,esc-res)

Exemple : escape-uri("http://example.com/test#car", true())

Résultat : "http%3A%2F%2Fexample.com%2Ftest#car"

Exemple : escape-uri("http://example.com/test#car", false())

Résultat : "http://example.com/test#car"

Exemple : escape-uri ("http://example.com/~bébé", false())

Résultat : "http://example.com/~b%C3%A9b%C3%A9"

fn:contains(string1,string2)

Retourne true si string1 contient string2, sinon retourne false.

Exemple : contains('XML','XM')

Résultat : true

fn:starts-with(string1,string2)

Retourne true si string1 commence par string2, sinon retourne false.

Exemple : starts-with('XML','X')

Résultat : true

fn:ends-with(string1,string2)

Retourne true si string1 se termine par string2, sinon retourne false.

Exemple : ends-with('XML','X')

Résultat : false

fn:substring-before(string1,string2)

Renvoie la sous-chaine de caractères qui précède l'apparition de string2 dans string1.

Exemple : substring-before('12/10','/')

Résultat : '12'

fn:substring-after(string1,string2)

Renvoie la sous-chaine de caractères qui suit l'apparition de string2 dans string1.

Exemple : substring-after('12/10','/')

Résultat : '10'

fn:matches(string,pattern)

Renvoie true si le paramètre string correspond au schéma spécifié, sinon renvoie false.

Exemple : matches("Merano", "ran")

Résultat : true

fn:replace(string,pattern,replace)

Remplace le schéma spécifié par le paramètre replace et renvoie le résultat.

Exemple : replace("Bella Italia", "l", "*")

Résultat : 'Be**a Ita*ia'

Exemple : replace("Bella Italia", "l", "")

Résultat : 'Bea Itaia'

fn:tokenize(string,pattern)

Exemple : tokenize("XPath is fun", "\s+")

Résultat : ("XPath", "is", "fun")

Fonction concernant anyURI

名称 Explication
fn:resolve-uri(relative,base)  

Fonctions concernant les valeurs booléennes

名称 Explication
fn:boolean(arg) Renvoie la valeur booléenne d'un nombre, d'une chaîne ou d'un ensemble de nœuds.
fn:not(arg)

Premièrement, convertit le paramètre en une valeur booléenne en utilisant la fonction boolean().

Renvoie true si la valeur booléenne est false, sinon renvoie true.

Exemple : not(true())

Résultat : false

fn:true()

Renvoie la valeur booléenne true.

Exemple : true()

Résultat : true

fn:false()

Renvoie la valeur booléenne false.

Exemple : false()

Résultat : false

Fonctions concernant la durée, la date et l'heure

Fonction d'extraction des composants de date, heure et durée

名称 Explication
fn:dateTime(date,time) Convertit le paramètre en date et heure.
fn:years-from-duration(datetimedur) Renvoie la partie année du paramètre sous forme d'entier, exprimée en termes standard.
fn:months-from-duration(datetimedur) Renvoie la partie mois du paramètre sous forme d'entier, exprimée en termes standard.
fn:days-from-duration(datetimedur) Renvoie la partie jour du paramètre sous forme d'entier, exprimée en termes standard.
fn:hours-from-duration(datetimedur) Retourne l'entier représentant les heures dans la valeur du paramètre, exprimé en notation de vocabulaire standard.
fn:minutes-from-duration(datetimedur) Retourne l'entier représentant les minutes dans la valeur du paramètre, exprimé en notation de vocabulaire standard.
fn:seconds-from-duration(datetimedur) Retourne le nombre décimal des minutes dans la valeur du paramètre, exprimé en notation de vocabulaire standard.
fn:year-from-dateTime(datetime)

Retourne l'entier représentant l'année dans la valeur locale du paramètre.

Exemple : year-from-dateTime(xs:dateTime("2005-01-10T12:30-04:10"))

Résultat : 2005

fn:month-from-dateTime(datetime)

Retourne l'entier représentant le mois dans la valeur locale du paramètre.

Exemple : month-from-dateTime(xs:dateTime("2005-01-10T12:30-04:10"))

Résultat : 01

fn:day-from-dateTime(datetime)

Retourne l'entier représentant le jour dans la valeur locale du paramètre.

Exemple : day-from-dateTime(xs:dateTime("2005-01-10T12:30-04:10"))

Résultat : 10

fn:hours-from-dateTime(datetime)

Retourne l'entier représentant les heures dans la valeur locale du paramètre.

Exemple : hours-from-dateTime(xs:dateTime("2005-01-10T12:30-04:10"))

Résultat : 12

fn:minutes-from-dateTime(datetime)

Retourne l'entier représentant les minutes dans la valeur locale du paramètre.

Exemple : minutes-from-dateTime(xs:dateTime("2005-01-10T12:30-04:10"))

Résultat : 30

fn:seconds-from-dateTime(datetime)

Retourne le nombre décimal de secondes dans la valeur locale du paramètre.

Exemple : seconds-from-dateTime(xs:dateTime("2005-01-10T12:30:00-04:10"))

Résultat : 0

fn:timezone-from-dateTime(datetime) Retourne la partie fuseau horaire du paramètre, si elle existe.
fn:year-from-date(date)

Retourne l'entier représentant l'année dans la valeur locale du paramètre.

Exemple : year-from-date(xs:date("2005-04-23"))

Résultat : 2005

fn:month-from-date(date)

Retourne l'entier représentant la partie mois du paramètre local.

Exemple : month-from-date(xs:date("2005-04-23"))

Résultat : 4

fn:day-from-date(date)

Retourne l'entier représentant la partie jour du paramètre local.

Exemple : day-from-date(xs:date("2005-04-23"))

Résultat : 23

fn:timezone-from-date(date) Retourne la partie fuseau horaire du paramètre, si elle existe.
fn:hours-from-time(time)

Retourne l'entier représentant la partie heures du paramètre local.

Exemple : hours-from-time(xs:time("10:22:00"))

Résultat : 10

fn:minutes-from-time(time)

Retourne l'entier représentant la partie minutes du paramètre local.

Exemple : minutes-from-time(xs:time("10:22:00"))

Résultat : 22

fn:seconds-from-time(time)

Retourne l'entier représentant la partie secondes du paramètre local.

Exemple : seconds-from-time(xs:time("10:22:00"))

Résultat : 0

fn:timezone-from-time(time) Retourne la partie fuseau horaire du paramètre, si elle existe.
fn:adjust-dateTime-to-timezone(datetime,timezone)

Si le paramètre timezone est vide, retourne la dateTime sans fuseau horaire.

Sinon, retourne la dateTime avec le fuseau horaire.

fn:adjust-date-to-timezone(date,timezone)

Si le paramètre timezone est vide, retourne la date sans fuseau horaire.

Sinon, retourne la date avec le fuseau horaire.

fn:adjust-time-to-timezone(time,timezone)

Si le paramètre timezone est vide, retourne la date sans fuseau horaire.

Sinon, retourne la date avec le fuseau horaire.

Fonctions liées aux QNames

名称 Explication
fn:QName()  
fn:local-name-from-QName()  
fn:namespace-uri-from-QName()  
fn:namespace-uri-for-prefix()  
fn:in-scope-prefixes()  
fn:resolve-QName()  

Fonctions sur les noeuds

名称 Explication
  • fn:name()
  • fn:name(nodeset)
Retourne le nom du noeud courant ou du premier noeud du jeu de noeuds spécifié.
  • fn:local-name()
  • fn:local-name(nodeset)
Retourne le nom du noeud courant ou du premier noeud du jeu de noeuds spécifié - sans préfixe d'espace de nom.
  • fn:namespace-uri()
  • fn:namespace-uri(nodeset)
Retourne l'URI de l'espace de nom du noeud courant ou du premier noeud du jeu de noeuds spécifié.
fn:lang(lang)

Retourne true si le langage du noeud courant correspond au langage spécifié.

Exemple : Lang("en") est true pour <p xml:lang="en">...</p>

Exemple : Lang("de") est false pour <p xml:lang="en">...</p>

  • fn:root()
  • fn:root(node)
Retourne le noeud racine du noeud ou du noeud spécifié appartenant à l'arbre de noeuds. Il s'agit généralement du noeud de document.

Fonctions de séquence

Fonction générale

名称 Explication
fn:index-of((item,item,...),searchitem)

Retourne la position des éléments de la séquence qui égale le paramètre searchitem.

Exemple : index-of ((15, 40, 25, 40, 10), 40)

Résultat : (2, 4)

Exemple : index-of (("a", "dog", "and", "a", "duck"), "a")

Résultat (1, 4)

Exemple : index-of ((15, 40, 25, 40, 10), 18)

Résultat : ()

fn:remove((item,item,...),position)

Retourne une nouvelle séquence construite à partir du paramètre item - supprimez l'élément spécifié par le paramètre position.

Exemple : remove(("ab", "cd", "ef"), 0)

Résultat : ("ab", "cd", "ef")

Exemple : remove(("ab", "cd", "ef"), 1)

Résultat : ("cd", "ef")

Exemple : remove(("ab", "cd", "ef"), 4)

Résultat : ("ab", "cd", "ef")

fn:empty(item,item,...)

Si la valeur du paramètre est une séquence vide, retourne true, sinon retourne false.

Exemple : empty(remove(("ab", "cd"), 1))

Résultat : false

fn:exists(item,item,...)

Retourne true si la valeur du paramètre n'est pas une séquence vide, sinon retourne false.

Exemple : exists(remove(("ab"), 1))

Résultat : false

fn:distinct-values((item,item,...),collation)

Retourne les valeurs uniques.

Exemple : distinct-values((1, 2, 3, 1, 2))

Résultat : (1, 2, 3)

fn:insert-before((item,item,...),pos,inserts)

Retourne une nouvelle séquence construite à partir de l'élément spécifié par le paramètre item - en insérant la valeur spécifiée par le paramètre inserts à la position spécifiée par le paramètre pos.

Exemple : insert-before(("ab", "cd"), 0, "gh")

Résultat : ("gh", "ab", "cd")

Exemple : insert-before(("ab", "cd"), 1, "gh")

Résultat : ("gh", "ab", "cd")

Exemple : insert-before(("ab", "cd"), 2, "gh")

Résultat : ("ab", "gh", "cd")

Exemple : insert-before(("ab", "cd"), 5, "gh")

Résultat : ("ab", "cd", "gh")

fn:reverse((item,item,...))

Retourne l'ordre inversé des éléments spécifiés.

Exemple : reverse(("ab", "cd", "ef"))

Résultat : ("ef", "cd", "ab")

Exemple : reverse(("ab"))

Résultat : ("ab")

fn:subsequence((item,item,...),start,len)

Retourne une séquence d'éléments à partir de la position spécifiée par le paramètre start, la longueur de la séquence est déterminée par le paramètre len.

La position du premier élément est 1.

Exemple : subsequence(($item1, $item2, $item3,...), 3)

Résultat : ($item3, ...)

Exemple : subsequence(($item1, $item2, $item3, ...), 2, 2)

Résultat : ($item2, $item3)

fn:unordered((item,item,...)) Retourne les éléments en fonction de l'ordre déterminé par l'implémentation.

Fonction de test de la capacité de la séquence

名称 Explication
fn:zero-or-one(item,item,...) Retourne les paramètres si ceux-ci contiennent zéro ou un élément, sinon génère une erreur.
fn:one-or-more(item,item,...) Retourne les paramètres si ceux-ci contiennent un ou plusieurs éléments, sinon génère une erreur.
fn:exactly-one(item,item,...) Retourne les paramètres si ceux-ci contiennent un élément, sinon génère une erreur.

Égal, Union, Intersection et Exception

名称 Explication
fn:deep-equal(param1,param2,collation) Retourne true si param1 et param2 sont égaux entre eux (deep-equal), sinon retourne false.

Fonctions totales

名称 Explication
fn:count((item,item,...)) Retourne le nombre de noeuds.
fn:avg((arg,arg,...))

Retourne la moyenne des valeurs des paramètres.

Exemple : avg((1,2,3))

Résultat : 2

fn:max((arg,arg,...))

Retourne le paramètre supérieur à d'autres paramètres.

Exemple : max((1,2,3))

Résultat : 3

Exemple : max(('a', 'k'))

Résultat : 'k'

fn:min((arg,arg,...))

Retourne le paramètre inférieur à d'autres paramètres.

Exemple : min((1,2,3))

Résultat : 1

Exemple : min(('a', 'k'))

Résultat : 'a'

fn:sum(arg,arg,...) Retourne la somme des valeurs numériques de chaque noeud dans la collection spécifiée.

Fonctions générant des séquences

名称 Explication
fn:id((string,string,...),node) Retourne une séquence d'éléments, dont la valeur ID est égale à une ou plusieurs valeurs spécifiées dans le paramètre string.
fn:idref((string,string,...),node) Retourne une séquence d'éléments ou de noeuds d'attribut, dont la valeur IDREF est égale à une ou plusieurs valeurs spécifiées dans le paramètre string.
fn:doc(URI)  
fn:doc-available(URI) Retourne true si la fonction doc() retourne un noeud de document, sinon retourne false.
  • fn:collection()
  • fn:collection(string)
 

Fonctions de contexte

名称 Explication
fn:position()

Retourne l'index de la position du noeud en cours de traitement.

Exemple : //book[position()<=3]

Résultat : sélection des trois premiers éléments book

fn:last()

返回在被处理的节点列表中的项目数目。

例子://book[last()]

结果:选择最后一个 book 元素

fn:current-dateTime() 返回当前的 dateTime(带有时区)。
fn:current-date() 返回当前的日期(带有时区)。
fn:current-time() 返回当前的时间(带有时区)。
fn:implicit-timezone() 返回隐式时区的值。
fn:default-collation() 返回默认对照的值。
fn:static-base-uri() 返回 base-uri 的值。

XSLT 函数

此外,还有以下内置的 XSLT 函数:

名称 描述
current() 返回当前节点作为唯一成员的节点集。
document() 用于访问外部 XML 文档中的节点。
element-available() 检测 XSLT 处理器是否支持指定的元素。
format-number() 把数字转换为字符串。
function-available() 检测 XSLT 处理器是否支持指定的函数。
generate-id() 返回唯一标识指定节点的字符串值。
key() 检索以前使用 <xsl:key> 语句标记的元素。
node-set 将树转换为节点集。产生的节点集总是包含单个节点并且是树的根节点。
system-property() 返回系统属性的值。
unparsed-entity-uri() 返回未解析实体的 URI。

Haut

其他 XML DOM 对象

Haut