anchor.diff:    "Parse block tag (until it's closed) or inline tag."
     `(,name ,@attrs ,@(xml-parse-list in ns name)))
   
  -(defun xml-parse-toplevel (in)
  -  "Parse top-level block tag."
  -  (xml-skip-spaces in)
  -  (unless (= #\< (xml-read-char in))
  -	(error "expected tag instead of text"))
  -  (when (= #\? (xml-peek-char in))
  -	(xml-parse-version-tag in))
  -  (xml-skip-spaces in)
  -  (unless (= #\< (xml-read-char in))
  -	(error "expected tag instead of text"))
  +(defun xml-parse-cont-std (in)
  +  (xml-skip-spaces in)
     (with ((ns name type attrs) (xml-parse-standard-tag in))
   	(unless (eq type 'opening)
   	  (xml-error "Opening tag expected instead of ~A." type))
   	(xml-parse-block in ns name attrs)))
   
  +(defun xml-parse-toplevel (in)
  +  "Parse top-level block tag."
  +  (xml-skip-spaces in)
  +  (unless (= #\< (xml-read-char in))
  +	(error "expected tag instead of text"))
  +  (if (= #\? (xml-peek-char in))
  +	  (xml-parse-version-tag in)
  +	  (xml-parse-cont-std in)))
   
   ;;; Top-level
    
  
positive.code: 
  (defun xml-parse-version-tag (in)
    (xml-expect-char in #\?)
    (while (not (= #\? (xml-read-char in))) (progn
  											(xml-expect-char in #\>)
  											(values nil ? 'inline nil))))
  
  (defun xml-parse-tag (in)
    "Read tag and return xml-node."
  
negative.code:         (progn
  	      (xml-read-char in)
  	      (values ident (xml-parse-unify-identifier in)))
          (values nil (make-symbol ident *keyword-package*)))))
  
  (defun xml-parse-quoted-string-r (in quot)
    (with (c (xml-read-char in))
  