anchor.diff:      :initarg :subdocument-tags
       :initform '(:note :comment)
       :accessor subdocument-tags)
  +   (structured-data-tags
  +    :initarg :structured-data-tags
  +    :initform '(:bibitem)
  +    :accessor structured-data-tags)
      (parse-links-p :initarg :parse-links-p :initform t :accessor parse-links-p)))
   
   (defclass element ()
  
positive.code:       (setf elements (cdr tail)))
      element))
  
  (defun parse-file (file &key (parse-links-p t) (subdocument-tags '(:note :comment)))
    (let* ((parser (make-instance 'parser :parse-links-p parse-links-p :subdocument-tags subdocument-tags))
           (translator (make-basic-translator-chain (lambda (tok) (process-token parser tok))))
           (body (open-document parser)))
      (funcall translator #\Newline)
  
negative.code:        (open-paragraph parser "p")
         (process-token parser token)))))
  
  (defun open-structured-data (parser tag)
    "Parse a tag which is intended to hold structured data rather than text."
    (let ((element (open-element parser tag)))
      (with-bindings (parser token)
        (#\} (pop-frame-and-element element))
        (#\\ (open-slash-handler parser))
        ((blank-p token))
        (#\Newline)
        ((indentation-p token)))))
  
  (defun open-blockquote-or-list (parser indentation)
    (let ((section (open-element parser "blockquote")))
      (with-bindings (parser token)
  