(defun make-preparse-hash-table ()
(if sui-lrl-hash
- (clear-preparse-hash-tables)
+ (clear-preparse-hash-tables)
(setf
- pfstr-hash (make-hash-table :size 1500000)
- cui-lrl-hash (make-hash-table :size 1500000)
- lui-lrl-hash (make-hash-table :size 5000000)
- sui-lrl-hash (make-hash-table :size 6000000)
- cuisui-lrl-hash (make-hash-table :size 6000000)
- cui-lrlus-hash (make-hash-table :size 1500000)
- lui-lrlus-hash (make-hash-table :size 5000000)
- sui-lrlus-hash (make-hash-table :size 6000000)
- cuisui-lrlus-hash (make-hash-table :size 6000000)
- sab-srl-hash (make-hash-table :size 200 :test 'equal)
+ pfstr-hash (make-hash-table :size 1500000)
+ cui-lrl-hash (make-hash-table :size 1500000)
+ lui-lrl-hash (make-hash-table :size 5000000)
+ sui-lrl-hash (make-hash-table :size 6000000)
+ cuisui-lrl-hash (make-hash-table :size 6000000)
+ cui-lrlus-hash (make-hash-table :size 1500000)
+ lui-lrlus-hash (make-hash-table :size 5000000)
+ sui-lrlus-hash (make-hash-table :size 6000000)
+ cuisui-lrlus-hash (make-hash-table :size 6000000)
+ sab-srl-hash (make-hash-table :size 200 :test 'equal)
sab-srlus-hash (make-hash-table :size 200 :test 'equal))))
(defun ensure-preparse (&optional (force-read nil))
(when (and (string-equal (vff "MRCONSO.RRF" "LAT" line) "ENG")
(string-equal (vff "MRCONSO.RRF" "TS" line) "P")
(string-equal (vff "MRCONSO.RRF" "STT" line) "PF"))
- (setf (gethash cui pfstr-hash) (vff "MRCONSO.RRF" "STR" line))))
+ (setf (gethash cui pfstr-hash) (vff "MRCONSO.RRF" "STR" line))))
(set-lrl-hash cui srl cui-lrl-hash)
(set-lrl-hash lui srl lui-lrl-hash)
(set-lrl-hash sui srl sui-lrl-hash)
(declare (type (or null fixnum) hash-lrl)
(boolean found))
(if (or (not found) (< srl hash-lrl))
- (setf (gethash key hash) srl))))
+ (setf (gethash key hash) srl))))
;; UMLS file and column structures
;;; SQL datatypes symbols
(lambda (x) (write-to-string (cui-lrlus (parse-ui (vff "MRSTY.RRF" "CUI" x))))))
("MRCOC.RRF" "KLRL" "TINYINT" 0
(lambda (x) (write-to-string
- (max (cui-lrl (parse-ui (vff "MRCOC.RRF" "CUI1" x)))
- (kmrcl:aif (cui-lrl (parse-ui (vff "MRCOC.RRF" "CUI2" x))) kmrcl::it 0)))))
+ (max (cui-lrl (parse-ui (vff "MRCOC.RRF" "CUI1" x)))
+ (kmrcl:aif (cui-lrl (parse-ui (vff "MRCOC.RRF" "CUI2" x))) kmrcl::it 0)))))
("MRCOC.RRF" "KLRLUS" "TINYINT" 0
(lambda (x) (write-to-string
- (max (cui-lrlus (parse-ui (vff "MRCOC.RRF" "CUI1" x)))
- (kmrcl:aif (cui-lrl (parse-ui (vff "MRCOC.RRF" "CUI2" x))) kmrcl::it 0)))))
+ (max (cui-lrlus (parse-ui (vff "MRCOC.RRF" "CUI1" x)))
+ (kmrcl:aif (cui-lrl (parse-ui (vff "MRCOC.RRF" "CUI2" x))) kmrcl::it 0)))))
("MRSAT.RRF" "KSRL" "TINYINT" 0
(lambda (x) (write-to-string (sab-srl (vff "MRSAT.RRF" "SAB" x)))))
("MRSAT.RRF" "KSRLUS" "TINYINT" 0
(lambda (x) (write-to-string (sab-srlus (vff "MRDEF.RRF" "SAB" x)))))
("MRXW_ENG.RRF" "KLRL" "TINYINT" 0
(lambda (x) (write-to-string (cuisui-lrl (make-cuisui
- (parse-ui (vff "MRXW_ENG.RRF" "CUI" x))
- (parse-ui (vff "MRXW_ENG.RRF" "SUI" x)))))))
+ (parse-ui (vff "MRXW_ENG.RRF" "CUI" x))
+ (parse-ui (vff "MRXW_ENG.RRF" "SUI" x)))))))
("MRXW_ENG.RRF" "KLRLUS" "TINYINT" 0
(lambda (x) (write-to-string (cuisui-lrlus (make-cuisui
- (parse-ui (vff "MRXW_ENG.RRF" "CUI" x))
- (parse-ui (vff "MRXW_ENG.RRF" "SUI" x)))))))
+ (parse-ui (vff "MRXW_ENG.RRF" "CUI" x))
+ (parse-ui (vff "MRXW_ENG.RRF" "SUI" x)))))))
("MRXW_NONENG.RRF" "KLRL" "TINYINT" 0
(lambda (x) (write-to-string (cuisui-lrl (make-cuisui
- (parse-ui (vff "MRXW_NONENG.RRF" "CUI" x))
- (parse-ui (vff "MRXW_NONENG.RRF" "SUI" x)))))))
+ (parse-ui (vff "MRXW_NONENG.RRF" "CUI" x))
+ (parse-ui (vff "MRXW_NONENG.RRF" "SUI" x)))))))
("MRXW_NONENG.RRF" "KLRLUS" "TINYINT" 0
(lambda (x) (write-to-string (cuisui-lrlus (make-cuisui
- (parse-ui (vff "MRXW_NONENG.RRF" "CUI" x))
- (parse-ui (vff "MRXW_NONENG.RRF" "SUI" x)))))))
+ (parse-ui (vff "MRXW_NONENG.RRF" "CUI" x))
+ (parse-ui (vff "MRXW_NONENG.RRF" "SUI" x)))))))
("MRXNW_ENG.RRF" "KLRL" "TINYINT" 0
(lambda (x) (write-to-string (cuisui-lrl (make-cuisui
- (parse-ui (vff "MRXNW_ENG.RRF" "CUI" x))
- (parse-ui (vff "MRXNW_ENG.RRF" "SUI" x)))))))
+ (parse-ui (vff "MRXNW_ENG.RRF" "CUI" x))
+ (parse-ui (vff "MRXNW_ENG.RRF" "SUI" x)))))))
("MRXNW_ENG.RRF" "KLRLUS" "TINYINT" 0
(lambda (x) (write-to-string (cuisui-lrlus (make-cuisui
- (parse-ui (vff "MRXNW_ENG.RRF" "CUI" x))
- (parse-ui (vff "MRXNW_ENG.RRF" "SUI" x)))))))
+ (parse-ui (vff "MRXNW_ENG.RRF" "CUI" x))
+ (parse-ui (vff "MRXNW_ENG.RRF" "SUI" x)))))))
("MRXNS_ENG.RRF" "KLRL" "TINYINT" 0
(lambda (x) (write-to-string (cuisui-lrl (make-cuisui
- (parse-ui (vff "MRXNS_ENG.RRF" "CUI" x))
- (parse-ui (vff "MRXNS_ENG.RRF" "SUI" x)))))))
+ (parse-ui (vff "MRXNS_ENG.RRF" "CUI" x))
+ (parse-ui (vff "MRXNS_ENG.RRF" "SUI" x)))))))
("MRXNS_ENG.RRF" "KLRLUS" "TINYINT" 0
(lambda (x) (write-to-string (cuisui-lrlus (make-cuisui
- (parse-ui (vff "MRXNS_ENG.RRF" "CUI" x))
- (parse-ui (vff "MRXNS_ENG.RRF" "SUI" x)))))))
+ (parse-ui (vff "MRXNS_ENG.RRF" "CUI" x))
+ (parse-ui (vff "MRXNS_ENG.RRF" "SUI" x)))))))
#+nil ("MRREL.RRF" "KPFSTR2" "TEXT" 1024 (lambda (x) (pfstr-hash (parse-ui (vff "MRREL.RRF" "CUI2" x)))))
#+nil ("MRCOC.RRF" "KPFSTR2" "TEXT" 1024 (lambda (x) (pfstr-hash (parse-ui (vff "MRCOC.RRF" "CUI2" x)))))
(let ((cols '()))
(with-umls-file (line "MRCOLS.RRF")
(destructuring-bind (col des ref min av max fil dty) line
- (push (make-ucol col des ref (parse-integer min) (read-from-string av)
- (parse-integer max) fil dty)
- cols)))
+ (push (make-ucol col des ref (parse-integer min) (read-from-string av)
+ (parse-integer max) fil dty)
+ cols)))
(nreverse cols)))
(defun gen-ucols-custom ()
"Initialize umls columns for custom columns"
(loop for customcol in +custom-cols+
- collect
- (make-ucol (nth 1 customcol) "" 0 0 0 (eval (nth 3 customcol))
- (nth 0 customcol) nil :sqltype (canonicalize-column-type (nth 2 customcol))
- :custom-value-fun (compile nil (nth 4 customcol)))))
+ collect
+ (make-ucol (nth 1 customcol) "" 0 0 0 (eval (nth 3 customcol))
+ (nth 0 customcol) nil :sqltype (canonicalize-column-type (nth 2 customcol))
+ :custom-value-fun (compile nil (nth 4 customcol)))))
(defun gen-ucols-generic (col-filename)
"Initialize for generic (LEX/NET) columns"
(let ((cols '()))
(with-umls-file (line col-filename)
(destructuring-bind (nam des ref fil) line
- (setq nam (escape-column-name nam))
- (dolist (file (delimited-string-to-list fil #\,))
- (push
- (make-ucol nam des ref nil nil nil file nil)
- cols))))
+ (setq nam (escape-column-name nam))
+ (dolist (file (delimited-string-to-list fil #\,))
+ (push
+ (make-ucol nam des ref nil nil nil file nil)
+ cols))))
(nreverse cols)))
(let ((files '()))
(with-umls-file (line files-filename)
(destructuring-bind (fil des fmt cls rws bts) line
- (push (make-ufile
- dir fil des
- (parse-integer cls)
- (parse-integer rws) (parse-integer bts)
- (concatenate 'list (umls-field-string-to-list fmt)
- (custom-colnames-for-filename fil)))
- files)))
+ (push (make-ufile
+ dir fil des
+ (parse-integer cls)
+ (parse-integer rws) (parse-integer bts)
+ (concatenate 'list (umls-field-string-to-list fmt)
+ (custom-colnames-for-filename fil)))
+ files)))
(nreverse files)))
(defun gen-ufiles-custom ()
(make-ufile "META" "MRXW_NONENG.RRF" "Custom NonEnglish Index"
- 5 0 0 (fields (find-ufile "MRXW_ENG.RRF"))))
+ 5 0 0 (fields (find-ufile "MRXW_ENG.RRF"))))