;;;; Programmer: Kevin M. Rosenberg
;;;; Date Started: Apr 2000
;;;;
-;;;; $Id: classes.lisp,v 1.27 2003/03/27 21:56:07 kevin Exp $
+;;;; $Id: classes.lisp,v 1.41 2003/06/16 03:23:50 kevin Exp $
;;;;
;;;; This file, part of UMLisp, is
-;;;; Copyright (c) 2000-2002 by Kevin M. Rosenberg, M.D.
+;;;; Copyright (c) 2000-2003 by Kevin M. Rosenberg, M.D.
;;;;
;;;; UMLisp users are granted the rights to distribute and use this software
;;;; as governed by the terms of the GNU General Public License.
;;;; *************************************************************************
-(in-package :umlisp)
-(declaim (optimize (speed 3) (safety 1) (compilation-speed 0) (debug 3)))
+(in-package #:umlisp)
(defclass umlsclass (hyperobject)
()
((sab :value-type string :initarg :sab :reader sab)
(srl :value-type fixnum :initarg :srl :reader srl))
(:metaclass hyperobject-class)
- (:default-initargs :sab nil :srl nil)
(:user-name "Source Restriction Level")
(:default-print-slots sab srl)
(:description "Custom Table: Source Restriction Level"))
(tty :value-type string :initarg :tty :reader tty)
(supres :value-type string :initarg :supres :reader supres))
(:metaclass hyperobject-class)
- (:default-initargs :rank nil :sab nil :tty nil :supres nil)
(:user-name "Rank")
(:default-print-slots rank sab tty supres))
((def :value-type cdata :initarg :def :reader def)
(sab :value-type string :initarg :sab :reader sab :hyperlink find-usab-rsab))
(:metaclass hyperobject-class)
- (:default-initargs :def nil :sab nil)
(:user-name "Definition")
(:default-print-slots sab def))
(atn :value-type string :initarg :atn :reader atn)
(atv :value-type cdata :initarg :atv :reader atv))
(:metaclass hyperobject-class)
- (:default-initargs :sab nil :code nil :atn nil :atv nil)
(:user-name "Simple Attribute")
(:default-print-slots sab code atn atv))
((vcui :value-type fixnum :initarg :vcui :reader vcui :print-formatter fmt-cui)
(rcui :value-type fixnum :initarg :rcui :reader rcui :print-formatter fmt-cui)
(vsab :value-type string :initarg :vsab :reader vsab)
- (rsab :value-type string :initarg :rsab :reader rsab :hyperlink find-ucan-sab)
+ (rsab :value-type string :initarg :rsab :reader rsab :hyperlink find-ustr-sab)
(son :value-type string :initarg :son :reader son)
(sf :value-type string :initarg :sf :reader sf)
(sver :value-type string :initarg :sver :reader sver)
(curver :value-type string :initarg :curver :reader curver)
(sabin :value-type string :initarg :sabin :reader sabin))
(:metaclass hyperobject-class)
- (:default-initargs :vcui nil :rcui nil :vsab nil :rsab nil :son nil :sf nil
- :sver nil :mstart nil :mend nil :imeta nil :rmeta nil
- :slc nil :scc nil :srl nil :tfr nil :cfr nil :cxty nil
- :ttyl nil :atnl nil :lat nil :cenc nil :curver nil
- :sabin nil)
(:user-name "Source Abbreviation")
(:default-print-slots vcui rcui vsab rsab son sf sver mstart mend imeta
rmeta slc scc srl tfr cfr cxty ttyl atnl lat cenc
(tty :value-type string :initarg :tty :reader tty :hyperlink find-btty-tty)
(srl :value-type fixnum :initarg :srl :reader srl))
(:metaclass hyperobject-class)
- (:default-initargs :sab nil :code nil :tty nil :srl nil)
(:user-name "Source")
(:default-print-slots sab code tty srl))
(rela :value-type string :initarg :rela :reader rela)
(xc :value-type string :initarg :xc :reader xc))
(:metaclass hyperobject-class)
- (:default-initargs :sab nil :code nil :rnk nil :cxn nil :cxl nil :cxs nil
- :cui2 nil :hcd nil :rela nil :xc nil)
(:user-name "Context")
(:default-print-slots sab code rnk cxn cxl hcd rela xc cui2 cxs))
(str :value-type cdata :initarg :str :reader str)
(lrl :value-type fixnum :initarg :lrl :reader lrl)
(stt :value-type string :initarg :stt :reader stt)
- (s#sat :reader s#sat :subobject (find-usat-ui cui lui sui))
(s#so :reader s#so :subobject (find-uso-cuisui cui sui))
+ (s#sat :reader s#sat :subobject (find-usat-ui cui lui sui))
(s#cxt :reader s#cxt :subobject (find-ucxt-cuisui cui sui)))
(:metaclass hyperobject-class)
- (:default-initargs
- :sui nil :cui nil :lui nil :cuisui nil :str nil :lrl nil :stt nil)
(:user-name "String")
(:default-print-slots sui stt lrl str))
(sna :value-type string :initarg :sna :reader sna)
(soui :value-type string :initarg :soui :reader soui))
(:metaclass hyperobject-class)
- (:default-initargs :isn nil :fr nil :un nil :sui nil :sna nil :soui nil)
(:user-name "Locator")
(:default-print-slots isn fr un sna soui sui))
(s#str :reader s#str :subobject (find-ustr-cuilui cui lui))
(s#sat :reader s#sat :subobject (find-usat-ui cui lui)))
(:metaclass hyperobject-class)
- (:default-initargs :lui nil :cui nil :lat nil :ts nil :lrl nil)
(:user-name "Term")
(:default-print-slots lui lat ts lrl))
(defclass usty (umlsclass)
((tui :value-type fixnum :initarg :tui :reader tui :print-formatter fmt-tui
- :hyperlink (find-ucon-tui ("subobjects" "no")))
+ :hyperlink find-ucon-tui
+ :hyperlink-parameters (("subobjects" . "no")))
(sty :value-type string :initarg :sty :reader sty))
(:metaclass hyperobject-class)
- (:default-initargs :tui nil :sty nil)
(:user-name "Semantic Type")
(:default-print-slots tui sty))
(sl :value-type string :initarg :sl :reader sl)
(mg :value-type string :initarg :mg :reader mg))
(:metaclass hyperobject-class)
- (:default-initargs
- :rel nil :cui1 nil :cui2 nil :pfstr2 nil :rela nil :sab nil :sl nil :mg nil)
(:user-name "Relationship")
(:default-print-slots rel rela sab sl mg cui2 pfstr2))
(cof :value-type fixnum :initarg :cof :reader cof)
(coa :value-type cdata :initarg :coa :reader coa))
(:metaclass hyperobject-class)
- (:default-initargs
- :cui1 nil :cui2 nil :pfstr2 nil :soc nil :cot nil :cof nil :coa nil)
(:user-name "Co-occuring Concept")
(:default-print-slots soc cot cof coa cui2 pfstr2))
(rel :value-type string :initarg :rel :reader rel)
(atx :value-type cdata :initarg :atx :reader atx))
(:metaclass hyperobject-class)
- (:default-initargs :sab nil :rel nil :atx nil)
(:user-name "Associated Expression")
(:default-print-slots sab rel atx))
:hyperlink find-ucon-cui)
(lrl :value-type fixnum :initarg :lrl :reader lrl)
(pfstr :value-type cdata :initarg :pfstr :reader pfstr)
- (s#term :reader s#term :subobject (find-uterm-cui cui))
(s#def :reader s#def :subobject (find-udef-cui cui))
+ (s#sty :reader s#sty :subobject (find-usty-cui cui))
+ (s#atx :reader s#atx :subobject (find-uatx-cui cui))
(s#lo :reader s#lo :subobject (find-ulo-cui cui))
- (s#rel :reader s#rel :subobject (find-urel-cui cui))
- (s#coc :reader s#coc :subobject (find-ucoc-cui cui))
+ (s#term :reader s#term :subobject (find-uterm-cui cui))
(s#sat :reader s#sat :subobject (find-usat-ui cui))
- (s#atx :reader s#atx :subobject (find-uatx-cui cui))
- (s#sty :reader s#sty :subobject (find-usty-cui cui)))
+ (s#rel :reader s#rel :subobject (find-urel-cui cui))
+ (s#coc :reader s#coc :subobject (find-ucoc-cui cui)))
(:metaclass hyperobject-class)
- (:default-initargs :cui nil :lrl nil :pfstr nil)
(:user-name "Concept")
(:default-print-slots cui lrl pfstr))
(lui :value-type fixnum :initform nil :initarg :lui :reader lui :print-formatter fmt-lui)
(sui :value-type fixnum :initform nil :initarg :sui :reader sui :print-formatter fmt-sui))
(:metaclass hyperobject-class)
- (:default-initargs :wd nil :cui nil :lui nil :sui nil)
- (:user-name "XW Index")
+ (:user-name "XW Index" "XW Indices")
+ (:default-print-slots wd cui lui sui))
+
+(defclass uxw-noneng (umlsclass)
+ ((lat :value-type string :initarg :lat :reader lat)
+ (wd :value-type string :initarg :wd :reader wd)
+ (cui :value-type fixnum :initform nil :initarg :cui :reader cui :print-formatter fmt-cui)
+ (lui :value-type fixnum :initform nil :initarg :lui :reader lui :print-formatter fmt-lui)
+ (sui :value-type fixnum :initform nil :initarg :sui :reader sui :print-formatter fmt-sui)
+ (lrl :value-type fixnum :initform nil :initarg :lrl :reader lrl))
+ (:metaclass hyperobject-class)
+ (:user-name "XW Non-English Index" "XW Non-English Indices")
(:default-print-slots wd cui lui sui))
(defclass uxnw (umlsclass)
(nwd :value-type string :initarg :nwd :reader nwd)
(cuilist :value-type list :initarg :cuilist :reader uxnw-cuilist))
(:metaclass hyperobject-class)
- (:default-initargs :lat nil :nwd nil :cuilist nil)
- (:user-name "XNW Index")
+ (:user-name "XNW Index" "XNW Indices")
(:default-print-slots lat nwd cuilist))
(defclass uxns (umlsclass)
(nstr :value-type string :initarg :nstr :reader nstr)
(cuilist :value-type list :initarg :cuilist :reader cuilist))
(:metaclass hyperobject-class)
- (:default-initargs :lat nil :nstr nil :cuilist nil)
- (:user-name "XNS Index")
+ (:user-name "XNS Index" "XNS Indices")
(:default-print-slots lat nstr cuilist))
(s#trm :reader s#trm :subobject (find-ltrm-eui eui))
(s#typ :reader s#typ :subobject (find-ltyp-eui eui)))
(:metaclass hyperobject-class)
- (:default-initargs :eui nil :wrd nil)
(:user-name "Lexical Term")
(:default-print-slots eui wrd))
(eui2 :value-type integer :initarg :eui2 :reader eui2 :print-formatter fmt-eui)
(bas2 :value-type string :initarg :bas2 :reader bas2))
(:metaclass hyperobject-class)
- (:default-initargs :eui nil :bas nil :abr nil :eui2 nil :bas2 nil)
- (:user-name "Abbreviations and Acronyms")
+ (:user-name "Abbreviations and Acronym")
(:default-print-slots eui bas abr eui2 bas2))
(defclass lagr (umlsclass)
(cit :value-type string :initarg :cit :reader cit)
(bas :value-type string :initarg :bas :reader bas))
(:metaclass hyperobject-class)
- (:default-initargs :eui nil :str nil :sca nil :agr nil :cit nil :bas nil)
(:user-name "Agreement and Inflection")
(:default-print-slots eui str sca agr cit bas))
(sca :value-type string :initarg :sca :reader sca)
(com :value-type string :initarg :com :reader com))
(:metaclass hyperobject-class)
- (:default-initargs :eui nil :bas nil :sca nil :com nil)
(:user-name "Complementation")
(:default-print-slots eui bas sca com))
(psnmod :value-type string :initarg :psnmod :reader psnmod)
(fea :value-type string :initarg :fea :reader fea))
(:metaclass hyperobject-class)
- (:default-initargs :eui nil :bas nil :sca nil :psnmod nil :fea nil)
- (:user-name "Modifiers")
+ (:user-name "Modifier")
(:default-print-slots eui bas sca psnmod fea))
(defclass lnom (umlsclass)
(bas2 :value-type string :initarg :bas2 :reader bas2)
(sca2 :value-type string :initarg :sca2 :reader sca2))
(:metaclass hyperobject-class)
- (:default-initargs :eui nil :bas nil :sca nil :eui2 nil :bas2 nil :sca2 nil)
- (:user-name "Nominalizations")
+ (:user-name "Nominalization")
(:default-print-slots eui bas sca eui2 bas2 sca2))
(defclass lprn (umlsclass)
(qnt :value-type string :initarg :qnt :reader qnt)
(fea :value-type string :initarg :fea :reader fea))
(:metaclass hyperobject-class)
- (:default-initargs :eui nil :bas nil :num nil :gnd nil :cas nil
- :pos nil :qnt nil :fea nil)
- (:user-name "Pronouns")
+ (:user-name "Pronoun")
(:default-print-slots eui bas num gnd cas pos qnt fea))
(defclass lprp (umlsclass)
(sca :value-type string :initarg :sca :reader sca)
(fea :value-type string :initarg :fea :reader fea))
(:metaclass hyperobject-class)
- (:default-initargs :eui nil :bas nil :str nil :sca nil :fea nil)
- (:user-name "Properties")
+ (:user-name "Property" "Properties")
(:default-print-slots eui bas str sca fea))
(spv :value-type string :initarg :spv :reader spv)
(bas :value-type string :initarg :bas :reader bas))
(:metaclass hyperobject-class)
- (:default-initargs :eui nil :spv nil :bas nil)
- (:user-name "Spelling Variants")
+ (:user-name "Spelling Variant")
(:default-print-slots eui spv bas))
(bas :value-type string :initarg :bas :reader bas)
(gen :value-type string :initarg :gen :reader gen))
(:metaclass hyperobject-class)
- (:default-initargs :eui nil :bas nil :gen nil)
- (:user-name "Trade Marks")
+ (:user-name "Trade Mark")
(:default-print-slots eui bas gen))
(defclass ltyp (umlsclass)
(sca :value-type string :initarg :sca :reader sca)
(typ :value-type string :initarg :typ :reader typ))
(:metaclass hyperobject-class)
- (:default-initargs :eui nil :bas nil :sca nil :typ nil)
(:user-name "Inflection Type")
(:default-print-slots eui bas sca typ))
((wrd :value-type string :initarg :wrd :reader wrd)
(euilist :value-type list :initarg :euilist :reader euilist))
(:metaclass hyperobject-class)
- (:default-initargs :wrd nil :euilist nil)
- (:user-name "Lexical Word Index")
+ (:user-name "Lexical Word Index" "Lexical Word Indices")
(:default-print-slots wrd euilist))
;;; Semantic NET objects
(abr :value-type string :initarg :abr :reader abr)
(rin :value-type string :initarg :rin :reader rin))
(:metaclass hyperobject-class)
- (:default-initargs
- :rt nil :ui nil :styrl nil :stnrtn nil :def nil :ex nil :un nil :rh nil
- :abr nil :rin nil)
- (:user-name "Basic information about Semantic Types and Relations")
+ (:user-name "Basic information about Semantic Types and Relation")
(:default-print-slots rt ui styrl stnrtn def ex un rh abr rin))
(defclass sstr (umlsclass)
(styrl2 :value-type string :initarg :styrl2 :reader styrl2)
(ls :value-type string :initarg :ls :reader ls))
(:metaclass hyperobject-class)
- (:default-initargs :styrl nil :rl nil :styrl2 nil :ls nil)
(:user-name "Structure of the Network")
(:default-print-slots styrl rl styrl2 ls))
(ui2 :value-type integer :initarg :ui2 :reader ui2 :print-formatter fmt-tui)
(ui3 :value-type integer :initarg :ui3 :reader ui3 :print-formatter fmt-tui))
(:metaclass hyperobject-class)
- (:default-initargs :ui nil :ui2 nil :ui3 nil)
- (:user-name "Fully Inherited Set of Releatons (TUI's)")
+ (:user-name "Fully Inherited Set of Relation (TUIs)"
+ "Fully Inherited Set of Relations (TUIs)")
(:default-print-slots ui ui2 ui3))
(defclass sstre2 (umlsclass)
(rl :value-type string :initarg :ui2 :reader rl)
(sty2 :value-type string :initarg :ui3 :reader sty2))
(:metaclass hyperobject-class)
- (:default-initargs :sty nil :rl nil :sty2 nil)
- (:user-name "Fully Inherited Set of Releatons (strings)")
+ (:user-name "Fully Inherited Set of Relation (strings)"
+ "Fully Inherited Set of Relations (strings)")
(:default-print-slots sty rl sty2))