anchor.diff:      :initarg :name
       :type simple-string
       :accessor named-element-name))
  -  (:metaclass uml-class)
  -  (:model *uml-stub-metamodel*)
  -  (:namespace
  -   ("uml" "http://www.omg.org/spec/UML/20110701" ))
  +  (:metaclass uml-transform-class)
  +  (:model *uml-stub-model*)
     (:uml-name "UML::NamedElement")
  -  (:is-abstract . t))
  +  (:transform-type  "uml:Class")
  +  (:is-abstract t))
   
   
   (defclass namespace (named-element)
  
positive.code: 
    ;; "uml" in the following item denotes the namespace URI assigned
    ;; tot he prefix "uml"
    (:transform-type . "uml:Class")  ;; cf. @xmi:type="uml:Class"
    )
  
  (let ((c (find-class 'uml-class)))
  
negative.code:     :accessor transformation-model-namespaces
      )
     (ns-registry
      :type namespace-registry
      :accessor tranformation-model-ns-registry)
     ))
  
  (defmethod shared-initialize :after ((instance transformation-model)
  				     slots &rest initargs
  				     &key &allow-other-keys)
    (when (or (not (slot-boundp instance 'ns-registry))
  	    (and (listp slots)
  		 (member 'ns-registry (the list slots) :test #'eq)))
      (cond
        ((slot-boundp instance 'namespaces)
         (let ((namespaces (slot-value instance  'namespaces)))
  	 (when namespaces
  	   (let ((nsreg (make-namespace-registry)))
  	     (dolist (ns namespaces)
  	       (destructuring-bind (prefix . uri) ns
  		 ;; FIXME: integrate further with qname utils, when
  		 ;; adding elements to the transformation model, etc -
  		 ;; avoid duplcation of qname strings, esp.
  		 (ensure-prefix prefix uri nsreg)))
  	     (setf (tranformation-model-ns-registry instance)
  		   nsreg)))))
        (t
         (simple-style-warning
  	"Instance 'namespaces' slot not bound, unable to initialize ~
  ns-registry slot, in ~s"
  	instance)))))
  
  
  (defgeneric add-transformation (transformation model))
  