Voilà le contexte
Code html : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
<?xml version="1.0" encoding="iso-8859-1"?>
<xhtml xmlns="http://www.w3.org/1999/xhtml"
   xmlns:myNS="http://mydomain.org/NS"
>
  <head>
  </head>
  <body>
   <span myNS:MyAttribute="aValue">contenu</span>
   <myNS:myTag>coucou</myNS:myTag>
  </body>
</xhtml>
De ce que j'ai compris des namspaces je m'attendais à
Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
documentElement {nodeName:'HTML', namespaceUri:'http://www.w3.org/1999/xhtml'}
  HTMLHeadElement {namespaceUri:null}
  HTMLBodyElement {namespaceUri:null}
    HTMLSpanElement {
      namespaceUri:null,
      attributes:[
        0:{prefix:'myNS',name:'MyAttribute',value:'aValue',namespaceUri:'http://mydomain.org/NS'}
      ]
    }
      TextNode (contenu)
    Element {prefix:'myNS',nodeName:'myTag', namespaceUri:'http://mydomain.org/NS'}
      TextNode (coucou)

Soit donc un noeud span avec un attribut de nom "MyAttribute" de valeur "aValue" dans le namespace "http://mydomain.org/NS"
de même pour le tag "myTag" dans le namespace "http://mydomain.org/NS"

Or ce n'est pas du tout ce que j'obtiens
Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
documentElement {nodeName:'HTML', namespaceUri:'http://www.w3.org/1999/xhtml'}
  HTMLHeadElement {namespaceUri:null}
  HTMLBodyElement {namespaceUri:null}
    HTMLSpanElement {
      namespaceUri:null
      attributes:[
        0:{prefix:null,name:'myNS:MyAttribute',value:'aValue',namespaceUri:null}
      ]
    }
      TextNode (contenu)
    Element {prefix:null,nodeName:'myNS:myTag', namespaceUri:null}
      TextNode (coucou)
j'ai l'attribut "myNS:MyAttribute" dans le namspace par défaut et le tag "myNS:myTag" lui aussi dans le namspace par défaut

pourtant lorsque j'utilise javascript pour ajouter de attributs dans le namespace ça marche
Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
body.firstChild.setAttributeNS('http://mydomain.org/NS','other',12832);
j'ai bien
Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
documentElement {nodeName:'HTML', namespaceUri:'http://www.w3.org/1999/xhtml'}
  HTMLHeadElement {namespaceUri:null}
  HTMLBodyElement {namespaceUri:null}
    HTMLSpanElement {
      namespaceUri:null,
      attributes:[
        0:{prefix:null,name:'myNS:MyAttribute',value:'aValue',namespaceUri:null}
        1:{prefix:null,name:'other',value:12832,namespaceUri:'http://mydomain.org/NS'}
      ]
    }
      TextNode (contenu)
    Element {prefix:null,nodeName:'myNS:myTag', namespaceUri:null}
      TextNode (coucou)
l'attribut other a bien été déclaré dans le namespace "http://mydomain.org/NS" alors que MyAttribute (qui était dans le code source) est vu dans le namspace par défaut mais avec un nom contenant le préfixe

J'ai la même chose sous FF, Chorme, Omniweb
Merci de votre aide
A+JYT