anchor.diff:    (or (stringp expr) (consp expr)))
   
   ;;;; LML utilities
  +
  +(defun lml-get-children (x)
  +  (when (consp x)
  +    (if (consp x.)
  +        x
  +        (lml-get-children .x))))
  +
  +(defun lml-get-attribute (x name)
  +  (when x
  +    (unless (consp x.)
  +      (if (eq name x.)
  +          (second x)
  +          (lml-get-attribute .x name)))))
   
   (defun lml-child? (expr)
     (string-or-cons? expr))
  
positive.code: ;;;;; TRE environment
  ;;;;; Copyright (C) 2006-2007 Sven Klose <pixel@copei.de>
  ;;;;;
  ;;;;; LML function library
  
  
negative.code: (defun collect-attrs (expr attrs)
    (when expr
      (if (not (lml-child? expr))
  	    (concat-attrs expr attrs)
  	    expr)))
  
  (defun lml-attrs-and-childs (expr)
    (with-queue attrs
  