Copyright © 2000 W3C® (MIT, INRIA, Keio), tous droits réservés. Les règles de responsabilité, de nom de marque, d'utilisation des documents et d'octroi de licences logicielles du W3C s'appliquent.
Les spécifications du modèle objet de document niveau 2 ont été produites par le groupe de travail DOM dans le cadre de l'activité DOM.
Ce document liste les erreurs connues dans les spécifications du modèle objet de document niveau 2. Chaque entrée comporte les renseignements suivants :
Merci d'envoyer les commentaires d'ordre général à propos de ce document à la liste de diffusion publique www-dom@w3.org. Des archives sont disponibles à http://lists.w3.org/Archives/Public/www-dom/.
Ainsi, les mises en œuvre DOM seulement HTML [DOM niveau 2 HTML] ne sont pas tenues de produire des objets pour mettre en œuvre ces interfaces.
DOMException.NO_MODIFICATION_ALLOWED_ERR : Soulevée si ce nœud est en lecture seule.
devrait se lire :DOMException.NO_MODIFICATION_ALLOWED_ERR : Soulevée si ce nœud est en lecture seule ou si le parent précédent du nœud à insérer est en lecture seule.
Crée un objet XML Document du type indiqué avec son élément document. Les mises en œuvre DOM seulement HTML ne sont pas tenues de reconnaître cette méthode.
devrait se lire :Crée un objet DOM Document du type indiqué avec son élément document.
L'exception :DOMException.NAMESPACE_ERR : Soulevée si qualifiedName est malformé, si qualifiedName a un préfixe et namespaceURI a la valeur null, ou si qualifiedName a un préfixe qui est "xml" et namespaceURI est différent de "http://www.w3.org/XML/1998/namespace" [Les espaces de nommage].
devrait se lire :DOMException.NAMESPACE_ERR : Soulevée si qualifiedName est malformé, si qualifiedName a un préfixe et namespaceURI a la valeur null, ou si qualifiedName a un préfixe qui est "xml" et namespaceURI est différent de "http://www.w3.org/XML/1998/namespace" [Les espaces de nommage], ou si la mise en œuvre DOM ne gère pas la fonctionnalité "XML" et qu'une adresse URI d'espace de nommage non nulle est fournie, puisque les espaces de nommage ont été définis par XML.
L'exception suivante devrait être ajoutée :DOMException.NOT_SUPPORTED_ERR : Peut être soulevée par les mises en œuvre DOM qui ne gèrent pas la fonctionnalité "XML", si celles-ci n'ont pas choisi de la gérer. Remarque : D'autres fonctionnalités, introduites ultérieurement par le groupe de travail DOM ou dans des extensions définies par d'autres groupes, pourront également demander la gestion de cette méthode ; consulter la définition de la fonctionnalité pour savoir si elle nécessite cette méthode.
Les mises en œuvre DOM seulement HTML ne sont pas tenues de reconnaître cette méthode.
L'exception suivante devrait être ajoutée :DOMException.NOT_SUPPORTED_ERR : Peut être soulevée par les mises en œuvre DOM qui ne gèrent pas la fonctionnalité "XML", si celles-ci n'ont pas choisi de la gérer. Remarque : D'autres fonctionnalités, introduites ultérieurement par le groupe de travail DOM ou dans des extensions définies par d'autres groupes, pourront également demander la gestion de cette méthode ; consulter la définition de la fonctionnalité pour savoir si elle nécessite cette méthode.
Les mises en œuvre DOM seulement HTML ne sont pas tenues de reconnaître cette méthode.
L'exception suivante devrait être ajoutée :DOMException.NOT_SUPPORTED_ERR : Toujours soulevée si le document courant ne gère pas la fonctionnalité "XML", puisque les espaces de nommage ont été définis par XML.
(idem pour Document.createElementNS, NamedNodeMap.setNamedItemNS, Element.setAttributeNS, Element.setAttributeNodeNS)
Les mises en œuvre DOM seulement HTML ne sont pas tenues de reconnaître cette méthode.
Le paragraphe suivant devrait être ajouté dans la description :Les documents qui ne gèrent pas la fonctionnalités "XML" ne permettront que des appels DOM niveau 1 pour la création/le paramétrage des éléments et attributs. En conséquence, si on indique une adresse URI d'espace de nommage non nulle, ces appels DOM ne trouveront jamais un nœud qui correspond.
(idem pour Element.getAttributeNodeNS, Element.hasAttributeNS, Element.removeAttributeNS, Element.getElementsByTagNameNS, NamedNodeMap.getNamedItemNS, NamedNodeMap.removeNamedItemNS,
DOMException.HIERARCHY_REQUEST_ERR : Soulevée pour une tentative d'ajout d'un nœud qui n'appartient
pas à cet objet NamedNodeMap. Comme exemples, une tentative d'insérer autre chose qu'un nœud Attr
dans la carte des attributs d'un objet Element ou d'insérer autre chose qu'un nœud Entity
dans la carte des objets Entity d'un objet DocumentType.
(idem pour setNamedItemNS)
Le passage :
Par convention, et pour éviter les conflits éventuels, les noms qui se rapportent à des fonctionnalités définies en-dehors de la spécification DOM devraient être rendus uniques en inversant le nom du domaine Internet de la personne (ou de l'organisation dont celle-ci fait partie) qui définit la fonctionnalité, composant par composant, et en utilisant le résultat obtenu comme préfixe. Par exemple, le groupe de travail SVG du W3C définit la fonctionnalité "org.w3c.dom.svg".
devrait se lire :
Par convention, et pour éviter les conflits éventuels, les noms qui se rapportent à des fonctionnalités définies en-dehors de la spécification DOM devraient être rendus uniques.
DOMException.HIERARCHY_REQUEST_ERR : Soulevée si ce nœud est d'un type qui n'admet pas d'enfant du type de ce
nœud newChild, ou si le nœud à ajouter à la suite est un des ancêtres de ce nœud.
devrait se lire :
DOMException.HIERARCHY_REQUEST_ERR : Soulevée si ce nœud est d'un type qui n'admet pas d'enfant du type de ce
nœud newChild, ou si le nœud à ajouter à la suite est un des ancêtres de ce nœud
ou ce nœud en question.
DOMException.HIERARCHY_REQUEST_ERR : Soulevée si ce nœud est d'un type qui n'admet pas d'enfant du type de ce
nœud newChild, ou si le nœud à insérer est un des ancêtres de ce nœud.
devrait se lire :
DOMException.HIERARCHY_REQUEST_ERR : Soulevée si ce nœud est d'un type qui n'admet pas d'enfant du type de ce
nœud newChild, ou si le nœud à insérer est un des ancêtres de ce nœud ou ce nœud en question.
DOMException.HIERARCHY_REQUEST_ERR : Soulevée si ce nœud est d'un type qui n'admet pas d'enfant du type de ce
nœud newChild, ou si le nœud à remplacer est un des ancêtres de ce nœud.
devrait se lire :
DOMException.HIERARCHY_REQUEST_ERR: Soulevée si ce nœud est d'un type qui n'admet pas d'enfant du type de ce
nœud newChild, ou si le nœud à remplacer est un des ancêtres de ce nœud ou ce nœud en question.
DOMException.NAMESPACE_ERR : Soulevée si qualifiedName est malformé, ou si qualifiedName a un préfixe et namespaceURI est null, ou si qualifiedName a un préfixe qui est "xml" et namespaceURI est différent de "http://www.w3.org/XML/1998/namespace", ou si qualifiedName est "xmlns" et namespaceURI est différent de "http://www.w3.org/2000/xmlns/".
devrait se lire :
DOMException.NAMESPACE_ERR : Soulevée si qualifiedName est malformé, ou si qualifiedName a un préfixe et namespaceURI est null, ou si qualifiedName a un préfixe qui est "xml" et namespaceURI est différent de "http://www.w3.org/XML/1998/namespace", ou si qualifiedName (ou son préfixe) est "xmlns" et namespaceURI est différent de "http://www.w3.org/2000/xmlns/".
(idem pour Element.setAttributeNS)
DOMException.INVALID_CHARACTER_ERR : Soulevée si le nom qualifié spécifié contient un caractère illégal.
devrait se lire :
DOMException.INVALID_CHARACTER_ERR : Soulevée si le nom qualifié spécifié contient un caractère illégal, selon la spécification XML 1.0 [XML].
DOMException.NAMESPACE_ERR : Soulevée si qualifiedName est malformé, ou si qualifiedName a un préfixe et namespaceURI est null, ou si qualifiedName a un préfixe qui est "xml" et namespaceURI est différent de "http://www.w3.org/XML/1998/namespace", ou si qualifiedName est "xmlns" et namespaceURI est différent de "http://www.w3.org/2000/xmlns/".
devrait se lire :
DOMException.NAMESPACE_ERR : Soulevée si qualifiedName est malformé selon la spécification des espaces de nommage dans XML, ou si qualifiedName a un préfixe et namespaceURI est null, ou si qualifiedName a un préfixe qui est "xml" et namespaceURI est différent de "http://www.w3.org/XML/1998/namespace", ou si qualifiedName (ou son préfixe) est "xmlns" et namespaceURI est différent de "http://www.w3.org/2000/xmlns/".
(idem pour Element.setAttributeNS)
DOMException.INVALID_CHARACTER_ERR : Soulevée si le nom qualifié indiqué contient un caractère illégal.
devrait se lire :
DOMException.INVALID_CHARACTER_ERR : Soulevée si le nom qualifié indiqué contient un caractère illégal selon la spécification XML 1.0 [XML].
NAMESPACE_ERR : Soulevée si qualifiedName est malformé, ou si qualifiedName a un préfixe et namespaceURI est null, ou si qualifiedName a un préfixe qui est "xml" et namespaceURI est différent de "http://www.w3.org/XML/1998/namespace" [Les espaces de nommage].
devrait se lire :
NAMESPACE_ERR: Soulevée si qualifiedName est malformés selon la spécification des espaces de nommage dans XML, ou si qualifiedName a un préfixe et namespaceURI est null, ou si qualifiedName a un préfixe qui est "xml" et namespaceURI est différent de "http://www.w3.org/XML/1998/namespace" [Les espaces de nommage].
DOMException.INVALID_CHARACTER_ERR : Soulevée si le nom qualifié spécifié contient un caractère illégal.
devrait se lire :
DOMException.INVALID_CHARACTER_ERR : Soulevée si le nom qualifié spécifié contient un caractère illégal, selon la spécification XML 1.0 [XML].
NAMESPACE_ERR : Soulevée si le préfixe indiqué est malformé, ou si l'attribut namespaceURI de ce nœud a la valeur null, ou si le préfixe indiqué est "xml" et la valeur de l'attribut namespaceURI de ce nœud est différente de "http://www.w3.org/XML/1998/namespace", ou si ce nœud est un attribut, le préfixe indiqué est "xmlns" et l'attribut namespaceURI de ce nœud est différent de "http://www.w3.org/2000/xmlns/", ou si ce nœud est un attribut et la valeur de qualifiedName de ce nœud est "xmlns" [Les espaces de nommage].
devrait se lire :
NAMESPACE_ERR : Soulevée si le préfixe indiqué est malformé selon la spécification des espaces de nommage dans XML, ou si l'attribut namespaceURI de ce nœud a la valeur null, ou si le préfixe indiqué est "xml" et la valeur de l'attribut namespaceURI de ce nœud est différente de "http://www.w3.org/XML/1998/namespace", ou si ce nœud est un attribut, le préfixe indiqué est "xmlns" et l'attribut namespaceURI de ce nœud est différent de "http://www.w3.org/2000/xmlns/", ou si ce nœud est un attribut et la valeur de qualifiedName de ce nœud est "xmlns" [Les espaces de nommage].
Le sous-ensemble interne sous forme d'une chaîne.
devrait se lire :
Le sous-ensemble interne sous forme d'une chaîne, ou la valeur null s'il n'y en a pas.
Les crochets de délimitation ne sont pas compris.
Pour le niveau 2, la chaîne peut être "2.0" ou bien "1.0". Si la version n'est pas indiquée, la méthode renverra la valeur true
indiquant une gestion de toute version de la fonctionnalité.
devrait se lire :
C'est le numéro de version de la fonctionnalité à tester. Pour le niveau 2, la chaîne peut être
soit "2.0", soit "1.0". Si la version a la valeur null ou la chaîne vide, la méthode renverra la valeur true
indiquant une gestion de toute version de la fonctionnalité.
Les mises en œuvre devraient soulever d'autres exceptions en d'autres circonstances. Par exemple, la mise en œuvre
devrait soulever une exception spécifique au passage d'un argument de valeur null.
devrait se lire :
Les mises en œuvre devraient soulever d'autres exceptions en d'autres circonstances. Par exemple, la mise en œuvre
devrait soulever une exception spécifique au passage d'un argument de valeur null si cette valeur est inattendue.
Cela signifie que les entités analysables, déclarées dans le sous-ensemble externe, n'auront pas besoin d'être résolues
par certaines classes d'application et que la valeur de remplacement de l'entité pourra être indisponible. Lorsque
la valeur de remplacement est disponible, la liste enfant du nœud Entity correspondant représente la
structure de ce texte de remplacement.
devrait se lire :
Cela signifie que les entités analysables, déclarées dans le sous-ensemble externe, n'auront pas besoin d'être résolues
par certaines classes d'application et que le texte de remplacement de l'entité pourra être indisponible. Lorsque
le texte de remplacement est disponible,
la liste enfant du nœud Entity correspondant représente la structure de la valeur de remplacement.
Selon [Les espaces de nommage dans XML], les applications doivent
utiliser la valeur null comme paramètre namespaceURI dans les méthodes pour ne définir aucun espace de nommage.
(idem pour createElementNS, getAttributeNS, getAttributeNodeNS, hasAttributeNS, removeAttributeNS, setAttributeNS, setAttributeNodeNS, getNamedItemNS, removeNamedItemNS, setNamedItemNS)
La documentation des fichiers source Java contient des erreurs et présente des problèmes de formatage. Ce nouveau fichier ZIP devrait les réparer.
La phrase suivante manque dans la description :
Si l'attribut n'a pas de valeur indiquée ni de valeur par défaut, l'appel de cette méthode ne produit aucun effet.
(idem pour removeAttributeNS)
Crée un objet XML Document du type indiqué avec son élément document.
Les mises en œuvre DOM seulement HTML ne sont pas tenues de mettre en œuvre cette méthode
Crée un objet DOM Document du type indiqué avec son élément document.
Il faudrait ajouter l'exception suivante :
DOMException.NOT_SUPPORTED_ERR : Peut être soulevée si la mise en œuvre ne reconnaît pas la fonctionnalité "XML" et que le
langage exposé au travers de l'interface Document ne reconnaît pas les espaces de nommage XML (tel que [HTML4]).
Les mises en œuvre seulement HTML ne sont pas tenues de mettre en œuvre cette méthode.
Il faudrait ajouter l'exception suivante :
DOMException.NOT_SUPPORTED_ERR : Peut être soulevée si la mise en œuvre ne reconnaît pas la fonctionnalité "XML" et que le
langage exposé au travers de l'interface Document ne reconnaît pas les espaces de nommage XML (tel que [HTML4]).
Les mises en œuvre seulement HTML ne sont pas tenues de mettre en œuvre cette méthode.
Il faudrait ajouter l'exception suivante :
DOMException.NOT_SUPPORTED_ERR : Peut être soulevée si la mise en œuvre ne reconnaît pas la fonctionnalité "XML" et que le
langage exposé au travers de l'interface Document ne reconnaît pas les espaces de nommage XML (tel que [HTML4]).
(idem pour Document.createElementNS, NamedNodeMap.setNamedItemNS, Element.setAttributeNS, Element.setAttributeNodeNS)
Les mises en œuvre seulement HTML ne sont pas tenues de mettre en œuvre cette méthode.
Il faudrait ajouter l'exception suivante :
DOMException.NOT_SUPPORTED_ERR : Peut être soulevée si la mise en œuvre ne reconnaît pas la fonctionnalité "XML" et que le
langage exposé au travers de l'interface Document ne reconnaît pas les espaces de nommage XML (tel que [HTML4]).
(idem pour Element.getAttributeNodeNS, Element.hasAttributeNS, Element.removeAttributeNS, Element.getElementsByTagNameNS, NamedNodeMap.getNamedItemNS et NamedNodeMap.removeNamedItemNS
Le remplacement d'un nœud attribut par lui-même n'a aucun effet.
(idem pour Element.setAttributeNodeNS)
Le remplacement d'un nœud par lui-même n'a aucun effet.
(idem pour NamedNodeMap.setNamedItemNS)
Il peut s'agir d'une adresse URI absolue ou non.
(idem pour Entity.systemId et Notation.systemId)
Quand cet attribut est défini avec la valeur null, son paramétrage ne produit aucun effet.
Quand cet attribut est défini avec la valeur null, son paramétrage
ne produit aucun effet y compris quand le nœud est en lecture seule.
Les nœuds DocumentType sont en lecture seule.
Puisque le DOM n'effectue aucune vérification lexicale, remarquer que la chaîne vide
sera traitée comme une adresse URI d'espace de nommage réel dans les méthodes DOM niveau 2.
Les applications doivent utiliser la valeur null comme paramètre namespaceURI pour ces méthodes,
si aucun espace de nommage n'est voulu.
Puisque certains langages de programmation ne distingue pas la valeur null de la chaîne vide, et qu'une chaîne vide
ne peut constituer l'adresse URI d'un espace de nommage, même si le DOM n'effectue aucune vérification lexicale,
le traitement d'une chaîne vide, si elle est passée comme adresse URI d'espace de nommage
à une méthode DOM niveau 2, dépend de la mise en œuvre. Les applications doivent utiliser la valeur null
comme paramètre namespaceURI de ces méthodes, si aucun espace de nommage n'est voulu.
Puisque le DOM n'effectue aucune vérification lexicale, remarquer que la chaîne vide
sera traitée comme une adresse URI d'espace de nommage réel dans les méthodes DOM niveau 2.
Les applications doivent utiliser la valeur null comme paramètre namespaceURI pour ces méthodes,
si aucun espace de nommage n'est voulu.
Les applications devraient utiliser la valeur null comme paramètre namespaceURI pour ces méthodes
si aucun espace de nommage n'est voulu. Dans les langages de programmation où on peut différencier les chaînes vides
de la valeur null, la façon dont ces chaînes vides sont traitées, quand elles sont passées comme adresse URI
d'espace de nommage à une méthode DOM niveau 2, dépendra de la mise en œuvre. Cela reste vrai même si
le DOM ne fait aucune vérification lexicale sur les adresses URI.
Remarque : Une déclaration setAttributeNS(null, ...) place l'attribut dans les partitions par type d'élément.
La documentation des fichiers sources Java n'avait pas de contenu pour les méthodes set*. Ce nouveau fichier zip devrait réparer ces problèmes.
DOMException.WRONG_DOCUMENT_ERR : Soulevée si le nœud indiqué par refNode a été créé depuis un document différent
de celui qui a créé cette étendue Range.
(idem pour selectNodeContents, setStart, setStartAfter, setStartBefore, setEnd, setEndAfter et setEndBefore)
Par exemple, si la constante de filtrage du nœud courant change de FILTER_SHOW à FILTER_SKIP, un objet TreeWalker pourra naviguer hors de ce nœud, dans toutes les directions, mais pas y revenir tant que les conditions de filtrage n'auront pas à nouveau changé.
devrait se lire :
Par exemple, si la constante de filtrage du nœud courant change de FILTER_ACCEPT à FILTER_SKIP, un objet TreeWalker pourra naviguer hors de ce nœud, dans toutes les directions, mais pas y revenir tant que les conditions de filtrage n'auront pas à nouveau changé.
Pour la valeur false, ces nœuds et leurs descendants seront rejetés.
devrait se lire :
Pour une valeur false, ces enfants et leurs descendants seront rejetés.
(idem pour TreeWalker.expandEntityReferences)
Des exemplaires de itérateur
et/ou Iterator
persistent ça et là. Historiquement, ceux-ci étaient des
références à un concept général d'itération temporaire, que l'on pensait réutilisable, mais le groupe de travail
a décidé d'abandonner ce niveau d'abstraction et la plupart des autres références a été changée pour NodeIterator.
Le changement des exemplaires restants améliore l'unité de style.
N.D.T. Toutes les modifications décrites sont répercutées dans le texte.
Le filtre NodeFilter à utiliser avec cet objet TreeWalker ou la valeur
null pour ne pas indiquer de filtre.
devrait se lire :
Le filtre NodeFilter à utiliser avec cet itérateur NodeIterator ou la valeur
null pour ne pas indiquer de filtre.
La documentation dans les fichiers source Java contient des erreurs et présente des problèmes de formatage. Ce nouveau fichier ZIP devraient les réparer.
La documentation dans les fichiers sources Java n'avait pas de contenu pour les méthodes set*. Ce nouveau fichier zip devraient corriger les problèmes.
La documentation dans les fichiers source Java contient des erreurs et présente des problèmes de formatage. Ce nouveau fichier ZIP devraient les réparer.
La documentation dans les fichiers sources Java n'avait pas de contenu pour les méthodes set*. Ce nouveau fichier zip devrait corriger les problèmes.
La documentation dans les fichiers source Java contient des erreurs et présente des problèmes de formatage. Ce nouveau fichier ZIP devraient les réparer.
Quelques exemplaires de "DOMCharDataModified" apparaissent dans les descriptions ; il faut les remplacer par "DOMCharacterDataModified".
N.D.T. Toutes les modifications décrites sont répercutées dans le texte.
La documentation dans les fichiers sources Java n'avait pas de contenu pour les méthodes set*. Ce nouveau fichier zip devrait corriger les problèmes.
La documentation dans les fichiers source Java contient des erreurs et présente des problèmes de formatage. Ce nouveau fichier ZIP devraient les réparer.
Sert à récupérer la priorité d'une propriété CSS (par exemple, le qualificatif "important")
si la propriété est fixée explicitement dans ce bloc de déclaration.
devrait se lire :
Sert à récupérer la priorité d'une propriété CSS (par exemple, le qualificatif "important")
si la propriété est fixée explicitement dans ce bloc de déclaration.
et
Une chaîne représentant, le cas échéant, la priorité (par exemple, "important").
La chaîne vide si ce n'est pas le cas.
devrait se lire :
Une chaîne représentant la priorité (par exemple, "important") si la propriété
est explicitement fixée dans ce bloc de déclaration et qu'une priorité est indiquée. Sinon, la chaîne vide.
La nouvelle priorité de la propriété (par exemple, "important").
devrait se lire :
La nouvelle priorité de la propriété (par exemple, "important") ou la chaîne
vide s'il n'y en a pas.
La remarque suivante devrait être ajoutée :
Remarque : La méthode setProperty permet de modifier une propriété ou d'en ajouter une nouvelle
dans le bloc de déclaration. Tout appel à cette méthode peut changer l'ordre des propriétés dans la méthode item.
La documentation dans les fichiers sources Java n'avait pas de contenu pour les méthodes set*. Ce nouveau fichier zip devrait corriger les problèmes.
adresse URIdevrait précier
adresse URI absolue
(idem pour HTMLImageElement.longDesc)
Les phrases :
Par exemple, les noms des éléments et attributs se présentent tout en majuscules (par souci de cohérence) quand on les utilise dans un document HTML, indépendamment de la casse des caractères employés dans le balisage. Puisque XHTML repose sur XML, tout est sensible à la casse en XHTML, et les noms des éléments et attributs devront être en minuscules dans le balisage.
devraient être :
Par exemple, les noms des éléments se présentent tout en majuscules (par souci de cohérence) quand on les utilise dans un document HTML, indépendamment de la casse des caractères employés dans le balisage. De même, les noms des attributs définis dans HTML 4.01 se présentent tout en minuscules, indépendamment de la casse des caractères dans le balisage ; par contre, la casse des autres attributs (c.à.d. ceux non définis par HTML 4.01) dépendra de la mise en œuvre. Puisque XHTML repose sur XML, tout est sensible à la casse en XHTML, et les noms des éléments et attributs devront être en minuscules dans le balisage.
Un nœud descendant d'un nœud A correspond à tout nœud en aval de A
dans le modèle en arbre d'un document, où en aval
veut dire en remontant vers la racine
.
devrait se lire :
Un nœud descendant d'un nœud A correspond à tout nœud en aval de A
dans le modèle en arbre d'un document, où en aval
veut dire en s'éloignant de la racine
.