* trying to solve the damn thing, use XML namespace for attribute

access
* we got an attribute related error, no wonder...
This commit is contained in:
Eray Özkural
2005-11-10 01:06:19 +00:00
parent abe9b75388
commit 8982c06e54
3 changed files with 12 additions and 4 deletions
+2 -2
View File
@@ -101,7 +101,7 @@ class LocalText(dict):
assert self.tag != '' assert self.tag != ''
for key in self.iterkeys(): for key in self.iterkeys():
newnode = newNode(node, self.tag) newnode = newNode(node, self.tag)
newnode.setAttributeNS(None, 'xml:lang', key) newnode.setAttributeNS(XML_NS, 'xml:lang', key)
newtext = newTextNode(node, self[key]) newtext = newTextNode(node, self[key])
newnode.appendChild(newtext) newnode.appendChild(newtext)
node.appendChild(newnode) node.appendChild(newnode)
@@ -423,7 +423,7 @@ class autoxml(oo.autosuper, oo.autoprop):
return getNodeAttribute(node, attr) return getNodeAttribute(node, attr)
def writetext(node, attr, text): def writetext(node, attr, text):
#print 'write attr', attr, text #print 'write attr', attr, text
node.setAttributeNS(None, attr, text) node.setAttributeNS(XML_NS, attr, text)
anonfuns = cls.gen_anon_basic(attr, spec, readtext, writetext) anonfuns = cls.gen_anon_basic(attr, spec, readtext, writetext)
return cls.gen_named_comp(attr, spec, anonfuns) return cls.gen_named_comp(attr, spec, anonfuns)
+6 -2
View File
@@ -35,6 +35,10 @@ import Ft
from Ft.Xml.Domlette import implementation from Ft.Xml.Domlette import implementation
from Ft.Xml import ParsePath from Ft.Xml import ParsePath
from Ft.Xml.Domlette import NonvalidatingReader from Ft.Xml.Domlette import NonvalidatingReader
from xml.dom import XHTML_NAMESPACE, XML_NAMESPACE
XHTML_NS = unicode(XHTML_NAMESPACE)
XML_NS = unicode(XML_NAMESPACE)
import pisi import pisi
@@ -67,10 +71,10 @@ def newTextNode(node, text):
def getNodeAttribute(node, attrname): def getNodeAttribute(node, attrname):
"""get named attribute from DOM node""" """get named attribute from DOM node"""
if not node.hasAttributeNS(None, attrname): if not node.hasAttributeNS(XML_NS, attrname):
return None return None
else: else:
return node.getAttributeNS(None, attrname) return node.getAttributeNS(XML_NS, attrname)
def getChildElts(node): def getChildElts(node):
"""get only child elements""" """get only child elements"""
+4
View File
@@ -36,6 +36,10 @@ from Ft.Xml.Domlette import implementation
from Ft.Xml.Domlette import NonvalidatingReader from Ft.Xml.Domlette import NonvalidatingReader
from Ft.Xml import Parse, ParsePath from Ft.Xml import Parse, ParsePath
from Ft.Xml.Domlette import Print, PrettyPrint from Ft.Xml.Domlette import Print, PrettyPrint
from xml.dom import XHTML_NAMESPACE, XML_NAMESPACE
XHTML_NS = unicode(XHTML_NAMESPACE)
XML_NS = unicode(XML_NAMESPACE)
import pisi import pisi