[cxml-cvs] CVS update: cxml/dom/dom-builder.lisp cxml/dom/dom-impl.lisp
David Lichteblau
dlichteblau at common-lisp.net
Sun Dec 4 22:18:36 UTC 2005
Update of /project/cxml/cvsroot/cxml/dom
In directory common-lisp.net:/tmp/cvs-serv8177/dom
Modified Files:
dom-builder.lisp dom-impl.lisp
Log Message:
ohne prefix haben wir beim namespace-processing aber trotzdem einen lname
Date: Sun Dec 4 23:18:34 2005
Author: dlichteblau
Index: cxml/dom/dom-builder.lisp
diff -u cxml/dom/dom-builder.lisp:1.5 cxml/dom/dom-builder.lisp:1.6
--- cxml/dom/dom-builder.lisp:1.5 Sun Dec 4 21:35:15 2005
+++ cxml/dom/dom-builder.lisp Sun Dec 4 23:18:34 2005
@@ -80,19 +80,22 @@
(defmethod sax:start-element
((handler dom-builder) namespace-uri local-name qname attributes)
(with-slots (document element-stack) handler
- (let ((element (make-instance 'element
+ (let* ((nsp sax:*namespace-processing*)
+ (element (make-instance 'element
:tag-name qname
:owner document
- :namespace-uri namespace-uri
- :local-name local-name
- :prefix (cxml::split-qname (cxml::rod qname))))
+ :namespace-uri (when nsp namespace-uri)
+ :local-name (when nsp local-name)
+ :prefix (when nsp (cxml::split-qname (cxml::rod qname)))))
(parent (car element-stack))
(anodes '()))
(dolist (attr attributes)
(let ((anode
- (dom:create-attribute-ns document
- (sax:attribute-namespace-uri attr)
- (sax:attribute-qname attr)))
+ (if nsp
+ (dom:create-attribute-ns document
+ (sax:attribute-namespace-uri attr)
+ (sax:attribute-qname attr))
+ (dom:create-attribute document (sax:attribute-qname attr))))
(text
(dom:create-text-node document (sax:attribute-value attr))))
(setf (slot-value anode 'dom-impl::specified-p)
Index: cxml/dom/dom-impl.lisp
diff -u cxml/dom/dom-impl.lisp:1.11 cxml/dom/dom-impl.lisp:1.12
--- cxml/dom/dom-impl.lisp:1.11 Sun Dec 4 22:44:06 2005
+++ cxml/dom/dom-impl.lisp Sun Dec 4 23:18:34 2005
@@ -132,7 +132,8 @@
(etypecase x
(null x)
(rod x)
- (string (string-rod x))))
+ (string (string-rod x))
+ (vector x)))
(defun assert-writeable (node)
(when (read-only-p node)
More information about the Cxml-cvs
mailing list