   [?aspect ?type]
   (all
     (aspect-super+ ?aspect ?type)
-    (succeeds (.isClass ?type))))
+    (class ?type)))
   
 
 ;; Advice

   including those that stem from an intertype declaration."
  [?aspect ?type]
  (all
    (!= ?type ?aspect)
    (aspect ?aspect)
    (contains (iterator-seq (.getHierarchy ?aspect true true)) ?type)))

(defn
  aspect-superaspect+



(defn
  type-declaredsuper
  "Relation between an aspect and its super class (including java.lang.Object for aspects
   that do not declare a super aspect)."
  [?type ?super]
  (all
    (type ?type)
    (equals ?super (.getSuperclass ?type))))

(defn
  aspect-declaredsuper
  "Relation between an aspect and its super class (including java.lang.Object for aspects
   that do not declare a super aspect)."
  [?aspect ?super]
  (all
    (aspect ?aspect)
    (type-declaredsuper ?aspect ?super)))


(defn
  aspect-declaredsuperaspect
