[cxml-cvs] CVS update: cxml/xml/xml-parse.lisp
David Lichteblau
dlichteblau at common-lisp.net
Sun Dec 4 23:20:29 UTC 2005
Update of /project/cxml/cvsroot/cxml/xml
In directory common-lisp.net:/tmp/cvs-serv13237/xml
Modified Files:
xml-parse.lisp
Log Message:
auch qname "xmlns" hat einen namespace, falls sax:*sowieso* an ist.
und im dom-builder nicht den namen des doctypes pruefen
Date: Mon Dec 5 00:20:27 2005
Author: dlichteblau
Index: cxml/xml/xml-parse.lisp
diff -u cxml/xml/xml-parse.lisp:1.52 cxml/xml/xml-parse.lisp:1.53
--- cxml/xml/xml-parse.lisp:1.52 Sun Dec 4 23:18:37 2005
+++ cxml/xml/xml-parse.lisp Mon Dec 5 00:20:27 2005
@@ -3466,15 +3466,19 @@
(defun set-attribute-namespace (attribute)
(let ((qname (sax:attribute-qname attribute)))
- (multiple-value-bind (prefix local-name) (split-qname qname)
- (declare (ignorable local-name))
- (when (and prefix ;; default namespace doesn't apply to attributes
- (or (not (rod= #"xmlns" prefix)) sax:*use-xmlns-namespace*))
- (multiple-value-bind (uri prefix local-name)
- (decode-qname qname)
- (declare (ignore prefix))
- (setf (sax:attribute-namespace-uri attribute) uri)
- (setf (sax:attribute-local-name attribute) local-name))))))
+ (if (and sax:*use-xmlns-namespace* (rod= qname #"xmlns"))
+ (setf (sax:attribute-namespace-uri attribute)
+ #"http://www.w3.org/2000/xmlns/")
+ (multiple-value-bind (prefix local-name) (split-qname qname)
+ (declare (ignorable local-name))
+ (when (and prefix ;; default namespace doesn't apply to attributes
+ (or (not (rod= #"xmlns" prefix))
+ sax:*use-xmlns-namespace*))
+ (multiple-value-bind (uri prefix local-name)
+ (decode-qname qname)
+ (declare (ignore prefix))
+ (setf (sax:attribute-namespace-uri attribute) uri)
+ (setf (sax:attribute-local-name attribute) local-name)))))))
;;;;;;;;;;;;;;;;;
More information about the Cxml-cvs
mailing list