r11185: fill slots on demand
authorKevin M. Rosenberg <kevin@rosenberg.net>
Mon, 18 Sep 2006 06:27:17 +0000 (06:27 +0000)
committerKevin M. Rosenberg <kevin@rosenberg.net>
Mon, 18 Sep 2006 06:27:17 +0000 (06:27 +0000)
classes.lisp
sql-classes.lisp

index cdc4d561648b62b234ad293f6ba58b6b446086f2..94c489b8313f8b6103006783d34fbfa5fe50864b 100644 (file)
 (defclass ucon (umlsclass)
   ((cui :value-type fixnum :initarg :cui :reader cui :print-formatter fmt-cui
        :hyperlink find-ucon-cui)
-   (lrl :value-type fixnum :initarg :lrl :reader lrl)
-   (pfstr :value-type cdata :initarg :pfstr :reader pfstr)
+   (lrl :value-type fixnum :initarg :lrl :reader lrl
+        :subobject (find-lrl-cui cui))
+   (pfstr :value-type cdata :initarg :pfstr :reader pfstr
+          :subobject (find-pfstr-cui cui))
    (s#def :reader s#def :subobject (find-udef-cui cui))
    (s#so :reader s#so :subobject (find-uso-cui cui))
    (s#hier :reader s#hier :subobject (find-uhier-cui cui))
index 6a566f2570d677eb2dff9662439c643c00bcd611..20ef37eafe82939234e727cfa8441c18f3edfa97 100644 (file)
@@ -255,7 +255,13 @@ is OBJNAME from TABLE where WHERE-NAME field = WHERE-VALUE with FIELDS"
       str)
    (collect-umlisp-query (mrconso (str) srl cui cui :distinct t
                                   :single t)
-      str)))
+                         str)))
+
+(defun find-lrl-cui (cui &key (srl *current-srl*))
+  "Find LRL for a cui"
+  (ensure-cui-integer cui)
+  (collect-umlisp-query (mrconso (kcuilrl) srl cui cui :distinct t :single t)
+                        (ensure-integer kcuilrl)))
 
 (defun find-ucon-lui (lui &key (srl *current-srl*))
   "Find list of ucon for lui"